首页
社区
课程
招聘
[讨论]StarForce破解的思路!
发表于: 2007-2-12 02:11 12219

[讨论]StarForce破解的思路!

2007-2-12 02:11
12219
我有两个StarForce破解的思路!两个思路都需要编程实现!大家先看看我的想法对不对吧!
1. 用单步方式运行程序,每执行一条指令则记录该指令的地址,如此一来,就可以弄清楚插光盘运行和不插光盘运行时指令的分歧点在哪里!这一步技术是与Windows操作系统有关的,接下来还要做一件事,就是确定StarForce如何将存储于PE文件中的指令字节转换成内存中真正要执行的指令字节。这一步解决以后,就可以用二进制编辑器改指令了!

2.因为一个进程要启动起来需要操作系统提供各种各样的数据结构!所以我们试图把这些数据结构都记录下来,通俗的讲,就是说将游戏通过防拷后的进程状态的各项内容记录下来,然后我们自己创建一个进程,将那些原先记录下来的内容换成我们创建的进程的内容,这样是不是也可以啊!主要是这种方法所需要的知识全部和WINDOWS与底层有关。但是就我目前对计算机的了解,这种方法可能是太复杂了。需要做的事情太多!

大家怎么看这个啊?

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

收藏
免费 0
支持
分享
最新回复 (26)
雪    币: 622
活跃值: (294)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
2
第一种,StarForce驱动使用Drx寄存器,单步跟踪也需要,结果是蓝屏。
第二种,StarForce在读取光盘数据前使用int1指令调用其驱动将后面的代码复制到核心内存中,你保存的数据结构对于int1后面这部分使用了部分Ring0指令的代码而言没有意义,因为他们根本不能在Ring3运行,也就是说你摆脱不了驱动,摆脱不了驱动,其他也就没什么意义。
2007-2-12 11:52
0
雪    币: 217
活跃值: (99)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
我完全解密过一个SF光盘保护的游戏,可能是版本比较低或运气比较好吧,没进ring0就解密了被SF加密的程序和文件,大部分时间都花在修复IAT上了,而且只能手动解决.
2007-2-12 12:18
0
雪    币: 203
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
Ring3下 是可以调试SF的 至少现在已知的所有版本都可以
2007-2-12 13:49
0
雪    币: 203
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
单步也可以。
现在SF的主要难点只在与VM部分。
其他部分没难度了。
2007-2-12 13:49
0
雪    币: 80
活跃值: (14)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
难道我们不能自己写个驱动程序吗,WINDOWS的驱动程序不是有运行在核心态的吗,那应该就可以访问系统的各个资源了吧。我想应该可以根据《inside windows 2000》和微软提供的DDK来得到很多东西。
2007-2-12 16:04
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
7
不是已经有STARFUCK了嘛
你去逆STARFUCK不就知道怎么破了
2007-2-12 16:39
0
雪    币: 331
活跃值: (56)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
8
STARFUCK是欺骗了STARFORCE,因为STARFORCE自己留了一条生路。如果StarForce赶尽杀绝。StarFuck也没有用。
StarForce关键就是VM.
2007-2-12 16:43
0
雪    币: 244
活跃值: (105)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
9
呵呵,我来说几句吧......
我破解了10多个SF3,SF4游戏
基本是这样:
大宇的游戏基本不用VM,如轩辕剑4 v1.0(1.1开始用VM了),这些游戏只要修复IAT,并把分散的代码段合起来,就可以正常运行了,非常简单,难度已经比Securom要小了

其他公司的游戏,基本都用到了VM,破解难度大大增加,进入VM的特征就是INT 1,到Ring 0里运行VM,这样OD就毫无用武之地了~
这样的话VM的代码只能靠猜(当然不是瞎猜) 不过听说国外的RLD已经开发出VM代码解密工具(适用于SF3),这样StarForce就完蛋了~

至于StarForce另外一个网上激活的StarActive? 也差不多原理
没有VM就和一个普通的压缩壳差不多~

UJ的绝代双骄前传就是Active+Force,难度其实和只用光盘加密一样的,只不过多脱壳一个DLL而已, 而且DLL的VM代码比EXE里要少得多~
我只用了1个晚上,修复了10多处VM, 就能进入片头了, 后面大概还有70多处没有修复,因为某些网站和个人因为一些利益而把我出卖,就没去做这个游戏了...
2007-2-13 00:15
0
雪    币: 331
活跃值: (56)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
10
还有破解游戏赚钱的??。。。。
2007-2-13 01:16
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
11
9楼的牛人啊。。
游戏也是软件嘛。。。
2007-2-13 09:23
0
雪    币: 622
活跃值: (294)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
12
请问下娃娃,为什么我附加进主程序之后,按一下F8就立即蓝屏?(OD)
2007-2-13 09:48
0
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
13
step use int1
2007-2-13 09:49
0
雪    币: 175
活跃值: (211)
能力值: ( LV12,RANK:330 )
在线值:
发帖
回帖
粉丝
14
最初由 脱壳请教 发布
这样的话VM的代码只能靠猜(当然不是瞎猜)


高手,我知道到你是谁了

VM应该怎么猜呢?能否给些提示?
这样行不行:过VMcall之前和之后保存所有内存然后对比
不过这样好象也只适用于只call一次的VM,那些call多次的参数不同的就不行了

INT1好象可以在3RING模拟,INT1就是在0RING下更新VM状态,只要模拟更新VM REM应该就可以了
我模拟了一个INT1,不过接着运行下去又是一个INT1,无穷无尽
2007-2-13 09:49
0
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
15
不用模拟吧,跟当初对付xpr一样...可以用别的断点啊
2007-2-13 09:56
0
雪    币: 203
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
最初由 无聊的菜鸟 发布
请问下娃娃,为什么我附加进主程序之后,按一下F8就立即蓝屏?(OD)


楼下回答你了  

StarForce 现在只有VM还没有解决。  看来这真的是个趋势了 :(
另外 StarForce 之所以很多人觉得它强 其实只不过是它的应用领域不如软件来得广泛

一旦StarForce被应用到了 软件加密或者网络游戏加密上。 很快也就土崩瓦解了  :(  我不觉得它比Themida牛B多少。。

严重膜拜Softwarm heXer Shoooo。。。。
2007-2-13 12:59
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
17
人怕出名,猪怕壮
2007-2-13 13:38
0
雪    币: 244
活跃值: (105)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
18
最初由 DonQuixote 发布
高手,我知道到你是谁了

VM应该怎么猜呢?能否给些提示?
这样行不行:过VMcall之前和之后保存所有内存然后对比
不过这样好象也只适用于只call一次的VM,那些call多次的参数不同的就不行了
........


呵呵,你猜不到我是谁的...
VM的猜就是他不可能把所有代码都用VM的方式运行
一些CALL,API都还是要回到主程序里执行的
这就是他的弱点...

如果VM代码里没有CALL和API,那就更加容易了
拦截内存读写,堆栈处理就行了
寄存器更加容易了...
2007-2-13 22:47
0
雪    币: 244
活跃值: (105)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
19
最初由 Isaiah 发布
还有破解游戏赚钱的??。。。。


目前剧我所知, 是有的...
只不过不多, Securom和StarForce可以难倒一些普通人了
SafeDisc相对来说简单点,还有一个什么Vxxx???? 好像更加简单
破解一个游戏的报酬一般只有500, 还不够电费和晚上熬夜的补品
所以国内基本没人愿意去破解游戏,也没人愿意去研究这个

完全只能靠自己的兴趣...
2007-2-13 22:50
0
雪    币: 226
活跃值: (179)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
20
脱壳请教--》MYCRACK吧,我在某网站看不到你的任何信息了,呵呵,没“出卖”是什么意思哦

还有VM你能猜,强~
个人觉得VM不会那么能猜测哦,呵呵~
2007-2-20 22:07
0
雪    币: 226
活跃值: (179)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
21
DonQuixote

模拟INT1,但是你知道她怎么跳下个INT1么?
2007-2-20 22:08
0
雪    币: 244
活跃值: (105)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
22
最初由 softbihu 发布
脱壳请教--》MYCRACK吧,我在某网站看不到你的任何信息了,呵呵,没“出卖”是什么意思哦


还有VM你能猜,强~
个人觉得VM不会那么能猜测哦,呵呵~


呵呵,我不是mycrack
不过我也猜到有人会认为我是mycrack
2007-2-21 00:10
0
雪    币: 175
活跃值: (211)
能力值: ( LV12,RANK:330 )
在线值:
发帖
回帖
粉丝
23
最初由 softbihu 发布
DonQuixote

模拟INT1,但是你知道她怎么跳下个INT1么?


VMopcode--->int1--->updateVM--->iret--->VMopcode--->int1--->updateVM...
|--3ring---|-------0ring-----------|-----3ring-----|----0ring----....

就是说把updateVM部分在3ring模拟后运行还会遇到另一个INT1
2007-2-22 10:08
0
雪    币: 226
活跃值: (179)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
24
恩,没研究过INT1里面的构造,但是明显是INT1是个跳转开关,每个INT1和INT1之间是个独立的VM指令,SF很厉害,再0RING里面操作执行流程,我们做破解的就是要读流程,INT1的方式来跳转,没找到一个好办法,没办法跟流程,也没办法读明白~

风清 应该是有办法处理这个问题的~
2007-2-22 13:27
0
雪    币: 146
活跃值: (33)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
25
风清?是不是cnasm群里面的清风啊?
2007-2-24 11:59
0
游客
登录 | 注册 方可回帖
返回
//