- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
手动炮击很简单
手动脱壳简简单单
在我们进行逆向分析的时候,通常会遇到有些文件被加密处理过,也就是我们通常所说的被加了壳,这时他的内部结构都已经改变,我们想要继续分析是很麻烦的,所以我们需要把它从壳中分离出来,也就是我们常说的脱壳。现在越来越多的软件都使用了加壳的保护方法,所以脱壳是我们在逆向分析过程中很主要的步骤,掌握它至关重要
?壳是最早出现的一种专业加密软件。不同的壳的侧重点也不同,有的侧重于压缩,有的侧重于加密,所以出现了压缩壳和加密壳。压缩壳的特点是减小软件的体积,我们常见的有:UPX,ASPack,PECompack等。加密壳的则侧重于加密,保护强度较大,常见的有:ASProtect,Armadillo,Themida等。
第一步 寻找OEP
★OEP(Original Entry Point):程序的原入口点,就是壳程序在完成了对原程序的还原后,开始跳转到刚还原的程序执行,此时的地址就是入口点的值。
1 单步跟踪
首先,我们运行peid, 将我们要检测的程序拖到上面,可以看到它是用aspack加的壳,如图1。
?
我们运行OD,点击菜单栏中的“文件”→“打开”,把我们需要脱壳的文件加载进来,接着就会弹出一个对话框“模块……你仍要继续分析吗”, 如图2,
我们选择“否”(不管什么方法脱壳都要按“否”),程序就会停以下的代码处: 90 nop 60 pushad E8 call 0101300B - E9 EB045D45 jmp 465E34F8
0101300D 55 push ebp
0101300E C3 retn
0101300F E8 call 01013014 EB 5D jmp short我们按F8来跟踪一下,当到了call 0101300B这里的时候,记事本自己打开了,我们按Ctrl+F2重新载入文件,再来跟踪,当我们再次遇到call 0101300B这一句的时候我们按F7跟进,代码会来到这里:
0101300B 5D pop ebp
0101300C 45 inc ebp
0101300D 55 push ebp
0101300E C3 retn
我们继续F8来跟踪,当到了retn一句时,程序返回了,停在了 call的下面一句jmp 465E34F8上,跳转以后代码来到了下面的这一句call 继续F8,如果遇到程序往回跳,那么我们就在下一句代码处按F4,这样跟踪一段时间以后,我们会看到这样的代码:
010133BB 68 9D730001 push 0100739D
010133C0 C3 retn
再F8一下我们的程序就返回了了这里:
0100739D 6A 70 push 70
0100739F 68 push 010073A4 E8 BF010000 call 到这里,我们就已经到达OEP,单步跟踪法测试成功。
2 堆栈平衡
★??? 堆栈:一种数据项按序排列的数据结构,只能在一端(栈顶)对数据项进行插入和删除。
★??? ESP:是CPU中的寄存器,它的值是指向堆栈栈顶的指针。
加壳时,必须保证加壳后文件与我们的原始文件的环境现场是不变的,所以在外壳程序运行的时候,就会把刚载入时的各寄存器值保存到堆栈中来保护环境现场,所以我们在它向堆栈保存环境现场时对这时的堆栈栈顶设置硬件访问(写入)断点,当壳程序执行完毕,恢复环境现场时就需要访问(写入)在保存环境现场时的堆栈地址,而我们已经在这里设置了硬件访问(写入)断点,所以程序就会被断下来。
在根据堆栈平衡原理,首先要说的就是ESP定律法。
在OD中载入我们需要脱壳的文件,注意OD右上角寄存器窗口中的ESP值,刚载入的时候它是红色的,我们按F8跟踪一下,当它再次变红时(数据发生变化),如图3,
?
?
这时我们在OD左下脚的指令窗口中输入hr(hw) 当前ESP值,按回车,来设置一个硬件访问(写入)断点,如图4,
?
?
接着我们按F9让程序运行起来,代码会来到如图5所示的地方,
?
按只需要在这里按F8跟
您可能关注的文档
- 常用的测量仪器训练.ppt
- 常用的逻辑功能器件组合.ppt
- 常见骨折失败分析.doc
- 常用运动旋转机构.doc
- 干式变压器检查事项.doc
- 干式变压器的维护.doc
- 常见的失效形式及特点及诊断.ppt
- 干挂面板安装说明.doc
- 干式变压器手册.doc
- 干火消防栓系统.doc
- 机电技术教育设计基于UG下的钢丝包装机的虚拟装配.doc
- 机械设计制造及其自动化论文汽车火花点火系统电磁干扰的抑制方法.doc
- 机械设计制造及其自动化论文基于solidworks的轴承架模拟仿真.doc
- TGXSES0004-2023 土壤和沉积物 6种醚类化合物的测定 吹扫捕集 气相色谱-质谱法.pdf
- DB62T4735-2023 动物诊疗机构医疗废弃物处置技术规范.pdf
- TZS0344-2022 数字化无掩模激光直写光刻机.pdf
- 安徽省建设用地使用标准编制说明.pdf
- DB62T4492-2022 枸杞品种甘杞1号.pdf
- TSDSES-化工材料-再生环戊酮.pdf
- DB4403T涉河建设项目防洪评价和管理技术规范.pdf
文档评论(0)