首页
社区
课程
招聘
[原创]
发表于: 2019-6-10 18:27 2373

[原创]

2019-6-10 18:27
2373
先上图:
第一次做ctf,感觉自己好菜。第一题就做了好几个小时。

先丢到ida中逆向分析一遍,发现了目标。想办法让它执行到这。
发现它是在异常处理模块中。

再向上看,发现在_try{}中有一个div esi,想办法让它发生除零异常就行了,即esi=0。
接着向上分析,发现sub esi eax,再想办法让esi=eax。在执行这个指令的时候,eax = 0x401353,接下来构建输入让esi也等于这个值就可。
F5大法:

找到此时构建esi的值的部分。利用python 暴力破解。
for x in range(32,126):
    for y in range(32,126):
        for z in range(32,126):
            if x+y+z==149:
                a=[x,y,z,51,53,51]
                c=0
                for b in range(6):
                    c=16*c-48+a[b]
               
                if c==0x401353:
                    print(x,y,z)
            
最后得到两组数据,应该都可以。我挑了第二个看起来比较正常的。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 1
支持
分享
最新回复 (1)
雪    币: 47147
活跃值: (20445)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
2
请重新下载题目分析下,题目更新了一次,修正了bug,下面这句删除了:
2019-6-10 21:16
0
游客
登录 | 注册 方可回帖
返回
//