网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
11月18日漏签0天
吾爱破解吧 关注:146,259贴子:230,884
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 9回复贴,共1页
<<返回吾爱破解吧
>0< 加载中...

Awave Studio v7.0的破解之SMC---

  • 只看楼主
  • 收藏

  • 回复
  • lkou
  • 禁止有偿
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
标 题:Awave Studio v7.0的破解之SMC--- C-pen
发信人:1212
时 间:2000-12-8 14:42:19
详细信息:
一. 前言: 用SMC去破解ASProtect的保护实在是一种痛苦的事,不过既然有人有兴趣,那我们就来谈谈吧!在底下的文章,我将假设读者已对ASProtect的保护有初步的了解,也跟踪过它,对SMC的技巧有概念,最后先申明一点,因为ASProtect的多层次压缩,所以你要用SMC的话,一定会很繁杂的,希望你有耐心看完并实作,也希望本文能对你有所帮助。
二. 使用工具: (1)Soft-ICE V.4.01 (2)FrogICE (3)16进位编辑器(建议使用Hex workshop和Hiew(方便除错))
三. 本文:
1. ASProtect的保护机制:
(1) 动态位址: 我们要用SMC首先要克服的就是ASProtect的Relocation,它每次运行 的位址都不一样,而我们的Code是不会变动的,故你必须先了解ASProtect是如何Relocation的,答案是ASProtect调用GetTickCount函数,拿其值去当IMAGE_RELOCATION结构中的RelocCount成员,读者有兴趣可以去查阅IMAGE_RELOCATION结构的相关资讯及编程,在此不加详述。其程式码如下:
EAX=GetTickCount
25FFFF0100 AND EAX,0001FFFF
EB04 JMP 0051722F
我们改为:
B811110100 MOV EAX,00011111
EB04 JMP 0051722F
如此RelocCount就会是一个常数,用Hex workshop 打开Awave.exe寻找
25FFFF0100EB04 <-- 将是唯一
改B811110100EB04
如此位址就会固定,不再是变动的了。
(2)多层次压缩:
A..ASProtect的程式码 <--我们称为第一层,这是可以用16进位编辑器直接修改的 地方
B. 解压部份代码 <-- 第二层
C. 解压部份代码 <-- 第三层
D. 利用第三层代码解压第四层代码 <-- 第四层亦就是ASProtect,Anti-Debugger,
CRC Check,Time Limit,NagScreen等….的地方
E. 利用第四层代码解压主程式代码,Import Table加密等 <-- 第五层
如此层层相扣,不要说它在Import Table作手脚,如此多层次的压缩,你要用内存补丁(指在有Soft-ICE的环境下) 机乎很难工作。
(3)首先我们要对付的是ASProtect的保护:
这个软体有3种,Anti-Debugger,BoundsCheck,CRC Check
[Anti-Debugger]:
:005D6184 CALL 005D60D4 <--\\.\SIWDEBUG
:005D6189 TEST AL,AL
:005D618B(753A) JNZ 005D61C7 <-- NOP
:005D618D CALL KERNEL32!GetLastError
:005D6192 CMP EAX,02
:005D6195(7530) JNZ 005D81C7 <-- NOP
:005D6197 MOV EAX,[005DC878]
:005D619C CALL 005D60D4 <-- \\.\SICE
:005D61A1 TEST AL,AL
:005D61A3(7522) JNZ 005D61C7 <-- NOP
:005D61A5 CALL KERNEL32!GetLastError
:005D61AA CMP EAX,02
:005D61AD(7518) JNZ 005D61C7 <-- NOP
:005D61AF MOV EAX,[005DC874]
:005D61B4 CALL 005D60D4 <-- \\.\NTICE
:005D61B9 TEST AL,AL
:005D61BB(750A) JNZ 005D61C7 <-- NOP
:005D61BD CALL KERNEL32!GetLastError
:005D61C2 CMP EAX,02
:005D61C5(7413) JZ 005D61DA <-- JMP
[BoundsCheck]:
:005D6234 MOV EBP,4243484B
:005D6239 JMP 005D623D



  • lkou
  • 禁止有偿
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
:005D623D MOV AX,0004
:005D6241 JMP 005D6244
:005D6244 INT 3
我们只要改EBP的值,就能ByPass BoundsCheck
改:005D6235 4B --> 12
[CRC Check]:
:005D633E MOV EAX,[EBP-14]
:005D6341 CMP EAX,[EBP-10]
:005D6344 JZ 005D6389
改:005D6344 7443 --> EB43
以上就是ASProtect保护的代码,若你要一个一个的改,可能要改很多Bytes,既然它最 终是要跳至005D6389我们何不来个乾坤大挪移让它一次跳的够
改:005D618B E9F9010000 JMP 005D6389
[改主程式的地方]:
找接近OEP的地方来Modify主程式(此时主程式的代码已被解压)我找到这个:
:005D607D 8B45F8 MOV EAX,[EBP-08]
:005D6080 EB02 JMP 005D6084
刚好5个BYTES正好符合我们做远程跳跃
(4) SMC开始:
终於到了最重要亦是最痛苦的时刻了,希望大家能坚持下去,首先我们还须做个工作,就是找个地方(要够大)来放我们的Code,我们找ASProtect主程式的Section
Section VS VA RS RO
----------------------------------------------------
Y38d5x 29000 157000 28800 5FE00
我找到 OffSet : 60B00
载入时位址:00557D00
这地方有大量已初值化的00 00供我们使用,Thanks ASProtect!
(A)利用第四层Modify主程式:
主程式的破解改法,我们采用Superboss的改法,维持文章的一贯性
改:004A486D 40 --> 33
还记得先前我们找到的修改主程式的地方吧!
:005D607D 8B45F8 MOV EAX,[EBP-08]
:005D6080 EB02 JMP 005D6084
改:005D607D E97E1CF8FF jmp 00557D00 <-- 跳至我们的家
按F10来到00557D00,下a eip
:00557D00 8B45F8 MOV EAX,[EBP-08] <-- 还原代码
:00557D03 C6056D484A0033 MOV Byte Ptr [004A486D],33
:00557D0A E975E30700 JMP 005D6084 <-- 跳至原代码
要到这裏你须先BypassASProtect的保护才行`,测试无误后,记得抄下机器码用16进位编辑器去改
(B)利用第三层Modify第四层:
我们用Symbole Loader来载入Awave.exe,别忘了装载ICEdump或改Section的 Charactics, 否则无法中断的,还记得先前所说的Anti-Debugger吗? 我们要Modify它,位址是005D618B 下bpm 005D618B,按F5一次,中断在:
:005E555B F3A5 REPZ MOVSD
:005E555D 8BC8 MOV ECX,EAX
:005E555F 83E103 AND ECX,03
:005E5562 F3A4 REPZ MOVSB
:005E5564 5E POP ESI
:005E5565 8B8539294400 MOV EAX,[EBP+00442939]
:005E556B 6800800000 PUSH 00008000
:005E5570 6A00 PUSH 00
:005E5572 50 PUSH EAX
走过005E5562,你会发现第四层的代码已被解压
改:005E556B 6800800000 PUSH 00008000
为:005E556B E99F27F7FF jmp 00557D0F
:00557D0F 6800800000 push 00008000
:00557D14 C7058B615D00E9F90100 mov dword ptr [005D618B],0001F9E9
:00557D1E C6058F615D0000 mov byte ptr [005D618F],00
:00557D25 C7057D605D00E97E1CF8 mov dword ptr [005D607D],F81C7EE9
:00557D2F C60581605D00FF mov byte ptr [005D6081],FF
:00557D36 E935D80800 jmp 005E5570
恭喜! 又完成了一层,若你尚不了解,建议你画个流程图,仔细思考它们的逻辑关系那会帮你了解,OK让我们继续吧



2025-11-18 20:09:21
广告
不感兴趣
开通SVIP免广告
  • 索马里的海贼
  • 我为人人
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
不错哈。。!


  • 不断前行。
  • 我为人人
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
虽然不懂,还是支持一下吧


  • 旧梦失词_苏修
  • 禁止有偿
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
虽然不懂,但是支持、收藏起来总有一天会用得到哈~


  • 人间十月
  • 禁止有偿
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
学习一下


  • a20071947
  • 我为人人
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
看起来好复杂....好深奥..完全没看明白.... 没有基础伤不起


  • 1173689252
  • 禁止有偿
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
学习一下啊


2025-11-18 20:03:21
广告
不感兴趣
开通SVIP免广告
  • 吾爱破解粉丝
  • 禁止有偿
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
支持一下大牛


  • 南门乐队
  • 禁止有偿
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
大神,有这个软件吗


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 9回复贴,共1页
<<返回吾爱破解吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示