当前位置: 首页 > news >正文

2023强网杯复现

强网先锋

SpeedUp

要求2的27次方的阶乘的逐位之和

在A244060 - OEIS

然后我们将4495662081进行sha256加密

就得到了flag

flag{bbdee5c548fddfc76617c562952a3a3b03d423985c095521a8661d248fad3797}

MISC

easyfuzz

通过尝试输入字符串判断该程序对输入字符的验证规则为9位字符,并且只要满足输入正确字符使最后返回值全部为111111111即可得flag

发现前两位字符可以为任何字符,都满足110000000,由此可以对后七位字符进行爆破

逐位爆破得到最后一位为字符串"d"

这里还是师傅的脚本,当字符串长度为9位并输入时,将回显不为“Here is your code coverage: 110000000”的结果打印

from pwn import *from string import printableconn = remote('101.200.122.251', 12199)non_matching_strings = []for i in range(9):for char in printable:payload = 'a'*i + char + 'a'*(8-i)print(conn.recvuntil(b'Enter a string (should be less than 10 bytes):'))conn.sendline(payload.encode())response = conn.recvline().decode().strip()if response != "Here is your code coverage: 110000000":non_matching_strings.append(payload)for string in non_matching_strings:print(string)

运行一下即可得到爆破出来的flag

flag:qwb{YouKnowHowToFuzz!}

石头剪刀布

nc连接以后得到一个石头剪刀布的游戏

按照师傅给的顺序

0000011220120220110111222010022012110021012012202100112022100112110020110220210201

也能得到flag

看了师傅们的wp是利用脚本

由于前面5次大模型是随机输出的,因此我们可以考虑从第6次开始求最优解。最坏情况下,前5次全输,需要87步即可达到260分,即第92轮时,因此可以通过本题。

from pwn import remoteip = '<ip>'port = '<port>'class GetStatus:def __init__(self, _ip=ip, _port=port) -> None:self.r = remote(_ip, _port)self.score = 0def getdiff(self, out):self.r.sendlineafter('请出拳'.encode(), str(out).encode())self.r.recvuntil('分数:'.encode())newscore = int(self.r.recvline().decode()) diff = newscore - self.scoreself.score = newscorereturn diffdef test_list(self, lis):for out in lis:diff = self.getdiff(out)if self.score >= 260:return 'win'return diffcurrent_best = [0] * 5diff2out = {3: 0,1: 2,0: 1}while len(current_best) <= 100:current_best.append(0)c = GetStatus()diff = c.test_list(current_best)if c.score >= 260:c.r.interactive()breakc.r.close()current_best[-1] = diff2out[diff]print(f'Round {len(current_best)}: {current_best}')

谍影重重2.0

将数据包导出为json格式,使用脚本提取字段并进行MD5

脚本

import json
import pyModeS as pms
import hashlibwith open('123.json', 'r', encoding='utf-8') as file:data = json.load(file)info = []
for packet in data:if 'layers' in packet['_source'] and 'tcp' in packet['_source']['layers']:tcp_layer = packet['_source']['layers']['tcp']if 'tcp.payload' in tcp_layer:tcp_payload = tcp_layer['tcp.payload'].replace(':','')info.append(tcp_payload)planes_data = []for i in info:msg = i[18:]if pms.adsb.typecode(msg) >= 19 and pms.adsb.typecode(msg) <= 22:icao = pms.adsb.icao(msg)velocity_info = pms.adsb.velocity(msg)speed, track, vertical_rate, _ = velocity_infoplane_info = {"icao": icao, "speed": speed, "track": track, "vertical_rate": vertical_rate}planes_data.append(plane_info)fastest_plane = max(planes_data, key=lambda x: x['speed'])
print(hashlib.md5(fastest_plane['icao'].upper().encode()).hexdigest())

运行一下即可得到flag

flag{4cf6729b9bc05686a79c1620b0b1967b}

http://www.lryc.cn/news/292075.html

相关文章:

  • IP代理协议有哪些?爬虫代理如何被合理使用?
  • Vue学习笔记(二)快速入门
  • 在Vue中@click方法不起效
  • 服装行业ERP系统解决方案
  • AI绘画探索人工智能的未来
  • Java 的 Map 與 List
  • C++从零开始的打怪升级之路(day24)
  • 用 CanvasKit 实现超级丝滑的原神地图(已开源)!!!
  • MySQL原理(三)锁定机制(2)表锁行锁与页锁
  • 设计模式⑩ :用类来实现
  • Flutter 解决ExpansionTile上下分割线问题,以及title撑满问题
  • 数据可视化 pycharts实现时间数据可视化
  • 深度强化学习(王树森)笔记11
  • python 实现 macOS状态栏 网速实时显示
  • 【C++】开源:Windows图形库EasyX配置与使用
  • 微信小程序 全局变量键值对map对象
  • 20240131在WIN10下配置whisper
  • 3338 蓝桥杯 wyz的数组IV 简单
  • git Filename too long
  • MySQL数据库-理论基础
  • 立体边界,让arcgis出图更酷炫一些
  • 【C++】 C++入门—内联函数
  • 软件工程知识梳理2-需求分析
  • mac裁剪图片
  • Compose | UI组件(十) | Box,Surface - 帧布局
  • 种草日记|林曦老师的冬日好物分享
  • 【算法与数据结构】139、LeetCode单词拆分
  • NLP任务之Named Entity Recognition
  • NUXT3项目实践总结
  • 中科星图——2020年全球30米地表覆盖精细分类产品V1.0(29个地表覆盖类型)