【wp】2021CISCN初赛
上周末打的CISCN初赛,发现没整理wp来火速补上。
这次RE属实拉跨,就做了俩签到题,做完就去摸MISC了,冲刺卷还能摸出个robot是我没想到的。(以及想看零解HMI的wp,翻了半天没翻到check我可好奇死了x
Reverse
glass
说签到真的是签到题
用JEB看java层发现是直接调用so的,那直接apktool解压然后去逆so文件
显而易见的前两个函数是RC4相关(还以为会魔改= =,第三个函数是一个自定义加密函数
密文在unk_497C
,长度0x27,先还原encrypt之前的数组,然后进行RC4解密(写了一些注释在代码里
exp:
CISCN{6654d84617f627c88846c172e0f4d46c}
baby_bc
.bc
文件前不久某场比赛才接触过,直接走流程
先用clang -c baby.bc -o baby.bc.o
(也可以clang baby.bc -o baby
得到可执行文件),然后直接用ida逆.o
文件
(是附件更新前做出来的,吐槽一句怎么更新附件以后还把符号表混淆了x
前半个check是用输入填充地图/棋盘,map空的部分填输入的ascii码-48,map有值的部分输入要为'0'。输入只能为0-5。
后半个check有四个部分,分别是同一行的数据各不相同、同一列的数据各不相同、col=1时当前值<下方的值&&col=2时当前值>下方的值、row=1时当前值>右方的值&&row=2时当前值<右方的值。
这个check规则不就是futoshiki吗hhh
比赛的时候想在网上找脚本,但是没找到能用的,完全靠手推(。
赛后被队里师兄提醒说其实可以用z3约束求解,猛然想起好像确实能用做哦(傻了x),现在复盘的话不如来学着写z3做(
写z3脚本有:
输入是1425353142350212150442315,得到flag:
CISCN{8a04b4597ad08b83211d3adfa1f61431}
Misc
tiny_traffic
翻流量包的时候有看到get了secret文件,这种文件名立刻警觉,感觉是关键文件
查看响应包21615,有一个Content-Encoding:br,查了一下是Brotli压缩的文本
于是试图导出http对象,得到secret文件后解压缩发现解不出什么可见字符,于是逐个试了一遍没后缀名的文件解压,试出了:
手动拆一下就是
查了一下proto3跟python的联动,找到了这篇文章,https://blog.csdn.net/menghaocheng/article/details/80176763,格式跟需求都一样,直接按步骤做
写入protobuf处理脚本:
运行./protoc.exe --python_out=./ test.proto
得到test_pb2.py
不知道先调哪个message于是两个都试了一下,最后exp是:
得到:
于是再拼接一下变成flag:
CISCN{e66a22e23457889b0fb1146d172a38dc}
robot
看了一眼别人的wp发现我这个好像非预期了= =
依然是翻流量包,都是TCP协议包,于是直接追踪TCP流,能看到很明显的符合r"tgPos{\d+}\.Value\.\[\d+,\d+,-?\d+]"
这种正则的字符串。
这种中括号形式就很像坐标,更何况这还是机器人绘制,肯定需要定位。
一开始以为是x,y,z这样分布,不过后来发现每个第三个值为-10的坐标点都是每个tgPos的最后一个,所以猜测第三个值是用来标定是否结束的。
所以把这里追踪的结果全部复制下来,然后用python提取并画图
可以得到图片:
垂直镜像处理一下就是:
由print("CISCN{"+md5(b'easy_robo_xx').hexdigest()+"}")
得到flag:
CISCN{d4f1fb80bc11ffd722861367747c0f10}
__EOF__

本文链接:https://www.cnblogs.com/c10udlnk/p/14802466.html
关于博主:欢迎关注我的个人博客-> https://c10udlnk.top/
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程