XCTF reverse maze
2024-10-20 21:03:14
一.查壳
二.拖入ida64,静态调试,找到主函数F5反编译
二.1 思路分析(逆向是真的费时间,每个函数都要分析过去):
1.发现每个if最终都会进入LABEL-15
点进去,看看这个函数是干啥的。
这里基本可以推理出a3是行,a2是列了。
那么我们的迷宫一定是一个8列的矩阵。
得知这点,退出去,再分析。
v9是行,SHIDWORD函数是指的下一个字节,得知这点,从上面分析可知:
就将四个函数点进去就可以判断方向了。
举个例子:
相对应,其他方向,O:下,o:上,0:左,.:右。
2.将迷宫打印出来,python脚本如下。
maze=" ******* * **** * **** * *** *# *** *** *** *********"
res=""
count=0
for str in maze:
res+=str
count+=1
if count%8==0:
print(res)
res=""
3.由于我们是从左上角开始的,开始我们的路线
个人感觉答案不唯一的。。。。没办法。》-《。。。
根据迷宫最后得到的flag: nctf{o0oo00O000oooo…OO}
最新文章
- java 解析并生成 XML
- AMD64和i386的区别
- 单机搭建Android开发环境(三)
- 【Mysql学习笔记】浅析mysql的binlog
- Android动画的深入分析
- 基于visual Studio2013解决C语言竞赛题之0306分数转换
- tortoiseGit保存用户名和密码
- kindeditor修改图片上传路径-使用webapi上传图片到图片服务器
- PHP 【六】
- 使用Jmeter进行http接口做功能、性能测试
- css文本超出隐藏显示省略号
- C语言 设一个函数process,调用它时,实现不同功能。
- 【Android】Tips for Android developer: “Conversion to Dalvik format failed: Unable to execute dex: null”
- 加载XML文件到系统中
- https://api.highcharts.com/gantt/
- [2]传奇3服务器源码分析一 LoginServer
- 浅析Java源码之HttpServlet
- xe Style
- git-【十】忽略文件
- [置顶]
 linux c常用函数 (待完善)