首页
社区
课程
招聘
没有狗脱一个程序,n多的花指令,看了一下午,头昏脑胀
2004-11-23 18:28 4669

没有狗脱一个程序,n多的花指令,看了一下午,头昏脑胀

2004-11-23 18:28
4669
原程序加壳了,是JDPack 1.x / JDProtect 0.9 ,我也不知道自己脱的是否正确!!
这个是我用OD的插件直接脱出来的,可以运行~~~~大家帮忙看看这个没有狗能不能破解?
狗是safenet的并口狗,驱动是3.1.10.0~~~~偶是安装了驱动来调试的,中间参考<<加密与解密>>的相关资料,折腾了一下午的花指令,把一些花指令偶手工去掉,还有n多~~~~

0044CDB7      81BD 80FEFFFF 00>cmp     dword ptr ss:[ebp-180], 100000//这个地方可以跳过没有狗的对话框,但是不能运行~
0044CDC1      0F84 84000000    je      33.0044CE4B
0044CDC7      A1 38A04500      mov     eax, dword ptr ds:[45A038]
0044CDCC      48               dec     eax                                      ; 33.004554D4
0044CDCD      8BC8             mov     ecx, eax                                 ; 33.004554D4
0044CDCF      8D0480           lea     eax, dword ptr ds:[eax+eax*4]
0044CDD2      8D0480           lea     eax, dword ptr ds:[eax+eax*4]
0044CDD5      8D0441           lea     eax, dword ptr ds:[ecx+eax*2]
0044CDD8      8D0445 10904500  lea     eax, dword ptr ds:[eax*2+459010]
0044CDDF      05 14060000      add     eax, 614
0044CDE4      8985 ACFEFFFF    mov     dword ptr ss:[ebp-154], eax              ; 33.004554D4
0044CDEA      833D E2954500 00 cmp     dword ptr ds:[4595E2], 0
0044CDF1      74 27            je      short 33.0044CE1A
0044CDF3      A1 5C9B4500      mov     eax, dword ptr ds:[459B5C]
0044CDF8      8985 50FDFFFF    mov     dword ptr ss:[ebp-2B0], eax              ; 33.004554D4
0044CDFE      6A 40            push    40
0044CE00      B8 10904500      mov     eax, 33.00459010
0044CE05      05 D6050000      add     eax, 5D6
0044CE0A      50               push    eax                                      ; 33.004554D4
0044CE0B      8B85 ACFEFFFF    mov     eax, dword ptr ss:[ebp-154]              ; 33.00459624
0044CE11      50               push    eax                                      ; 33.004554D4
0044CE12      6A 00            push    0
0044CE14      FF95 50FDFFFF    call    near dword ptr ss:[ebp-2B0]              ; <jmp.&user32.MessageBoxA>//没有狗的对话框
0044CE1A      C705 409B4500 01>mov     dword ptr ds:[459B40], 1
0044CE24      833D 40A04500 00 cmp     dword ptr ds:[45A040], 0
0044CE2B      74 0F            je      short 33.0044CE3C
0044CE2D      A1 649B4500      mov     eax, dword ptr ds:[459B64]
0044CE32      8945 FC          mov     dword ptr ss:[ebp-4], eax                ; 33.004554D4
0044CE35      6A 01            push    1
0044CE37      FF55 FC          call    near dword ptr ss:[ebp-4]                ; <jmp.&kernel32.ExitProcess>
0044CE3A      EB 0F            jmp     short 33.0044CE4B
0044CE3C      6A 01            push    1
0044CE3E      FF15 98C24500    call    near dword ptr ds:[<&kernel32.GetCurrent>; kernel32.GetCurrentProcess
0044CE44      50               push    eax                                      ; 33.004554D4
0044CE45      FF15 9CC24500    call    near dword ptr ds:[<&kernel32.TerminateP>; kernel32.TerminateProcess

附件:33.rar

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 1
打赏
分享
最新回复 (12)
雪    币: 16
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
great1234 2004-11-23 18:31
2
0
如果要是有狗多好阿~~~55555555,俺就可以看它createfile,deviceioctotrl的返回值~~~~也可以知道不显示那个对话框以后的0044CDC1      0F84 84000000    je      33.0044CE4B
的具体含义了,没有狗猜测真不是个滋味!
雪    币: 16
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
great1234 2004-11-23 18:34
3
0
偶手工修改0044CDC1处的标志,强行跳转到这里,

0044CE4B      A1 3E9A4500      mov     eax, dword ptr ds:[459A3E]
0044CE50      3305 8C904500    xor     eax, dword ptr ds:[45908C]
0044CE56      A3 4CB04500      mov     dword ptr ds:[45B04C], eax
0044CE5B      A1 4CB04500      mov     eax, dword ptr ds:[45B04C]
0044CE60      A3 C6924500      mov     dword ptr ds:[4592C6], eax
0044CE65      8D85 84FEFFFF    lea     eax, dword ptr ss:[ebp-17C]
0044CE6B      A3 58B04500      mov     dword ptr ds:[45B058], eax
0044CE70      C705 54B04500 00>mov     dword ptr ds:[45B054], 0
0044CE7A      C705 5CB04500 08>mov     dword ptr ds:[45B05C], 8
0044CE84      E8 0C320000      call    33.00450095//执行完这个call以后eax是7532,不知道啥意思!
0044CE89      8985 ECFEFFFF    mov     dword ptr ss:[ebp-114], eax
0044CE8F      83BD ECFEFFFF 00 cmp     dword ptr ss:[ebp-114], 0
0044CE96      75 12            jnz     short 33.0044CEAA
雪    币: 414
活跃值: (531)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
nig 4 2004-11-23 22:01
4
0
我还以为是什么大不了的狗呢,是彩虹的DJ类型的狗,也叫软件狗呢,旧版的狗壳无狗 就可以脱壳,新版的我没有,所以不清楚,但最新的DJ狗加了单片机,分析起来就有些难度了。

细分析一下,很容易就搞定的。思路,不要在读狗上的程序上下手,而是要在调用读狗部分的程序下手。处理返回值。

程序的OEP应该是 401d10,我没有跟,只是分析得到的。

楼上的兄弟说的直接返回0是不可以的,为什么不可以,你跟一下就知道了。

7532是指没有找到狗了。

另外,以前我们也讨论过,只是坛子里有彩虹的人,大家就不再聊这个了。

仅供参考吧!
雪    币: 16
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
great1234 2004-11-24 09:07
5
0
楼上的,请指教哦~

1.这个我已经脱壳了,你为什么说OEP是401d10呢?难道我找的不是OEP?
2.你说的"不要在读狗上的程序上下手,而是要在调用读狗部分的程序下手"是啥意思阿?我这个程序就一个exe文件阿,读狗的部分就在这个exe里面阿...
3.坛子里有彩虹的人为什么就不能聊了?难道只允许他们来学习我们的交流?
4.谢谢你的回复.
雪    币: 414
活跃值: (531)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
nig 4 2004-11-24 10:57
6
0
你只脱了一层壳,里面还有一层狗壳你没有脱啊!
sub_fun A
  call B
end sub_Fun

B:读狗子程,A调用读狗子程B,我的意思是你要研究A,不必细看B。

彩虹的人,就会把我们的处理方法结果收集回去,下一版中就会有针对性的进行修补了,我上面说的那个不能直接 置0 就是这个的结果。

最初由 great1234 发布
楼上的,请指教哦~

1.这个我已经脱壳了,你为什么说OEP是401d10呢?难道我找的不是OEP?
2.你说的"不要在读狗上的程序上下手,而是要在调用读狗部分的程序下手"是啥意思阿?我这个程序就一个exe文件阿,读狗的部分就在这个exe里面阿...
3.坛子里有彩虹的人为什么就不能聊了?难道只允许他们来学习我们的交流?
........
雪    币: 439
活跃值: (86)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Pan88168 2004-11-24 12:39
7
0
NIG兄说得对哦。还是少讨论为好
雪    币: 16
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
great1234 2004-11-24 13:18
8
0
多谢楼上的指教!

1,我现在应该对原来的exe下手?也就是说不要脱壳?
2.还是我继续在我的这个所谓的脱壳的程序上跟踪下去?
雪    币: 16
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
great1234 2004-11-24 13:35
9
0
我的意思是你要研究A,不必细看B。

===================================
不明白,请指教一下.我也是最近被狗弄晕了
雪    币: 414
活跃值: (531)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
nig 4 2004-11-24 14:12
10
0
你给的这个33.exe上还有一层狗壳,你要想再研究也是可以处理的。
因为程序的原理是从狗中返回4个字节的数据,与401000开始的内容进行异或,所以你要研究的话,必须猜出这4个字节的数据,有狗当然没有任何的问题,但没有狗,只好猜了。

另外,象这种用来练手的情况,我的建议是最好带狗来练,这样会比你这样乱撞好的多,而且也容易看清流程的。
雪    币: 16
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
great1234 2004-11-24 15:56
11
0
ok,

0044CD45       833D 40A04500 00 cmp     dword ptr ds:[45A040], 0//这里是判断版本,NT的==1,9x==0
0044CD4C       74 0D            je      short Dial-tes.0044CD5B
0044CD4E       E8 F9060000      call    Dial-tes.0044D44C//好像这里就应该是读狗的地方了~~
0044CD53       8985 80FEFFFF    mov     dword ptr ss:[ebp-180], eax//请问是这里返回的值跟401000 xor吗?
0044CD59       EB 0B            jmp     short Dial-tes.0044CD66
0044CD5B       E8 A9280000      call    Dial-tes.0044F609
0044CD60       8985 80FEFFFF    mov     dword ptr ss:[ebp-180], eax
0044CD66       EB 0A            jmp     short Dial-tes.0044CD72

我正在一点一点的分析~~~~~谢谢这位朋友的指教

那个顶楼的33.exe【好像】是我没有完全脱壳造成的.我现在正在用原版的exe追踪.....

BTW:4个字节???我晕~~~~ffffffff有多少可能阿!
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hclr 2004-11-24 17:42
12
0
把未脱壳的程序传上来好吗?
雪    币: 16
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
great1234 2004-11-24 18:08
13
0
唉,有进展了,有进展了!要对自己有信心,我发的这个33.exe就是真正的狗壳开始部分,我倒阿~~~~并且这个是最新的狗壳,唉~~~~

大家可以参考一下原来的exe附件:test.rar
游客
登录 | 注册 方可回帖
返回