首页
社区
课程
招聘
[旧帖] [原创]破解初体验[申请邀请码] 0.00雪花
发表于: 2009-12-4 15:22 1412

[旧帖] [原创]破解初体验[申请邀请码] 0.00雪花

2009-12-4 15:22
1412
ollydbg,VMWare,IDA+Hex-Rays
提前声明:以前还没有从汇编级分析过软件,此次接触也不过十几天,错误漏洞在所难免,写本文的目的一是分享一下自己这段时间的一些经验,同时更重要的是希望大家看看我的破解分析过程,是否走了弯路?共同探讨,共同进步!
    以前知道有个softice,一个据说很牛X的调试工具,本来是想用这个工具的,后来在看雪上转了转,发现大家都推荐ollydbg,更重要的是很多关于ollydbg的资料,于是就决定用这个开始自己的破解之旅。
    关于ollydbg入门,我就不多说了,我建议大家直接去看看CCdebuger的入门系列吧,可操作性很强,也很详细,我花了两天时间看完了,在这里感谢一下这位前辈,让我这样的新手可以很快入门:)
    看完之后,我遇到的第一个问题是:我的程序里面用到了一个dll,但是不是静态链接,是LoadLibaray进来的。这样就无法直接通过参考下断点跟进去了,而我想要的东西就是在这个dll里面。下面是我解决这个问题的方法:
    先用od把dll运行起来,Ctrl+N,找到dll输出的几个接口名称,双击,到了输出接口的地址,然后点右键,汇编,出现一个汇编于此处的对话框,在里面输入int 3,下一行输入RETN。最后点右键,复制到可执行文件,所有修改。我的思路是,不管主程序在什么位置调用了这个接口,进来之后马上会被int 3中断,就相当于在dll里面下了个断点。当然,修改了之后的exe肯定无法正常运行了,但是我的目的只是找到主程序调用这个接口的地方,所以先备份dll,后面还要恢复。
    ok,再次用od运行主程序,果然,在int 3的地方停下来了,再执行下一句,直接return了,这样就找到了主程序里面调用dll这个接口的位置,标记下,下断点,恢复原来的dll,ok。
    第二个问题:我知道这个dll里面用到了文件操作,但是却无法下断点。当调试的时候进入dll里面,Ctrl+N,也能发现有CreateFileA(因为是98下,所以没有W),但是点击在每个参考上下断点的时候,却没有下一个断点,到现在我也没搞明白为什么会这样?下面是我解决这个问题的方法:
    首先,用IDA+Hex-Rays把dll反编译成C语言,然后在这个里面查找CreateFileA,每找到一个,就看看是在那个函数里面调用的,因为这个反编译出来的C源程序每个函数前面都有注释,表明了这个函数在dll里面地址。然后再回到dll里面,找这个地址,顺着地址往下再找,找到调用CreateFileA的地方,注释,加断点。问题是能解决,但是花了不少时间。
    不知道我可有绕路的地方?欢迎大家批评指正。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 287
活跃值: (18)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
支持,谢谢分享,如果多几个截图和注释应该申请邀请码几率更大
2009-12-4 15:28
0
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不会发图片啊
2009-12-4 15:45
0
雪    币: 433
活跃值: (1875)
能力值: ( LV17,RANK:1820 )
在线值:
发帖
回帖
粉丝
4
没见到代码的文章,拿码的机率比较低……
2009-12-4 15:45
0
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
把相关的代码也贴出来?看来写的还不够详细啊
2009-12-4 15:48
0
雪    币: 433
活跃值: (1875)
能力值: ( LV17,RANK:1820 )
在线值:
发帖
回帖
粉丝
6
嗯,应该写得详细一点,最好要有实例,要是能再写出注册机,拿码的机会就比较大了
2009-12-4 15:52
0
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
那就继续,就那开心外挂做练手吧
2009-12-4 15:59
0
雪    币: 51
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
IDA 能反编译出C?
2009-12-4 20:05
0
游客
登录 | 注册 方可回帖
返回
//