bitian 发表于 2020-2-7 22:18

练习做一个crackme,只会分析一部分,发上来大家看看有没有好思路

0x1 基础信息程序执行后没有任何提示,直接退出,用peid查壳:没有加壳。拖入IDA分析:F5 main函数提示不是函数!!!查看String:main程序代码如下:发现程序中存在如下字符串:通过OD调试,获取到接收输入的函数处:进一步跟踪程序:此处为真正接收输入的值的函数调用,后面的应当就为代码关键的算法了。分析了下,也没有发现flag信息。。。还需要继续努力啊!

ethanchengyu 发表于 2020-2-8 22:13

没有评论?这个值得收藏

1364847132 发表于 2020-2-8 23:38

本帖最后由 1364847132 于 2020-2-9 04:16 编辑

有重定向,去掉重定向后,
main函数有混淆,
0x402c20-0x402c41全部nop
0x402d0c-0x402d1d全部nop
0x402d88-0x402da1全部nop
0x402dbd-0x402dc4全部nop0x402dee-0x402dff全部nop。
IDA就能f5了。

输入字符串长度是32,字符串必须是数字或者字母。每4个一组依次分别过两个关键函数(上图)扩展成40位,再依次连接起来变成320位。
最后把计算出的320位与比较,相等即为success。
两个关键函数也有和main函数一样的混淆(同样需要nop一堆东西)。
接下来有两种思路:
1.继续分析这两个关键函数。
2.用angr爆破。

这里说明爆破的可行性。因为是4个一组所以一共只有4^(10+26+26)=14,776,336种情况(10个数组,26个大小写字符)。

bitian 发表于 2020-2-10 11:02

1364847132 发表于 2020-2-8 23:38
有重定向,去掉重定向后,
main函数有混淆,
0x402c20-0x402c41全部nop


感谢,我再分析分析

bitian 发表于 2020-3-3 16:00

1364847132 发表于 2020-2-8 23:38
有重定向,去掉重定向后,
main函数有混淆,
0x402c20-0x402c41全部nop


麻烦问一下,重定向是怎如何分析及取掉的,能提供点学习参考资料,刚开始学习这些知识

bitian 发表于 2020-3-10 10:03

1364847132 发表于 2020-2-8 23:38
有重定向,去掉重定向后,
main函数有混淆,
0x402c20-0x402c41全部nop


烦请指教下 去掉重定向这块

1364847132 发表于 2020-3-11 11:48

bitian 发表于 2020-3-10 10:03
烦请指教下 去掉重定向这块

loadpe -> pe编辑器 -> 特征值 -> 勾选重定位已分离 ,确定、保存
页: [1]
查看完整版本: 练习做一个crackme,只会分析一部分,发上来大家看看有没有好思路