Zer0o 发表于 2023-10-14 18:59

[SWPUCTF 2021 新生赛]老鼠走迷宫(详细版

本帖最后由 Zer0o 于 2023-10-15 12:12 编辑

# 附件下载
https://wwvc.lanzouj.com/iYLez1br84jg
# 解题思路
● 用pyinstxtrator解析exe

● 重点:将无后缀的5先修改后缀为pyc,然后随便找一个pyc文件补齐5.pyc的前16位十六进制数值(这道题以struct.pyc为例)

● 将.pyc反编译为.py

● 找到maze,从而找到最短路径

# 改后缀

下载附件,拿到一个无后缀的文件,丢入winhex里看看,发现是MZ开头的,去搜MZ开头是什么文件



MZ开头的是.EXE可执行文件



修改后缀


# 查壳

64位,无壳,但是该exe是被pyinstaller打包后得到的,我们需要将exe转换为py形式


# python反编译

pyinstxtractor.py自行下载,在这个页面打开cmd



使用pyinstxtractor.py反编译exe文件,命令如下:

python pyinstxtractor.py 可执行文件exe的地址



在当前文件夹会多出一个文件夹



可以看到可疑的文件5,struct



这里我们需要先将文件5和struct加上后缀.pyc,因为后续需要进行.pyc反编译成.py文件(其实struct可要可不要,struct的作用就是给5.pyc补齐前面缺失的十六进制数值,将其他的正常的.pyc文件替换struct.pyc也可以,因为我发现.pyc文件的前16位数值都是一样的)



在winhex打开两个pyc文件,将struct的前16位十六进制数复制到5.pyc开头





记得保存



将5.pyc文件反编译成.py文件,网址:https://tool.lu/pyc/



down下来,得到一个python文件,由于maze占代码篇幅太长了,不便展示,感兴趣自行下载,下载链接:https://wwvc.lanzouj.com/inUHm1bub3li
这里我放一点图片,微改一下代码,使maze能一行一行的输出




在maze下面添加一个for循环,输出maze,会报错,把最下面的return none直接删了,这不是重点不要紧



修改之后的代码,可以直接输出maze



























Mice walk in a maze: wasd to move,q to quit
flag is the shortest path's md5,example:if the shortest path is wasdsdw,the flag is md5('wasdsdw')



接下来可以自己慢慢找,也可以写脚本,我直接从佬:https://blog.csdn.net/qq_42880719/article/details/120581571,那拉的脚本,可以直接输出迷宫的最小路径,点击下载
https://wwvc.lanzouj.com/ilelu1bs1xpa


迷宫最短路径



使用wasd表示最短路径就是(一定不要忘了最后一个 * 还需要往下走一个才到达终点,我服,看了半天才找到这个错误):

sssssddssddssaaaassssddwwddddssssssaawwaassssddssaassddddwwddssddwwwwwwwwaawwddwwwwaaaawwddwwwwddssssddwwwwddddwwddddssaassaassddddssddssaassssssddsssssss

根据python里面的内容,flag是用wasd表示的最短路径的md5值


取32位小写,69193150b15c87d39252d974bc323217


flag:NSSCTF{69193150b15c87d39252d974bc323217}

Shimmer666 发表于 2023-10-14 23:28

牛!!!!!!!

爱飞的猫 发表于 2023-10-15 04:35

把提取的代码格式化一下吧,一行一两个字读起来也太难受了…

少年郎向前望 发表于 2023-10-15 08:09

挺有意思的

13613105079 发表于 2023-10-15 10:42

厉害大佬,学习一下

880307 发表于 2023-10-15 11:30

看不懂 就你图多 给你点赞、

Zer0o 发表于 2023-10-15 12:15

爱飞的猫 发表于 2023-10-15 04:35
把提取的代码格式化一下吧,一行一两个字读起来也太难受了…

收到,已改

romoi 发表于 2023-10-15 16:50

感谢大佬指点!

tly111222 发表于 2023-10-16 08:22

教程不错。

clyy 发表于 2023-10-16 17:49

厉害了 大佬
页: [1] 2
查看完整版本: [SWPUCTF 2021 新生赛]老鼠走迷宫(详细版