- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
手脱实现双进程标准保护ArmaDillo壳
穿山甲壳的一个重要特点就是:
寻找OEP本身不难,但Armadillo会对IAT进行加密处理,导致后面dump出的内容无效,因此寻找OEP之前,需要绕过IAT的加密处理,以后dump后才能方便地用ImpRec修复。
程序名为notepad.exe,运行后有两个notepad.exe进程。原理大概是互相通过一个Mutex来通讯检测对方是否存在。OD中可以通过手动汇编的方式进行双变单。
此样本运行后有两个进程。双进程保护。。。。
1 OD加载程序,对OpenMutexA函数下断,F9运行
2 观察栈
3 手动汇编,使进程由双变单
Ctrl+G 定位到地址,手动输入汇编代码:
Pushad
Pushfd
Push 0012FDD8
Xor eax,eax
Push eax
Push eax
Call CreateMutexA
Popfd
Popad
Jmp OpenMutexA 截图如下:
然后在出 新建EIP ,程序从此处运行
Jmp OpenMutexA 处跳到OPenMutexA函数处
取消OpenMutex断点,消修改的代码,恢复原状
接下来在系统空间内对 GetModuleHandleA 函数下硬件执行断点 He api
F9 1次:
0012E79C 77C079B2 /CALL 到 GetModuleHandleA 来自 77C079AC
0012E7A0 77BE31BC \pModule = kernel32.dll
F9 2次:
0012E61C 74683C4E /CALL 到 GetModuleHandleA 来自 MSCTF.74683C48
0012E620 0012E624 \pModule = C:\WINDOWS\system32\ntdll.dll
F9 3次:
0012E624 74683C4E /CALL 到 GetModuleHandleA 来自 MSCTF.74683C48
0012E628 0012E62C \pModule = C:\WINDOWS\system32\imm32.dll
F9 4次:
0012E570 74683C4E /CALL 到 GetModuleHandleA 来自 MSCTF.74683C48
0012E574 0012E578 \pModule = C:\WINDOWS\system32\KERNEL32
F9 5次:
0012ECFC 7365D4BA /CALL 到 GetModuleHandleA 来自 msctfime.7365D4B4
0012ED00 0012ED04 \pModule = C:\WINDOWS\system32\ntdll.dll
F9 6次:
0012EE64 5D175324 /CALL 到 GetModuleHandleA 来自 5D17531E
0012EE68 5D175370 \pModule = kernel32.dll
F9 7次:
0012EF24 77F45CD0 /CALL 到 GetModuleHandleA 来自 77F45CCA
0012EF28 77F4501C \pModule = KERNEL32.DLL
F9 8次:
0012F73C 00433EF3 /CALL 到 GetModuleHandleA 来自 练习用NO.00433EED
0012F740 \pModule = NULL
F9 9次:(时间稍长) 00BB6DF3 /CALL 到 GetModuleHandleA 来自 00BB6DED
0012952C 00BCBC1C \pModule = kernel32.dll 00BCCEC4 ASCII VirtualAlloc
F9 10次: 00BB6E10 /CALL 到 GetModuleHandleA 来自 00BB6E0A
0012952C 00BCBC1C \pModule = kernel32.dll 00BCCEB8 ASCII VirtualFree
F9 11次:
0012928C 00BA5CE1 /CALL 到 GetModuleHandleA 来自 00BA5CDB 001293DC \pModule = kernel32.dll
Ok Alt+F9 回到程序领空
以下寻找OEP有两种方法
一是
您可能关注的文档
最近下载
- 公用设备工程师(暖通空调)《公共基础》考试(重点)题库200题(含答案解析).docx VIP
- 【中小学】高一上下册古老的声音原始狩猎图课件.pptx VIP
- 2025-2026学年高二化学上学期第一次月考卷1(全解全析).docx VIP
- (统编版2025新教材)语文二年级上册识字3 拍手歌 课件.pptx
- 3晕针晕血的应急预案及处理流程.pptx VIP
- 《消防安全标志设置要求》.pdf VIP
- 《骨髓增殖性肿瘤》课件 .ppt VIP
- 五年级劳动课《包饺子》课件.pptx VIP
- 雁塔区第二小学基础教育学校硬件设施建设三年规划.docx VIP
- 《Access数据库应用教程》教学大纲、授课计划.docx
文档评论(0)