首页
社区
课程
招聘
[原创]Themida.V1.9.1.0 手脱XP记事本笔记
发表于: 2008-1-8 20:23 12159

[原创]Themida.V1.9.1.0 手脱XP记事本笔记

2008-1-8 20:23
12159

【文章标题】: Themida.V1.9.1.0 手脱XP记事本笔记
【文章作者】: 笨虫虫
【作者邮箱】: [email=dm_bcc@hotmail.com]dm_bcc@hotmail.com[/email]
【软件名称】: NOTEPAD.exe
【加壳方式】: Themida.V1.9.1.0
【保护方式】: 代码变形 iat加密  oep偷取
【编写语言】: Microsoft Visual C++ 7.0 Method2 [Debug]
【使用工具】: OllyICE(Hideod 0.17) LordPE ImportREC
【操作平台】: 盗版XP SP2
【作者声明】: Themida手脱教程太少,写来玩玩。失误之处敬请诸位大侠赐教!
【详细过程】:
1.首先查壳:Themida/WinLicense V1.8.X.X+-V1.9.X.X   -> Oreans Technologies   * Sign.By.dm_bcc *
好了,OD 载入 ,忽略所有异常,用Hideod 插件隐藏OD!


01014014 > B8 00000000 mov eax,0 -> Themida/WinLicense V1.8.X.X+-V1.9.X.X 入口
01014019 60 pushad
0101401A 0BC0 or eax,eax
0101401C 74 68 je short NOTEPAD.01014086
0101401E E8 00000000 call NOTEPAD.01014023
01014023 58 pop eax
01014024 05 53000000 add eax,53
01014029 8038 E9 cmp byte ptr ds:[eax],0E9
0101402C 75 13 jnz short NOTEPAD.01014041
0101402E 61 popad
0101402F EB 45 jmp short NOTEPAD.01014076
01014031 DB2D 37400101 fld tbyte ptr ds:[1014037]

01119D6B F3:A4 rep movs byte ptr es:[edi],byte ptr ds:[esi]->在这里我们用F7+F8运行程序
01119D6D C685 45217409 56 mov byte ptr ss:[ebp+9742145],56
01119D74 68 396D1FD4 push D41F6D39
01119D79 FFB5 DD257409 push dword ptr ss:[ebp+97425DD]
01119D7F 8D85 A1C67709 lea eax,dword ptr ss:[ebp+977C6A1]

011287F5 8913 mov dword ptr ds:[ebx],edx ; comdlg32.PageSetupDlgW ->停到这里
011287F7 5B pop ebx
011287F8 5A pop edx
011287F9 F9 stc
011287FA AD lods dword ptr ds:[esi]
011287FB 60 pushad
011287FC 60 pushad
011287FD 0FB7FB movzx edi,bx
01128800 81D1 96A16064 adc ecx,6460A196
01128806 61 popad
01128807 66:B9 3E29 mov cx,293E
0112880B 61 popad

01128A90 803F 90 cmp byte ptr ds:[edi],90 ; 比较要写的CALL地址数据是不是NOP
01128A93 0F84 2B000000 je NOTEPAD.01128AC4
01128A99 F5 cmc
01128A9A 50 push eax
01128A9B B8 05000000 mov eax,5
01128AA0 01C7 add edi,eax
01128AA2 8B0424 mov eax,dword ptr ss:[esp]
01128AA5 83C4 04 add esp,4
01128AA8 FC cld
01128AA9 E9 E5010000 jmp NOTEPAD.01128C93
01128AAE FC cld
01128AAF E9 10000000 jmp NOTEPAD.01128AC4
01128AB4 D6 salc
01128AB5 81C2 4EA6589A add edx,9A58A64E

01006428 833D ACA40001 00 cmp dword ptr ds:[100A4AC],0
0100642F 75 40 jnz short NOTEPAD.01006471
01006431 800D B1A40001 04 or byte ptr ds:[100A4B1],4
01006438 68 A0A40001 push NOTEPAD.0100A4A0
0100643D 90 nop
0100643E 90 nop
0100643F 90 nop
01006440 90 nop
01006441 90 nop
01006442 90 nop
原版
01006428 /$ 833D ACA40001 00 cmp dword ptr ds:[100A4AC],0
0100642F |. 75 40 jnz short NOTEPAD?01006471
01006431 |. 800D B1A40001 04 or byte ptr ds:[100A4B1],4
01006438 |. 68 A0A40001 push NOTEPAD?0100A4A0
0100643D |. FF15 C4120001 call dword ptr ds:[<&comdlg32.PageSetupDlgW>] ; comdlg32.PageSetupDlgW

01128B77 AA stos byte ptr es:[edi] ; 把E8也就是CALL放入程序地址
01128B78 60 pushad
01128B79 BE 37D29C76 mov esi,769CD237
01128B7E 0F81 02000000 jno NOTEPAD.01128B86
01128B84 8BF1 mov esi,ecx
01128B86 61 popad
01128B87 E9 11000000 jmp NOTEPAD.01128B9D

01128C8D AB stos dword ptr es:[edi] ; 把API的地址写入到程序中
01128C8E 60 pushad
01128C8F 0FB7C0 movzx eax,ax
01128C92 61 popad
01128C93 AD lods dword ptr ds:[esi]
01128C94 60 pushad
01128C95 0F83 06000000 jnb NOTEPAD.01128CA1
01128C9B 0F84 00000000 je NOTEPAD.01128CA1

01125CD3 FC cld
01125CD4 FF85 2D327409 inc dword ptr ss:[ebp+974322D]
01125CDA 60 pushad
01125CDB 52 push edx
01125CDC E8 0F000000 call NOTEPAD.01125CF0;
01125CE1 43 inc ebx
01125CE2 D222 shl byte ptr ds:[edx],cl
01125CE4 3F aas
01125CE5 0C B7 or al,0B7

0112647F 89E6 mov esi,esp
01126481 81C6 04000000 add esi,4
01126487 83C6 04 add esi,4
0112648A 873424 xchg dword ptr ss:[esp],esi
0112648D 5C pop esp
0112648E 60 pushad
0112648F E8 11000000 call NOTEPAD.011264A5 ->杀进
01126494 CE into
01126495 AF scas dword ptr es:[edi]
01126496 CF iretd

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 7
支持
分享
最新回复 (20)
雪    币: 113
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
沙发!哈!研究研究
2008-1-8 20:38
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
研究研究……
2008-1-8 21:11
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
标记下学习,感谢!
2008-1-8 21:50
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
真好直得研究研究
2008-1-8 23:53
0
雪    币: 88
活跃值: (95)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
楼主能提供记事本就好了……
2008-1-9 11:45
0
雪    币: 226
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
记事本,已经放上。
2008-1-9 13:25
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
谢谢楼主,找了好久,手脱是最好的,
2008-1-9 13:47
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
晕了,我忽略了所有异常后,对代码段进行了设置内存断点,按shift+f9来到的不是楼主的地方呀
2008-1-9 13:53
0
雪    币: 191
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
我也跟踪了一款程序,是1.9.2加的密,程序到了一句SYS???的时候,就跑了,我没有办法了,楼主帮助下啊,谢谢!!
2008-1-9 22:01
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
这个要学习。。。
呵呵
2008-1-10 01:29
0
雪    币: 301
活跃值: (300)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
12
还没玩过tmd的壳,收藏一份学习之
2008-1-10 15:56
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
不错,学习一下。
2008-1-10 19:16
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
终于找到手脱的了!
2008-1-10 19:47
0
雪    币: 239
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
请问一下楼主ZwFreeVirtualMemory函数断点,是怎么判断出来的啊。
中间经过什么样的分析才能得出这样的结论。我想不通?
2008-1-11 15:35
0
雪    币: 226
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
你自己用F7+F8自己慢慢调试运行看。什么东西都是要我帮你做出判断,你还来学什么
2008-1-18 11:05
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
学习学习~~~
2008-1-18 11:42
0
雪    币: 112
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
哇,写得真好,就是难了点,正好 学习学习
2008-1-20 15:42
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
楼主,为什么我到01119D6B    F3:A4                 rep movs byte ptr es:[edi],byte ptr ds:[esi]//F7+F8   OD就提示运行??有谁可以帮忙解释一下??
2008-1-20 22:22
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
文章很不错,就是LZ在忽悠大家-----01007568记得此地址,修复oep要用上 修复OEP(1)
变成了OEP:739d  笔误, 还是只是。。。。。。。。。。。。欢迎来个说法
2008-3-7 22:29
0
雪    币: 53
活跃值: (80)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
谢谢提供怎么好的东西
2008-3-8 08:10
0
游客
登录 | 注册 方可回帖
返回
//