飘云阁(PYG官方)

 找回密码
 加入论坛

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 76|回复: 0

[脱壳破解] 使用010editor修改PE文件随机基址

[复制链接]
  • TA的每日心情
    开心
    昨天 01:13
  • 签到天数: 107 天

    [LV.6]常住居民II

    发表于 2019-8-5 12:36:25 | 显示全部楼层 |阅读模式
    本帖最后由 zyjsuper 于 2019-8-6 10:25 编辑

    我们在windows逆向时,经常会遇到PE文件的基地址随机的情况,不利于反汇编的对比分析,比如利用OD反汇编时的地址和IDA反汇编时就会有不同,两者在对比分析过程中就很难对应上。所以才有了下面的介绍,分享给刚开始学逆向的朋友们,大神们飘过,不才膜拜中........
    0x00:所需工具

    010Editor windows版
    下载链接:http://www.sweetscape.com/download/010EditorWin64Installer.exe   
                    http://www.sweetscape.com/download/010EditorWin32Installer.exe

    0x01:安装模版
    打开010editor之后,依次选择"Tools"——>"Options",然后的操作如图所示,继续选择"Templates"——>"Show...",然后在左侧列表中找到"EXE.bt"右击选择"Install",安装PE文件的分析模版,其他模版可参考此步骤自行安装。



    0x02:修改基址
    本例以winrar为样本,将随机地址修改为固定地址。
    用010Editer打开winrar.exe文件,如果打开文件后没有显示PE文件结构窗口,那么我们就需要按照下图所示的步骤调出窗口,依次选择菜单"Templates"——>"Executable"——>"EXE"。

    再分享一个小技巧,默认窗口排列是上下结构的,如果改成左右结构需要按下图所示操作。上图中,在下面的窗口空白处右击,依次选择"Templates Results Position"——>"Right"。

    进入正题,下面是真正修改基址的关键,按下图所示依次展开树状结构,将"WORD IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE"字段对应的Value值由"1"改成"0".
    也可以将左侧窗口对应的hex值"6081"改成"2081",对应32位程序的话,此处是"4081"改成"0081","WORD IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE"的值修改成"0",和64位操作方法一样。

    0x03:验证结果
    因位OD没有办法加载64位的winrar,所以验证的时候我改成了32位的winrar来验证。
    未修改随机基址前,OD载入32位winrar.exe如图所示:

    修改之后如图:

    0x04:总结
    随机基址的问题主要出现在使用OD来分析32位PE文件时,会遇到这样的问题,而使用IDA或者其他反汇编工具时没有此问题,不需要修改随机基址,其他用途不才也没遇到。此文旨在抛砖引玉,望大神不吝赐教,指导一二。


    附图:32位PE文件修改方法










    评分

    参与人数 1威望 +1 飘云币 +1 收起 理由
    昔邪 + 1 + 1 赞一个,这个帖子很给力!

    查看全部评分

    您需要登录后才可以回帖 登录 | 加入论坛

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    快速回复 返回顶部 返回列表