首页
社区
课程
招聘
看看这个RODA[讨论]
发表于: 2007-3-23 13:11 4784

看看这个RODA[讨论]

2007-3-23 13:11
4784
我不是想浪费论坛空间
真的是找不出这个RODA's protect的ANTI在哪
现在发上来  希望哪个朋友给看看
是不是我疏漏哪了

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 70
活跃值: (74)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
刚才没发上来
上传的附件:
2007-3-23 13:27
0
雪    币: 304
活跃值: (82)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
3
这个壳貌似见过,不像yoda's
飘过
ANTI我没细看,貌似只是些常规检测,没多大研究意义
楼主你具体说说有啥问题?
上传的附件:
2007-3-23 13:56
0
雪    币: 70
活跃值: (74)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
还请教兄弟  ANTI在怎么产生的
2007-3-23 14:01
0
雪    币: 70
活跃值: (74)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
我学脱壳不是为了脱它  而是为了能学到新东西
希望哪位朋友不吝赐教  惭愧!
2007-3-23 14:08
0
雪    币: 70
活跃值: (74)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
忽略所有异常  SHIFT+F9运行  没用  程序不会运行
CRTL+F2重来  下断PROCESS32NEXT  SHIFT+F9运行
再过一些单步就异常  
然后进入了个SEH的循环跳不出来了  搞不懂!
2007-3-23 15:04
0
雪    币: 304
活跃值: (82)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
7
hideod 不要patch PROCESS32NEXT,试试
2007-3-23 15:15
0
雪    币: 1281
活跃值: (1290)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
8
00421331    33C0            XOR EAX,EAX
00421333    64:FF30         PUSH DWORD PTR FS:[EAX]
00421336    64:8920         MOV DWORD PTR FS:[EAX],ESP   ;安置异常处理
00421339    4B              DEC EBX
0042133A    CC              INT3  ;产生异常
0042133B    C3              RETN
0042133C    E8 03000000     CALL TwidoKey.00421344
00421341    EB 01           JMP SHORT TwidoKey.00421344

在这句-》0042133A    CC              INT3  ;产生异常
如果对异常机制不熟悉,走下一句就会跟飞了。我只知道这么点了,请高手指点。
2007-3-23 15:20
0
雪    币: 304
活跃值: (82)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
9
最初由 zhujian 发布
00421331 33C0 XOR EAX,EAX
00421333 64:FF30 PUSH DWORD PTR FS:[EAX]
00421336 64:8920 MOV DWORD PTR FS:[EAX],ESP ;安置异常处理
00421339 4B DEC EBX
0042133A CC INT3 ;产生异常
........


走到这里时,不要步过那个INT3,安装完异常处理程序后(也就是在421339处)
查看堆栈:
0012FFB4   0012FFE0  指向下一个 SEH 记录的指针
0012FFB8   004212A2  SE处理程序
0012FFBC   0042129A  返回到 TwidoKey.0042129A 来自 TwidoKey.0042129D
0012FFC0   0042128D  返回到 TwidoKey.0042128D 来自 TwidoKey.00421290

你可以看到SE处理在4212A2处,也就是说程序后面产生的异常会抛到4212A2处的
代码来处理,预先在4212A2处下断点,然后shift + F9,程序就会断在那里了。
2007-3-23 16:14
0
雪    币: 70
活跃值: (74)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
10
这我知道  我觉得问题不是在SEH
2007-3-23 17:58
0
雪    币: 70
活跃值: (74)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
11
问题就在PATCH Process32Next上了
7C863EEF >  33C0            xor     eax, eax
7C863EF1    C2 0800         retn    8
上面是Patch后的代码  而应该是
7C863D64 >  8BFF            mov     edi, edi                         ; TwidoKey.00423A2F
7C863D66    55              push    ebp
7C863D67    8BEC            mov     ebp, esp
7C863D69    83EC 10         sub     esp, 10
7C863D6C    53              push    ebx
7C863D6D    56              push    esi
7C863D6E    57              push    edi
7C863D6F    8B7D 0C         mov     edi, dword ptr [ebp+C]
7C863D72    33F6            xor     esi, esi
7C863D74    3BFE            cmp     edi, esi
7C863D76    8975 FC         mov     dword ptr [ebp-4], esi
7C863D79    0F84 86000000   je      7C863E05
7C863D7F    813F 2C020000   cmp     dword ptr [edi], 22C
7C863D85    75 7E           jnz     short 7C863E05
7C863D87    6A 04           push    4
7C863D89    56              push    esi
7C863D8A    33DB            xor     ebx, ebx
7C863D8C    43              inc     ebx
7C863D8D    53              push    ebx
7C863D8E    8D45 F8         lea     eax, dword ptr [ebp-8]
7C863D91    50              push    eax
7C863D92    8D45 F0         lea     eax, dword ptr [ebp-10]
7C863D95    50              push    eax
7C863D96    56              push    esi
7C863D97    56              push    esi
7C863D98    8D45 0C         lea     eax, dword ptr [ebp+C]
7C863D9B    50              push    eax
7C863D9C    6A FF           push    -1
7C863D9E    FF75 08         push    dword ptr [ebp+8]
7C863DA1    8975 F0         mov     dword ptr [ebp-10], esi
7C863DA4    8975 F4         mov     dword ptr [ebp-C], esi
7C863DA7    8975 F8         mov     dword ptr [ebp-8], esi
7C863DAA    8975 0C         mov     dword ptr [ebp+C], esi
7C863DAD    FF15 5412807C   call    dword ptr [<&ntdll.NtMapViewOfSe>; ntdll.ZwMapViewOfSection
7C863DB3    3BC6            cmp     eax, esi
7C863DB5    7D 03           jge     short 7C863DBA
7C863DB7    50              push    eax
7C863DB8    EB 50           jmp     short 7C863E0A
7C863DBA    8B45 0C         mov     eax, dword ptr [ebp+C]
7C863DBD    3970 04         cmp     dword ptr [eax+4], esi
7C863DC0    75 21           jnz     short 7C863DE3
7C863DC2    8B0F            mov     ecx, dword ptr [edi]
7C863DC4    83E9 04         sub     ecx, 4
7C863DC7    8BD1            mov     edx, ecx
7C863DC9    C1E9 02         shr     ecx, 2
7C863DCC    83C7 04         add     edi, 4
7C863DCF    33C0            xor     eax, eax
7C863DD1    F3:AB           rep     stos dword ptr es:[edi]
7C863DD3    8BCA            mov     ecx, edx
7C863DD5    83E1 03         and     ecx, 3
7C863DD8    6A 12           push    12
7C863DDA    F3:AA           rep     stos byte ptr es:[edi]
7C863DDC    E8 CF54FAFF     call    7C8092B0
7C863DE1    EB 12           jmp     short 7C863DF5
7C863DE3    8B70 14         mov     esi, dword ptr [eax+14]
7C863DE6    03F0            add     esi, eax
7C863DE8    B9 8B000000     mov     ecx, 8B
7C863DED    F3:A5           rep     movs dword ptr es:[edi], dword p>
7C863DEF    8958 24         mov     dword ptr [eax+24], ebx
7C863DF2    895D FC         mov     dword ptr [ebp-4], ebx
7C863DF5    FF75 0C         push    dword ptr [ebp+C]
7C863DF8    6A FF           push    -1
7C863DFA    FF15 6012807C   call    dword ptr [<&ntdll.NtUnmapViewOf>; ntdll.ZwUnmapViewOfSection
7C863E00    8B45 FC         mov     eax, dword ptr [ebp-4]
7C863E03    EB 0C           jmp     short 7C863E11
7C863E05    68 040000C0     push    C0000004
7C863E0A    E8 5C55FAFF     call    7C80936B
7C863E0F    33C0            xor     eax, eax
7C863E11    5F              pop     edi
7C863E12    5E              pop     esi
7C863E13    5B              pop     ebx
7C863E14    C9              leave
7C863E15    C2 0800         retn    8
上面的是不Patch的结果  要是Patch了
会漏过好多解码 特别是那个[00423627]的值  它是决定走向的
大大小小也脱过不少壳  竟然被这么简单的东西给整了
真不如死了!
2007-3-23 18:58
0
游客
登录 | 注册 方可回帖
返回