cmheia 发表于 2015-6-25 23:00

【ASLR关闭工具】OD载入每次入口地址都不一样怎么办?就这么办。

本帖最后由 cmheia 于 2015-7-6 19:19 编辑

【背景】
无需多言,戳这里(有图)、这里(无图)还有这里(无图)。

【出招】

[*]撸代码,做工具
洋洋洒洒数千言,核心代码就两行(雾


[*]exe拖进来

[*]完成

[*]开心OD~

【效果】
任你虐ta千百遍,载入基址永不变(逃


【原理】

[*]百度这句话,看第一个结果(目前我看到还是第一个):
XP下OD载入exe文件基地址是400000,而WIN7里每次都不一样。不知道为什么?
[*]搜索 ASLR 或 Address Space Layout Randomization
[*]直观感受:用 Beyond Compare 对比改动前后的文件。

【上菜】

【备注】

[*]目前只处理了 32bit exe, 其它均未列入日程。
[*]曾经英语垫底生,你懂。

【补充】

[*]如 @Hmily前辈所说, Windows XP 之后的系统(内核版本 NT 6+)都默认打开了 ASLR功能,可以在注册表中添加开关禁用。
[*]关闭 ASLR 可参考程序清单 1,重新启用可参考程序清单 2(均来自搜索,未测试)(注:毕竟是保护系统安全的功能,小心取舍)。
程序清单 1
Windows Registry Editor Version 5.00


"MoveImages"=dword:00000000

程序清单 2
Windows Registry Editor Version 5.00


"MoveImages"=-

[*]MFC 实在荒废太久,虽记得被坑过,却已忘记怎么操作注册表了,待重温后再行更新。

【后记】

[*]昨晚花了几个小时重温丢了两年多的MFC
[*]折腾到夜里2+才搞定关机
[*]今天早上7+惊醒
[*]发现放在床边的两台手机失踪
[*]窗户防盗网毁坏
[*]我愿天下窃贼皆横死
[*]就这样。





Hmily 发表于 2015-6-26 18:59

小工具不错,之前一直用pe工具直接修改pe头字节,还可以导入注册表禁用alsr防止基地址随机化,ALSR在vista以上系统才有,所以新系统上打补丁最好先获取基地址再添加偏移。
建议题目前面增加:【ALSR关闭工具】

程序里可以添加一个禁用系统ALSR的开关。

chinasmu 发表于 2015-6-25 23:46

重定位?

良宵花弄月 发表于 2015-6-26 19:06

2台手机···

gaso0 发表于 2015-6-26 19:17

不错支持下 很有效的东西

cmheia 发表于 2015-6-26 22:14

Hmily 发表于 2015-6-26 18:59
小工具不错,之前一直用pe工具直接修改pe头字节,还可以导入注册表禁用alsr防止基地址随机化,ALSR在vista ...

标题已添加。
目前程序用 32bit 的 VC6 做的,之前遇到过注册表操作会被重定向到 Wow3264Node 节点的情况,待研究。

Hmily 发表于 2015-7-6 12:00

这个也错了,应该是ASLR。。。

cmheia 发表于 2015-7-6 19:20

Hmily 发表于 2015-7-6 12:00
这个也错了,应该是ASLR。。。

标题已修正。。。{:1_907:}

硬汉 发表于 2015-8-15 21:46

非常感谢!!!!!!!!!

木兮兮 发表于 2015-8-18 18:07

页: [1] 2 3 4
查看完整版本: 【ASLR关闭工具】OD载入每次入口地址都不一样怎么办?就这么办。