Quantcast
Channel: 看雪安全论坛
Viewing all articles
Browse latest Browse all 9556

【求助】处理穿山甲的双进程保护时为什么要对OpenMutex函数下断呀?

$
0
0
最近在看穿山甲的脱壳进程,对这些操作不理解,也没有人脱此壳时仔细讲解原理
步骤:1 分离父子进程

下断点BP OpenMutexA

F9运行中断后,看堆栈:

0012F798 00434DB8 /CALL 到 OpenMutexA 来自 NOTEPAD_.00434DB2
0012F79C 001F0001 |Access = 1F0001
0012F7A0 00000000 |Inheritable = FALSE
0012F7A4 0012FDD8 \MutexName = "AF0::DA262953ED" ★注意这个地址:0012FDD8

在CPU窗口中 Ctrl+G:401000 键入以下代码:

00401000 60 pushad
00401001 9C pushfd
00401002 68 F8FB1200 push 0012FDD8 ★ 堆栈里看到的值
00401007 33C0 xor eax,eax
00401009 50 push eax
0040100A 50 push eax
0040100B E8 B5A6A577 call kernel32.CreateMutexA
00401010 9D popfd
00401011 61 popad
00401012 - E9 7A13A677 jmp kernel32.OpenMutexA

为什么用处理这个函数之前先调用kernel32.CreateMutexA就能实现父子进程分离了呢????、求助呀,想了解为什么。。。。

Viewing all articles
Browse latest Browse all 9556

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>