首页
社区
课程
招聘
当检测不出壳的类型时,我该做些什么
发表于: 2004-6-30 00:33 8442

当检测不出壳的类型时,我该做些什么

2004-6-30 00:33
8442
我确实不懂这些
但哦想学习:)
在我用fi和PD检测不出壳的类型的时候哦该作些什么?跳楼?
该看看什么文章?了解什么知识?
(OD无法加载)

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

收藏
免费 3
支持
分享
最新回复 (22)
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
2
OD无法加载?什么意思?
看来麻烦
2004-6-30 01:44
0
雪    币: 319
活跃值: (951)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
是不是PE格式哦。。。呵呵
2004-6-30 07:26
0
雪    币: 261
活跃值: (230)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
4
不好意思,我不懂这个,呵呵,但哦要学~~
我的话引起误会了
OD载入说有壳咯,但看到的全是奇怪的代码,是不是大家说的花指令呢
只要产生一个"dump"放在同一目录下,启动原程序就会提示出现严重错误,请重装
看来比调试那些可爱的汇编代码痛苦,哦觉得哦要学习一些更基础的知识,而不是脱壳的教程,所以希望大哥们给些提示:)
2004-6-30 10:56
0
雪    币: 267
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
你是不是在弄"网络电视XX"什么的??

反正他肯定判断了目录下允许存在的文件啦.

你多了个文件,当然 OVER 了.
2004-6-30 11:12
0
雪    币: 267
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
要学基础知识,建议多看看<加密与解密>

还不行->计算机系统原理->汇编手册->....

不知道你到底如何.

多泡泡论坛吧.
2004-6-30 11:14
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
7
最初由 hunter_boy 发布
不好意思,我不懂这个,呵呵,但哦要学~~
我的话引起误会了
OD载入说有壳咯,但看到的全是奇怪的代码,是不是大家说的花指令呢
只要产生一个"dump"放在同一目录下,启动原程序就会提示出现严重错误,请重装
看来比调试那些可爱的汇编代码痛苦,哦觉得哦要学习一些更基础的知识,而不是脱壳的教程,所以希望大哥们给些提示:)


丢个链接,有时间的兄弟会看看的
2004-6-30 11:16
0
雪    币: 261
活跃值: (230)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
8
2004-6-30 22:43
0
雪    币: 4833
活跃值: (2218)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
9
没有壳,VC++6.0
2004-6-30 23:08
0
雪    币: 261
活跃值: (230)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
10
用PD测的吧,但没壳为什么OD对他感冒呢????
2004-6-30 23:57
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
11
最初由 hunter_boy 发布
用PD测的吧,但没壳为什么OD对他感冒呢????


都是forgot惹的祸啦
这个东东用了仙剑加壳的,伪装VC++
VB的东东,forgot也“壳”不了啦

用OD载入程序,忽略所有异常选项。
下断:BP ZwQueryInformationProcess+0A
中断后返回

004E3493     FF95 B62F4000       call dword ptr ss:[ebp+402FB6]
004E3499     50                  push eax
004E349A     FFD6                call esi  ; ntdll.ZwQueryInformationProcess
004E349C     0BC0                or eax,eax
004E349E     75 0F               jnz short Study.004E34AF//改变标志位Z=0,使这里跳转
004E34A0     58                  pop eax
004E34A1     0BC0                or eax,eax
004E34A3     74 0D               je short Study.004E34B2
004E34A5     6A 00               push 0
004E34A7     FF95 F92E4000       call dword ptr ss:[ebp+402EF9]//OVER
004E34AD     EB 03               jmp short Study.004E34B2


现在在401000段下内存访问断点,shift+f9 会中断在004E193B处

004E193B     8807                mov byte ptr ds:[edi],al
004E193D     47                  inc edi
004E193E     01DB                add ebx,ebx
004E1940     75 07               jnz short Study.004E1949


取消所有断点
Ctrl+B 搜索16进制值:60E9  找到的第2处就是跳OEP的地方啦

004E1A8B     60                  pushad
004E1A8C     E9 5711F2FF         jmp Study.00402BE8//飞向光明之巅!:-)


00402BE8     68 882E4000         push Study.00402E88 //在这儿用LordPE完全DUMP这个进程
00402BED     E8 EEFFFFFF         call Study.00402BE0 ; jmp to offset MSVBVM60.ThunRTMain


OEP: 00002BE0	IATRVA: 00001000	IATSize: 000002C8


―――――――――――――――――――――――――――――――――
另外:程序检查主程序目录下的EXE文件,比较“霸道”,只允许有Study.exe和unins000.exe
呵呵,把004D6D14处改为JMP,程序就不多管闲事了

004D6D0B     FF15 30114000       call dword ptr ds:[<&msvbvm60.__vbaVarTstEq>]
004D6D11     66:85C0             test ax,ax
004D6D14     0F85 2A010000       jnz Study.004D6E44//jmp 004D6E44 ★
004D6D1A     B8 08800000         mov eax,8008
004D6D1F     8D55 DC             lea edx,dword ptr ss:[ebp-24]
004D6D22     8985 70FFFFFF       mov dword ptr ss:[ebp-90],eax
004D6D28     8985 60FFFFFF       mov dword ptr ss:[ebp-A0],eax
004D6D2E     8D85 70FFFFFF       lea eax,dword ptr ss:[ebp-90]
004D6D34     52                  push edx
004D6D35     8D4D B0             lea ecx,dword ptr ss:[ebp-50]
004D6D38     50                  push eax
004D6D39     51                  push ecx
004D6D3A     C785 78FFFFFF 84304>mov dword ptr ss:[ebp-88],Study.00413084 ; UNICODE "Study.exe"
004D6D44     C785 68FFFFFF 9C304>mov dword ptr ss:[ebp-98],Study.0041309C ; UNICODE "unins000.exe"
004D6D4E     FFD6                call esi
004D6D50     50                  push eax
004D6D51     8D55 DC             lea edx,dword ptr ss:[ebp-24]
004D6D54     8D85 60FFFFFF       lea eax,dword ptr ss:[ebp-A0]
004D6D5A     52                  push edx
004D6D5B     8D4D A0             lea ecx,dword ptr ss:[ebp-60]
004D6D5E     50                  push eax
004D6D5F     51                  push ecx
004D6D60     FFD6                call esi
004D6D62     8D55 90             lea edx,dword ptr ss:[ebp-70]
004D6D65     50                  push eax
004D6D66     52                  push edx
004D6D67     FF15 3C114000       call dword ptr ds:[<&msvbvm60.__vbaVarOr>]
004D6D6D     50                  push eax
004D6D6E     FF15 F0104000       call dword ptr ds:[<&msvbvm60.__vbaBoolVarNull>]
004D6D74     66:85C0             test ax,ax
004D6D77     74 45               je short Study.004D6DBE
004D6D79     B8 01000000         mov eax,1
004D6D7E     66:0345 D8          add ax,word ptr ss:[ebp-28]
004D6D82     0F80 39010000       jo Study.004D6EC1
004D6D88     8945 D8             mov dword ptr ss:[ebp-28],eax
004D6D8B     E9 F6FDFFFF         jmp Study.004D6B86
2004-7-1 01:58
0
雪    币: 319
活跃值: (951)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
12
不得不叫你一声“壳神”
2004-7-3 08:59
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
pf fly
2004-7-3 10:45
0
雪    币: 261
活跃值: (230)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
14
原来壳有这样的
这是哦看到的对哦最有益的一篇,呵呵:p
非常感谢fly大哥
不过哦有一个疑问
“下断:BP ZwQueryInformationProcess+0A”
哦印象中好象见过她许多次,为什么她是切入点,有什么特别的作用没?
“Ctrl+B 搜索16进制值:60E9 ”
60E9是在堆栈里看到的吗??

得到大哥们的帮助,哦又有继续学下去的勇气了:)
2004-7-8 09:53
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
15
在进入主程序后下断:BP ZwQueryInformationProcess+0A
不修改返回值程序会自动退出的

在左上角的反汇编窗口里Ctrl+B 搜索16进制值
即:pushad、jmp
2004-7-8 12:53
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
佩服万分啊,好久不来这里,确实出了些高手了,自佩不如呀!
本人又该好好学习起来了!!
2004-7-8 15:12
0
雪    币: 250
活跃值: (160)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
zdd
17
又学一招
2004-7-8 21:49
0
雪    币: 261
活跃值: (230)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
18
哦已照着fly大哥的实践了~~~K.O.
改一处就可以用了,虽然是未注册地
但看看作者的申明,哦就只能说这么多了
谢谢大哥们咯
2004-7-12 16:31
0
雪    币: 239
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
fly,join Unpacking God or LUCiD now.
Waiting for you.
2004-7-12 16:36
0
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
20
最初由 dINO 发布
fly,join Unpacking God or LUCiD now.
Waiting for you.

Are you a member of UG200X?
I remembered there is only one chinese in the group...
is it possible that you are SAC?:D
2004-7-12 19:56
0
雪    币: 14
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
Oh my god! Don't take our "fly" away,he's my idol !!!:D
2004-7-13 16:51
0
雪    币: 261
活跃值: (230)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
22
总结一下
=================================================================================================================
这是一个VB程序,有MD5,OD看了半天,头晕~~~~~~不过可以知道你写入的试炼码放在同目录的System.ini中,这倒是很仁慈哦,看来是启动读取ini

文件检测试炼码咯.
用SmartCheck 6.2来搞定~~~~~
第一次用,别见笑

=========================================================================================
参考:
Mid(VARIANT:String:"abcdefg", long:1, VARIANT:Integet:1)
解释:
从位置1得到字符串"abcdefg"第一个字符。
点击上面的 "+"号寻找 SysAllocStringByteLen
如. SysAllocStringByteLen(LPSTR:004103F0, DWORD:00000002) returns LPVOID:410434
解释:
"a"将被复制到内存00410434
它后面通常跟随 __vbaStrVarVal(VARIATN:String"a") returns DWORD:410434
Asc(String:"T") returns Integer:84
解释:
得到“T”的ASCII码十进制 84
SysFreeString(BSTR:004103F0)
解释:
释放内存位置:004103F0
这些对我们特别有用,因为当你点击它们,看右边窗口,你将看到被释放的字符串。此时正确的序列号和密码有可能在此。
__vbaVarCat(VARIANT:String:"aa", VARIANT:String:"bb") returns DWORD:63F974
解释:
连接 "bb" 和"aa"形成"aabb"
__vbaFreeVar(VARIANT:String:"abcdefg")
点击 "+"寻找SysFreeString
例. SysFreeString(BSTR:0041035C)
解释:
从内存 0041035C释放 "abcdefg"
这儿,点击这行在右边有可能发现你所要的东西。
==========================================================================================
载入后看到有12个Thread,12线程??展开Thread 0 | _Timer | _Load
OK,看看程序做了些什么...不断往下拉你会看到一串Asc-Mid,程序在载入机器码662201349941,注意了,现在慢慢往下看,你会发现一大串

Double-->Long ,哦是菜虫,不知道那是怎么回事,也许是MD5的运算哦,好的,注意结束的一个Mid,你会发现运算结果

4D0505284AC5049B4167EB7EBFE0791B,OK,将其写入System.ini,在这里展开(Show All Events),发现其实是4D050528,4AC5049B,
4167EB7E,BFE0791Bl四组数字连接而成,在Mid下面的_vbaStrVarMove 中提供了一串数字哦:7EB7EBFE,再往下看你会发现4AC5049B和7EB7EBFE的

比较,好的我们来将他们组合一下将结果写入System.ini中:Serial=4D0505287EB7EBFE4167EB7EBFE0791B 提示(已注册),好的,看看有什么内

容,~~~~提示"只有注册用户可用"...看来还有变化,SC载入,出现提示后停下来,找到最近的Mid,OK,展开发现4167EB7E和BFB53FDF的比较,呵呵

,修改先~~~~~,结果写入System.ini ,看看阅读理解的答题卡~~~提示"只有注册用户可用",呵呵已有心理准备~~,SC载入,出现提示后停下来,

找到最近的Mid,你会发现4D050528和5E9522D9的比较,最后一个_Click展开找到最近的Mid,你会发现BFE0791Bl和" "的比较,看来试炼码不够长,

加入*Cracked by Hunter_Boy*修改写入,发现是和r_Boy*进行比较,呵呵,修改先~~~~~还有两处雷同!!~~搞定
==========================================================================================
*********************************************************************************
总之先找到一连串Double-->Long,往下找到一组Mid--Len--GetPrivateProfileStringA--LSet--Mid--LSet--Left--Left ,选中最后两个Left可

以分别看到试炼码和注册码 ^_^~!

机器码662201349941
  1  产生 F16F5E9522D90F5D6CA5332B4BC9FA24 , 标识5E9522D9
              ^^^^^^^^               ==============>|   
  2  产生 4D0505284AC5049B4167EB7EBFE0791B , 标识7EB7EBFE
                             ^^^^^^^^==============>|
  3  产生 3871BD64012152BFB53FDF04B401193F , 标识BFB53FDF
                        ^^^^^^^^     ==============>|   
  4  产生 C81E728D9D4C2F636F067F89CC14862C , 标识36F067F8
                         ^^^^^^^^    ==============>|   
  5  产生 96A3BE3CF272E017046D1B2674A52BD3 , 标识46D1B267
                           ^^^^^^^^  ==============>|  
  6  产生 757B505CFD34C64C85CA5B5690EE5293 , 标识4C64C85C
                     ^^^^^^^^        ==============>|   
====>组合替换               
BFB53FDF-->开启菜单功能
7EB7EBFE-->启动检测(窗口提示已注册)
5E9522D9-->启动答题卡功能检测
4C64C85C-->开启答题卡功能
36F067F8-->开启注释功能
46D1B267-->开启记录功能

结果
机器码662201349941
Serial=5E9522D97EB7EBFEBFB53FDF36F067F846D1B2674C64C85C^_^*Cracked by Hunter_Boy*
**********************************************************************************
另外有些疑问想问问大家,
1.SmartCheck 在98下用还好,产生的文件只有6MB,而我在XP下使用时要载入好久好久,它发现的ProEvent(1009900)太多了~~~~~产生了87MB之多

,不知道是为什么?
2.它的ErrorDetection中Leaks和API and OLE...的扩展项是起什么作用的,是否要勾上?
3.参考中的Mid显示出了参数:Mid(VARIANT:String:"abcdefg", long:1, VARIANT:Integet:1) ,而我在用时只显示了Mid~~~
4.Erase,LSet,Left,Right 这些是做什么用的,为什么也只是孤单的显示在那而没有参数?
5.对于VB还有什么工具可以用的上?
6.检测说这个程序中有MD5,它用来做了什么些工作??

还有一个检测壳的问题
fly大哥是如何知道这个程序是 仙剑加壳 的,是经验还是有什么特点可以用来作为识别的标记,或是其他...?
=================================================================================================================
2004-8-17 17:20
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
23
应该算是经验吧
以前脱过仙剑
2004-8-17 17:22
0
游客
登录 | 注册 方可回帖
返回
//