首页
社区
课程
招聘
[旧帖] [己解决]Armadillo脱壳后问题 0.00雪花
发表于: 2008-1-7 11:24 3156

[旧帖] [己解决]Armadillo脱壳后问题 0.00雪花

2008-1-7 11:24
3156
原程序用PEID 0.94查壳后是Armadillo 1.xx - 2.xx -> Silicon Realms Toolworks,用dilloDIE 1.6脱壳出现应用程序错误,提示“0x00403213"引用“0x015e1000"内存,该内存不能为"read"。。

没办法,只好用手工脱壳
双进程转为单进程,然后NN步找到了OEP。。
0040283C > /EB 10           JMP SHORT dumped_.0040284E    《----OEP
0040283E   |66:623A         BOUND DI,DWORD PTR DS:[EDX]
00402841   |43              INC EBX
00402842   |2B2B            SUB EBP,DWORD PTR DS:[EBX]
00402844   |48              DEC EAX
00402845   |4F              DEC EDI
00402846   |4F              DEC EDI
00402847   |4B              DEC EBX
00402848   |90              NOP
00402849  -|E9 98204300     JMP dumped_.008348E6
0040284E   \A1 8B204300     MOV EAX,DWORD PTR DS:[43208B]
00402853    C1E0 02         SHL EAX,2
00402856    A3 8F204300     MOV DWORD PTR DS:[43208F],EAX
0040285B    52              PUSH EDX
0040285C    6A 00           PUSH 0
0040285E    E8 13F50200     CALL <JMP.&kernel32.GetModuleHandleA>
00402863    8BD0            MOV EDX,EAX
用LORDPE DUMP FULL完整程序,然后用ImportREC修复,填入OEP=283C,“IAT自动搜索”,
然后“获得输入信息”,没有发现无效函数。点击修复,保存为dumped_.exe,程序运行出错。
错误信息:dumped_.exe应用程序错误,提示“0x0042d9b2"指令引用“0x40062034"内存,该内存不能为"written",然后让我点确定或者取消。。。
----------------------------------------
我用F7 F8跟踪到了这里出的问题。。不在原程序的领空里。。我就抓瞎了~
7C92EAF0    8B1C24          MOV EBX,DWORD PTR SS:[ESP]
7C92EAF3    51              PUSH ECX
7C92EAF4    53              PUSH EBX
7C92EAF5    E8 C78C0200     CALL ntdll.7C9577C1 〈---F8到达这里后出现问题了
7C92EAFA    0AC0            OR AL,AL
7C92EAFC    74 0C           JE SHORT ntdll.7C92EB0A
7C92EAFE    5B              POP EBX
7C92EAFF    59              POP ECX

我用笨办法F7一直跟到了这里
7C86346F    51              PUSH ECX
7C863470    50              PUSH EAX
7C863471    8D85 78FAFFFF   LEA EAX,DWORD PTR SS:[EBP-588]
7C863477    50              PUSH EAX
7C863478    6A 00           PUSH 0
7C86347A    6A 04           PUSH 4
7C86347C    68 440100D0     PUSH D0000144
7C863481    FF15 7812807C   CALL DWORD PTR DS:[<&ntdll.NtRaiseHardError>] --到这里就进行不下去了,好像是死循环。。
7C863487    EB 12           JMP SHORT kernel32.7C86349B
7C863489    33C0            XOR EAX,EAX
7C86348B    F6DB            NEG BL
7C86348D    1BDB            SBB EBX,EBX
7C86348F    83E3 FD         AND EBX,FFFFFFFD
7C863492    83C3 06         ADD EBX,6
7C863495    899D B0FAFFFF   MOV DWORD PTR SS:[EBP-550],EBX
7C86349B    85C0            TEST EAX,EAX
7C86349D    0F8C EE020000   JL kernel32.7C863791
7C8634A3    83BD B0FAFFFF 0>CMP DWORD PTR SS:[EBP-550],3
7C8634AA    0F85 E1020000   JNZ kernel32.7C863791
7C8634B0    803D 0C64887C 0>CMP BYTE PTR DS:[7C88640C],0
7C8634B7    0F85 DD020000   JNZ kernel32.7C86379A
7C8634BD    803D 0840887C 0>CMP BYTE PTR DS:[7C884008],0
7C8634C4    0F85 C0020000   JNZ kernel32.7C86378A
7C8634CA    33FF            XOR EDI,EDI
7C8634CC    89BD 6CFAFFFF   MOV DWORD PTR SS:[EBP-594],EDI

菜鸟寻求帮助啊。。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
汗啊。。。没有顶,不过自己刚解决了,是用ImportREC修复时RAV=48000,大小=19000,归根到底是没有获得全部的函数~

问题的解决和坛里的老大们的经验帖子是分不开的!
2008-1-7 14:19
0
游客
登录 | 注册 方可回帖
返回