-
-
[旧帖]
[原创 ]老菜鸟被逼出水,关于OD内存地址转换,怎么这么麻烦!
0.00雪花
-
发表于:
2010-12-15 22:04
877
-
[旧帖] [原创 ]老菜鸟被逼出水,关于OD内存地址转换,怎么这么麻烦!
0.00雪花
有一款软件,我已经在od里看到注册码了,可是跟踪了好几天,也没找到错误注册码和正确的注册码是怎么对比的, 软件没有加壳,但是感觉跳转太多了,根本无从下手。 刚刚下载了keymaker, 学了一下午基本上会用了,可是kaymaker生成的程序,根本算不出注册码,
我估计是我内存地址填写的不对,故请高人指点:
od载入主程序的时候,入口点在:
00425510
用peid 查看, 偏移地址是:00025510
运行程序,然后
断点在:
770F863D 85C0 test eax,eax (一个dll中,不是在主程序中)
处,此时,有od注释可见到如下内容:
地址 数值 注释
0012E10C 0012EC64 UNICODE "{420B2830-E718-11CF-893D-00A0C9054228}"
我想用keymaker生成内存注册机,信息是这么填写的:
中断地址:770F863D
中断次数:1
第一字节:85
指令长度:2
注册码:选择 内存方式
内存地址填写:0012E10C + 00425510 的和
并且选择了“宽字符串”,
但是生成的key。exe, 根本就读不出注册码, 我觉得我把内存地址填写错误了,
后来内存地址我写了N个,都不行,比如:
0012E10C + 00025510
0012EC64 + 00425510
等等,都不行啊。 我就是不明白:
地址 数值 注释
0012E10C 0012EC64 UNICODE "{420B2830-E718-11CF-893D-00A0C9054228}"
我要得到后边的注册码, 在使用keymaker的时候, 怎么把上面的地址换算成keymaker要求的地址?
地址 和 数值 这两个数是什么关系呀?
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法