首页
社区
课程
招聘
[原创]ty123 Reverseme 2 (适合新手练习)
2007-2-10 10:53 5260

[原创]ty123 Reverseme 2 (适合新手练习)

2007-2-10 10:53
5260
======== ty123 Reverseme 2 ========

作者:ty123[DFCG]

邮件:soy_ty123@163.com

语言:Win32汇编语言

难度:1/10

适用的操作平台:WinXP/Win2K

文件:       
        - ty123 Reverseme2.exe
        - RSM02.dll
        - Readme.txt

规则:
        - RSM02.dll中有一个函数,将他找出来并起作用
        - 允许修改RSM02.dll文件
        - 不允许修改ty123 Reverseme2.exe(实际上也没那个必要)
        - 编写Reverse教程

说明:
        - Kanxue老大说坛子里Reverseme较少,于是写了这个Reverseme 2
        - Reverseme 2适合初学者练习
        - 其他说明请点击程序About按钮查看

致谢:
        - DFCG的老大“我要”及全体成员
        - Kanxue及论坛的道友们
        - 流动的情感、yugung等大侠关注并破解“ty123 Crackme5”
        - netwind、dewar等大侠关注并破解“ty123 Crackme6”
        - 流动的情感等大侠关注并破解“ty123 Crackme4 -CPN Augur”

ty123

2007年2月10日

Reverseme2暂时放在:
http://crackmes.ys168.com

烦请那位大侠传在这里,谢谢!

PS: 坛子里喜欢玩Crackme、Keygenme和Unpackme人较多,玩Reverseme的道友就少一些了,为什么呢?套用《手机》电影的一句四川方言台词:麻~~烦~~,呵呵。个人以为,初学者从Crackme、Keygenme入手是对的,经过一定的磨练,应该玩玩Reverseme,这样对自己PEDIY技能的提升很有好处。

看到Reverseme1响应者寥寥(客观地说与Reverseme2相比,Reverseme1要难一些),多罗嗦了两句,还请各位大侠见谅。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 7
打赏
分享
最新回复 (4)
雪    币: 220
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
yugung 1 2007-2-10 11:04
2
0
local:
上传的附件:
雪    币: 383
活跃值: (41)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
小娃崽 13 2007-2-10 18:58
3
0
这个容易,非常适合刚入门的...
00401072   .  68 AB214000   push    004021AB                         ; /FileName = "RSM02.dll"; Case 3EA of switch 0040104E
00401077   .  E8 86000000   call    <jmp.&kernel32.LoadLibraryA>     ; \LoadLibraryA
0040107C   .  91            xchg    eax, ecx
0040107D   .  E3 27         jecxz   short 004010A6
0040107F   .  890D 04304000 mov     dword ptr [403004], ecx
00401085   .  68 B5214000   push    004021B5                         ; /ProcNameOrOrdinal = "RSM_MSG"
0040108A   .  FF35 04304000 push    dword ptr [403004]               ; |hModule = NULL
00401090   .  E8 67000000   call    <jmp.&kernel32.GetProcAddress>   ; \GetProcAddress
00401095   .  85C0          test    eax, eax
00401097   .  74 14         je      short 004010AD
00401099   .  A3 08304000   mov     dword ptr [403008], eax
0040109E   .  FF15 08304000 call    dword ptr [403008]

可以看出缺少RSM_MSG
用WINHEX查看RSM02.dll的导出表,发现做了手脚,修改一下即可!

Characteristics
00000000
TimedateStamp
F72ACD45
majorVersion
0000
minirversion
0000
name
88200000
base
00000001
NumerOfFunctions-------------->改成1
00000000
NumberOfnames----------------->改成1
00000000
AddressOfFunctions------------>改成(10210000)文件偏移710处------>填入10cc
88200000
Addressofnames---------------->改成E0200000(文件偏移6e0)--6E0处填入F0200000(也就是文件6F0偏移)----》填RSM――MSG
88200000
AddressOfnameoridinals--------->改成86200000,让他对应0即可
88200000

然后保存。。。。
===================想付上图片的,发现编辑了才出现浏览对话框,点击保存修改还是没有看到图片,奇怪哦~!
雪    币: 242
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
老神树 2007-2-11 18:06
4
0
首先祝贺小娃崽完成Reverseme2!

这个容易,非常适合刚入门的...

是的,可能Reverseme1对于新手稍难了一些,于是写了这个Reverseme2


NumerOfFunctions-------------->改成1
00000000
NumberOfnames----------------->改成1
00000000
AddressOfFunctions------------>改成(10210000)文件偏移710处------>填入10cc
88200000
Addressofnames---------------->改成E0200000(文件偏移6e0)--6E0处填入F0200000(也就是文件6F0偏移)----》填RSM――MSG
88200000
AddressOfnameoridinals--------->改成86200000,让他对应0即可
88200000


我们的教程是写给新手学习的,您应该讲清楚:

1、NumerOfFunctions为什么要改成1?NumerOfFunctions位置在哪里?怎么找?
2、AddressOfFunctions为什么要改成(10210000)文件偏移710处------>填入10cc?另外,这个10CC对吗?
3、“填RSM――MSG”可以吗?
4、......

以上只是个人看法,不对之处请您原谅。
雪    币: 383
活跃值: (41)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
小娃崽 13 2007-2-11 20:37
5
0
纠正一下:
2、AddressOfFunctions为什么要改成(10210000)文件偏移710处------>填入10cc?另外,这个10CC对吗?
///////////////////////////////////////////////////////////////应该是100C!对应的就是0C100000这样

3、“填RSM――MSG”可以吗?
//////////////应该是RSM_MSG

从WINHEX复制不到记事本当中,所以自己不小心出现了这样的错误
要讲清楚嘛。。。。。其实我也是边拿着书边对照你的dll文件进行学习的。。书上书说的我一时也理解不了的,又对照其他的dll文件进行对比才有感觉的拉~~~

/////////////////////////////
我把自己改好的dll文件再传上来吧,省得自己不小心又输错又给你闹笑话了,
因为程序是用LoadLibrary装入,所以我估计,可以直接用改好的替换掉
上传的附件:
游客
登录 | 注册 方可回帖
返回