-
-
[旧帖] [分享]带狗脱狗 0.00雪花
-
发表于: 2013-4-28 00:22 1251
-
参考了http://bbs.pediy.com/showthread.php?t=13146 PE显示无壳
对前辈表示感谢,下断点bp CreateFileA
运行程序,断在:
7C801A28 > 8BFF mov edi,edi
7C801A2A 55 push ebp
7C801A2B 8BEC mov ebp,esp
7C801A2D FF75 08 push dword ptr ss:[ebp+8]
7C801A30 E8 DFC60000 call kernel32.7C80E114
7C801A35 85C0 test eax,eax
7C801A37 74 1E je short kernel32.7C801A57
7C801A39 FF75 20 push dword ptr ss:[ebp+20]
7C801A3C FF75 1C push dword ptr ss:[ebp+1C]
7C801A3F FF75 18 push dword ptr ss:[ebp+18]
7C801A42 FF75 14 push dword ptr ss:[ebp+14]
7C801A45 FF75 10 push dword ptr ss:[ebp+10]
7C801A48 FF75 0C push dword ptr ss:[ebp+C]
7C801A4B FF70 04 push dword ptr ds:[eax+4]
7C801A4E E8 86F20000 call kernel32.CreateFileW
7C801A53 5D pop ebp
7C801A54 C2 1C00 retn 1C
7C801A57 83C8 FF or eax,FFFFFFFF
7C801A5A ^ EB F7 jmp short kernel32.7C801A53
7C801A5C 90 nop
7C801A5D 90 nop
这时堆栈数据:
0012F364 00457FCF /CALL 到 CreateFileA 来自 PROJECT2.00457FCD
0012F368 0012F3CC |FileName = "\\.\LPTDI1"////狗的标志。
0012F36C C0000000 |Access = GENERIC_READ|GENERIC_WRITE
0012F370 00000007 |ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE|4
0012F374 00000000 |pSecurity = NULL
0012F378 00000003 |Mode = OPEN_EXISTING
0012F37C 00000080 |Attributes = NORMAL
0012F380 00000000 \hTemplateFile = NULL
继续往下:
021E2C9B 8BF0 mov esi,eax
021E2C9D 83FE FF cmp esi,-1
021E2CA0 0F85 92000000 jnz win32dll.021E2D38 ; n
021E2CA6 EB 01 jmp short win32dll.021E2CA9
021E2CA8 81E8 03FEFFFF sub eax,-1FD
021E2CAE 0FB7F8 movzx edi,ax
021E2CB1 E8 FBFDFFFF call win32dll.021E2AB1
021E2CB6 0FB7C0 movzx eax,ax
021E2CB9 C1E0 10 shl eax,10
021E2CBC 0BF8 or edi,eax
021E2CBE 89BD 14FFFFFF mov dword ptr ss:[ebp-EC],edi
021E2CC4 EB 01 jmp short win32dll.021E2CC7
021E2CC6 81EB 01818D45 sub ebx,458D8101
021E2CCC FC cld
021E2CCD 53 push ebx
021E2CCE 50 push eax
021E2CCF 8D45 90 lea eax,dword ptr ss:[ebp-70]
021E2CD2 6A 08 push 8
021E2CD4 50 push eax
021E2CD5 8D85 14FFFFFF lea eax,dword ptr ss:[ebp-EC]
021E2CDB 6A 04 push 4
继续往下
021E2D06 3BFB cmp edi,ebx
021E2D08 75 33 jnz short win32dll.021E2D3D ; n
021E2D0A 395D 90 cmp dword ptr ss:[ebp-70],ebx
021E2D0D 75 0D jnz short win32dll.021E2D1C
021E2D0F FF45 F8 inc dword ptr ss:[ebp-8]
021E2D12 837D F8 03 cmp dword ptr ss:[ebp-8],3
021E2D16 ^ 0F8C 4FFFFFFF jl win32dll.021E2C6B ; t
021E2D1C 837D F8 03 cmp dword ptr ss:[ebp-8],3
021E2D20 7D 0B jge short win32dll.021E2D2D
021E2D22 EB 01 jmp short win32dll.021E2D25
021E2D24 818B 4594A318 D>or dword ptr ds:[ebx+18A39445],EB021ED0
021E2D2E 0181 8B45905F add dword ptr ds:[ecx+5F90458B],eax
021E2D34 5E pop esi
021E2D35 5B pop ebx
021E2D36 C9 leave
021E2D37 C3 retn
021E2D38 6A 19 push 19
就改了三处地方,把安装目录里面的win32dll.dll替换就可以了
不过在WINXP里面要报一次无狗的消息,点确定就OK,在WIN7里面却没有提示,直接进程序,经验证完全正常使用,而且不检测并口,无并口的笔记本也可以正常使用。
走了不少弯路,先是想模拟狗,读狗内数据不成功,用打狗棒1.0也不得要领。最后居然改了几处跳转就OK,现在都不是很明白,不过狗就这样稀里糊涂的被打掉了。。。。。。绝对菜鸟一个,汇编语言什么的不懂啊!有时间还得加强学习,整个一瞎猫碰到死耗子,呵呵。。。。。。。
对前辈表示感谢,下断点bp CreateFileA
运行程序,断在:
7C801A28 > 8BFF mov edi,edi
7C801A2A 55 push ebp
7C801A2B 8BEC mov ebp,esp
7C801A2D FF75 08 push dword ptr ss:[ebp+8]
7C801A30 E8 DFC60000 call kernel32.7C80E114
7C801A35 85C0 test eax,eax
7C801A37 74 1E je short kernel32.7C801A57
7C801A39 FF75 20 push dword ptr ss:[ebp+20]
7C801A3C FF75 1C push dword ptr ss:[ebp+1C]
7C801A3F FF75 18 push dword ptr ss:[ebp+18]
7C801A42 FF75 14 push dword ptr ss:[ebp+14]
7C801A45 FF75 10 push dword ptr ss:[ebp+10]
7C801A48 FF75 0C push dword ptr ss:[ebp+C]
7C801A4B FF70 04 push dword ptr ds:[eax+4]
7C801A4E E8 86F20000 call kernel32.CreateFileW
7C801A53 5D pop ebp
7C801A54 C2 1C00 retn 1C
7C801A57 83C8 FF or eax,FFFFFFFF
7C801A5A ^ EB F7 jmp short kernel32.7C801A53
7C801A5C 90 nop
7C801A5D 90 nop
这时堆栈数据:
0012F364 00457FCF /CALL 到 CreateFileA 来自 PROJECT2.00457FCD
0012F368 0012F3CC |FileName = "\\.\LPTDI1"////狗的标志。
0012F36C C0000000 |Access = GENERIC_READ|GENERIC_WRITE
0012F370 00000007 |ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE|4
0012F374 00000000 |pSecurity = NULL
0012F378 00000003 |Mode = OPEN_EXISTING
0012F37C 00000080 |Attributes = NORMAL
0012F380 00000000 \hTemplateFile = NULL
继续往下:
021E2C9B 8BF0 mov esi,eax
021E2C9D 83FE FF cmp esi,-1
021E2CA0 0F85 92000000 jnz win32dll.021E2D38 ; n
021E2CA6 EB 01 jmp short win32dll.021E2CA9
021E2CA8 81E8 03FEFFFF sub eax,-1FD
021E2CAE 0FB7F8 movzx edi,ax
021E2CB1 E8 FBFDFFFF call win32dll.021E2AB1
021E2CB6 0FB7C0 movzx eax,ax
021E2CB9 C1E0 10 shl eax,10
021E2CBC 0BF8 or edi,eax
021E2CBE 89BD 14FFFFFF mov dword ptr ss:[ebp-EC],edi
021E2CC4 EB 01 jmp short win32dll.021E2CC7
021E2CC6 81EB 01818D45 sub ebx,458D8101
021E2CCC FC cld
021E2CCD 53 push ebx
021E2CCE 50 push eax
021E2CCF 8D45 90 lea eax,dword ptr ss:[ebp-70]
021E2CD2 6A 08 push 8
021E2CD4 50 push eax
021E2CD5 8D85 14FFFFFF lea eax,dword ptr ss:[ebp-EC]
021E2CDB 6A 04 push 4
继续往下
021E2D06 3BFB cmp edi,ebx
021E2D08 75 33 jnz short win32dll.021E2D3D ; n
021E2D0A 395D 90 cmp dword ptr ss:[ebp-70],ebx
021E2D0D 75 0D jnz short win32dll.021E2D1C
021E2D0F FF45 F8 inc dword ptr ss:[ebp-8]
021E2D12 837D F8 03 cmp dword ptr ss:[ebp-8],3
021E2D16 ^ 0F8C 4FFFFFFF jl win32dll.021E2C6B ; t
021E2D1C 837D F8 03 cmp dword ptr ss:[ebp-8],3
021E2D20 7D 0B jge short win32dll.021E2D2D
021E2D22 EB 01 jmp short win32dll.021E2D25
021E2D24 818B 4594A318 D>or dword ptr ds:[ebx+18A39445],EB021ED0
021E2D2E 0181 8B45905F add dword ptr ds:[ecx+5F90458B],eax
021E2D34 5E pop esi
021E2D35 5B pop ebx
021E2D36 C9 leave
021E2D37 C3 retn
021E2D38 6A 19 push 19
就改了三处地方,把安装目录里面的win32dll.dll替换就可以了
不过在WINXP里面要报一次无狗的消息,点确定就OK,在WIN7里面却没有提示,直接进程序,经验证完全正常使用,而且不检测并口,无并口的笔记本也可以正常使用。
走了不少弯路,先是想模拟狗,读狗内数据不成功,用打狗棒1.0也不得要领。最后居然改了几处跳转就OK,现在都不是很明白,不过狗就这样稀里糊涂的被打掉了。。。。。。绝对菜鸟一个,汇编语言什么的不懂啊!有时间还得加强学习,整个一瞎猫碰到死耗子,呵呵。。。。。。。
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法
赞赏
他的文章
- [求助][求助]大神帮忙看看,这个是什么壳啊? 1016
- [分享]带狗脱狗 1252
- [求助]读用户区数据失败 Erro code = 30002 1492
- [求助]微狗分析求助 1557
看原图
赞赏
雪币:
留言: