首页
社区
课程
招聘
这是啥壳,很怪,有经验的人给点提示好么?
发表于: 2005-2-7 13:18 4660

这是啥壳,很怪,有经验的人给点提示好么?

2005-2-7 13:18
4660
1.
0052B049 >/$  55            PUSH EBP
0052B04A  |.  8BEC          MOV EBP,ESP
0052B04C  |.  6A FF         PUSH -1
0052B04E  |.  68 48025500   PUSH 梦幻宝宝.00550248
0052B053  |.  68 90AA5200   PUSH 梦幻宝宝.0052AA90                       ;  SE handler installation
0052B058  |.  64:A1 0000000>MOV EAX,DWORD PTR FS:[0]
0052B05E  |.  50            PUSH EAX
0052B05F  |.  64:8925 00000>MOV DWORD PTR FS:[0],ESP
0052B066  |.  83EC 58       SUB ESP,58
0052B069  |.  53            PUSH EBX
0052B06A  |.  56            PUSH ESI
0052B06B  |.  57            PUSH EDI
0052B06C  |.  8965 E8       MOV DWORD PTR SS:[EBP-18],ESP
0052B06F  |.  FF15 30D15400 CALL DWORD PTR DS:[<&KERNEL32.GetVersion>;  kernel32.GetVersion
,,,,,,<<<<<<<< 像arm 但BP WaitForDebugEvent Bp OpenMutexA,都断不下来,是单进程的

2.内存镜像,项目 24
地址=00519000
大小=00002000 (8192.)
Owner=梦幻宝宝 00400000
区段=.aspack
类型=Imag 01001002
访问=R
初始访问=RWE

开始怀疑是aspack,但看看aspack的教程,没发现入口像arm的,埃,试试striper, 和,aspackDie都脱不掉。

然后自己手动了一下,能找到oep dump,但是iat加密了,这可不象压缩壳aspack,那么是什么壳呢


有经验的人给点提示好么?

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
2
没 壳 吧
2005-2-7 13:42
0
雪    币: 257
活跃值: (56)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
3
最初由 forgot 发布
没 壳 吧

  Peid 检查为arm 1.xx-2.xx

fuckall附加时出现
---------------------------
FuckALL.exe - 应用程序错误
---------------------------
"0x044d1292" 指令引用的 "0x000003ac" 内存。该内存不能为 "read"。

要终止程序,请单击“确定”。
要调试程序,请单击“取消”。
---------------------------
确定   取消   
---------------------------

用fackall.exe启动,扫描不到中文

扫描出了这个:
00522154   .  68 E4D45400   PUSH 梦幻宝宝.0054D4E4                       ;  ASCII "%X::DA%08X"
00522159   .  8D8D D8FEFFFF LEA ECX,DWORD PTR SS:[EBP-128]
0052215F   .  51            PUSH ECX
00522160   .  E8 2C870000   CALL 梦幻宝宝.0052A891
00522165   .  83C4 10       ADD ESP,10
00522168   .  8D95 D8FEFFFF LEA EDX,DWORD PTR SS:[EBP-128]
0052216E   .  52            PUSH EDX                                 ; /MutexName
0052216F   .  6A 00         PUSH 0                                   ; |Inheritable = FALSE
00522171   .  68 01001F00   PUSH 1F0001                              ; |Access = 1F0001
00522176   .  FF15 50D05400 CALL DWORD PTR DS:[<&KERNEL32.OpenMutexA>; \OpenMutexA
0052217C   .  85C0          TEST EAX,EAX
0052217E   .  0F85 6D020000 JNZ 梦幻宝宝.005223F1
00522184   .  6A 01         PUSH 1                                   ; /Priority = THREAD_PRIORITY_ABOVE_NORMAL
00522186   .  FF15 38D15400 CALL DWORD PTR DS:[<&KERNEL32.GetCurrent>; |[GetCurrentThread
0052218C   .  50            PUSH EAX                                 ; |hThread
0052218D   .  FF15 3CD15400 CALL DWORD PTR DS:[<&KERNEL32.SetThreadP>; \SetThreadPriority
00522193   .  C685 58F9FFFF>MOV BYTE PTR SS:[EBP-6A8],0
0052219A   .  68 F0D45400   PUSH 梦幻宝宝.0054D4F0                       ; /FileName = "Kernel32"
0052219F   .  FF15 48D15400 CALL DWORD PTR DS:[<&KERNEL32.LoadLibrar>; \LoadLibraryA
005221A5   .  8985 54F9FFFF MOV DWORD PTR SS:[EBP-6AC],EAX
005221AB   .  83BD 54F9FFFF>CMP DWORD PTR SS:[EBP-6AC],0
005221B2   .  74 32         JE SHORT 梦幻宝宝.005221E6
005221B4   .  68 FCD45400   PUSH 梦幻宝宝.0054D4FC                       ; /ProcNameOrOrdinal = "IsDebuggerPresent"
005221B9   .  8B85 54F9FFFF MOV EAX,DWORD PTR SS:[EBP-6AC]           ; |
005221BF   .  50            PUSH EAX                                 ; |hModule
005221C0   .  FF15 50D15400 CALL DWORD PTR DS:[<&KERNEL32.GetProcAdd>; \GetProcAddress
005221C6   .  8985 BCF8FFFF MOV DWORD PTR SS:[EBP-744],EAX
005221CC   .  83BD BCF8FFFF>CMP DWORD PTR SS:[EBP-744],0
005221D3   .  74 11         JE SHORT 梦幻宝宝.005221E6
005221D5   .  FF95 BCF8FFFF CALL DWORD PTR SS:[EBP-744]
005221DB   .  85C0          TEST EAX,EAX
005221DD   .  74 07         JE SHORT 梦幻宝宝.005221E6
005221DF   .  C685 58F9FFFF>MOV BYTE PTR SS:[EBP-6A8],1
005221E6   >  C785 C0F8FFFF>MOV DWORD PTR SS:[EBP-740],94
005221F0   .  8D8D C0F8FFFF LEA ECX,DWORD PTR SS:[EBP-740]
005221F6   .  51            PUSH ECX                                 ; /pVersionInformation
005221F7   .  FF15 40D15400 CALL DWORD PTR DS:[<&KERNEL32.GetVersion>; \GetVersionExA

2005-2-7 13:47
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
4
Armadillo + ASPack
里面是ASPack,使得脱壳变得很容易

忽略所有异常
在401000段设置内存写入断点
shift+f9

00519115     C607 C3             mov byte ptr ds:[edi],0C3
//中断这里
00519118     FFD7                call edi

F4至下面
00519278     BE B0B70C00         mov esi,0CB7B0
//输入表RVA
0051927D     8B95 22040000       mov edx,dword ptr ss:[ebp+422]
00519283     03F2                add esi,edx
00519285     8B46 0C             mov eax,dword ptr ds:[esi+C]
00519288     85C0                test eax,eax
0051928A     0F84 0A010000       je 梦幻宝宝.0051939A

在00519278处时Dump进程

0051939A     B8 F6160300         mov eax,316F6
//OEP RVA
0051939F     50                  push eax
005193A0     0385 22040000       add eax,dword ptr ss:[ebp+422]
005193A6     59                  pop ecx
005193A7     0BC9                or ecx,ecx
005193A9     8985 A8030000       mov dword ptr ss:[ebp+3A8],eax
005193AF     61                  popad
005193B0     75 08               jnz short 梦幻宝宝.005193BA
005193B2     B8 01000000         mov eax,1
005193B7     C2 0C00             retn 0C
005193BA     68 00000000         push 0
005193BF     C3                  retn
//飞向光明之点巅!

修改OEP RVA、输入表RVA、重建PE
OK
2005-2-7 15:14
0
雪    币: 258
活跃值: (230)
能力值: ( LV12,RANK:770 )
在线值:
发帖
回帖
粉丝
5
大F哥就是N。。。
咋看不到附件/
2005-2-7 16:42
0
雪    币: 257
活跃值: (56)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
6
谢谢fly! 尝试中!
送上附件!
大家一起学习^_^

http://www.mhby.net/Soft/ShowSoftDown.asp?UrlID=1&SoftID=10
2005-2-7 17:39
0
雪    币: 257
活跃值: (56)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
7
我有几个问题
1。是不是差不多每个arm+asp都能这样dump
2.dump为啥么不在oep出dump,在文中的地方dump后就直接重建pe还是修复后再重建,为什么?有什么区别?
3。获取import table后无效函数有4,5个,全部cut?(我cut后修复不能运行)还是等级1追踪?
2005-2-7 18:06
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
8
《加密与解密2》AsPack脱壳
2005-2-7 18:08
0
雪    币: 257
活跃值: (56)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
9
ok!
looking!
2005-2-7 18:10
0
雪    币: 257
活跃值: (56)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
10
加密解密一知半解的看了,他说的方法我没用(好像比我的简单)
我是这样地,oep处 get import table,把无效的按照dump出来到的import table手工修复了一遍,竟然运行了
哈~
但是有几个问题

1.importREC抓取的函数跟dump出文件的有点区别
如:importREC中的事 xxx,但dump出的中的是 xxxA  这个我没修复,一样能运行,怪!
2.为啥importREC不能完全抓取?
3.你dump的是3.1.3版,内存断点断的下来,为啥3.1.2就不行了?加的壳变了?
2005-2-7 19:02
0
雪    币: 257
活跃值: (56)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
11
我的方法脱壳不完全,很多功能不能用。。。。
2005-2-7 19:32
0
雪    币: 257
活跃值: (56)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
12
怎么判断dump时机?
2005-2-7 19:47
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
13
先把看雪书上的例子吃透
P392
自己多动手
2005-2-7 20:01
0
游客
登录 | 注册 方可回帖
返回
//