查看: 1816|回复: 4

[随意闲聊] 一种特殊的脚本保护方式

[复制链接]

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
回帖
6005

烫烫烫开拓者

发表于 2012-4-3 18:34:05 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
1、保护
对脚本进行C++化,保留C++和Ruby共有部分,即
class XXX
  def func1(arg1,arg2...)
    CRuby["XXX"]["func1"].call(arg1,arg2...)
  end
  def func2(arg1,arg2)
    ...
end
把整个代码变为这样的形式。
在Dll里面使用rb_eval(反汇编)进行调用。同时进行入口点检查。
2、试用
对于试用的脚本,可以通过限制运行时间和跳出Logo进行保护
3、加密
对DLL核心部分采用证书(私钥+加密档指纹)+AES加密,同时加壳,未验证证书时以试用模式运行,验证通过后则以授权模式运行。
4、授权
对于授权用户,提供数字签名DLL的核心部分必须经由数字签名解密后运行,同时数字签名与RM加密档案绑定。做法是提供一个绑定工具,验证作者身份后往RM 加密档中写入以下数据:
1、公钥
2、更换Trial的DLL为完整DLL

-----------------------------------------
整个算法目前DLL的保护较为薄弱……寻求解决方案。

点评

杨菲菲没有蛋  发表于 2012-4-4 03:18
其实这种加密还是偏弱……哎。。硬伤啊。。  发表于 2012-4-3 20:40
果然杨菲菲是喜欢蛋疼的孩子(:(  发表于 2012-4-3 20:39
哎呀,蛋疼什么的最有爱了
梦石
0
星屑
1002
在线时间
1270 小时
注册时间
2011-2-14
回帖
5388
发表于 2012-4-3 18:37:37 | 显示全部楼层
个人认为修改dll然后让脚本不兼容默认的dll或者自带自毁装置
回复

使用道具 举报

追从自然的旅行者
奇特空·煦

梦石
0
星屑
107
在线时间
1387 小时
注册时间
2010-12-31
回帖
4794

开拓者贵宾

发表于 2012-4-3 19:16:57 | 显示全部楼层
yff发脚本贴竟然带这么多说明真是少见

点评

但是依旧没图(怎么贴图啊这个内容!  发表于 2012-4-3 19:24
回复

使用道具 举报

乌有君
乌有君  发表于 2012-4-3 23:47:48
用户开机后自动跑三个相互保护的进程来监视有木有坏人乱改DLL(大雾)

点评

干这破事自然是io接口直接读硬盘  发表于 2012-4-3 23:51
回复

使用道具 举报

老黄鸡

梦石
4
星屑
45800
在线时间
7956 小时
注册时间
2009-7-6
回帖
13338

MZ评测员RM创作大赛01组委会开拓者贵宾

发表于 2012-4-3 23:54:15 | 显示全部楼层
匿名者 发表于 2012-4-3 23:47
用户开机后自动跑三个相互保护的进程来监视有木有坏人乱改DLL(大雾) ...

api断点之后乱改指针到奇怪的fux函数上就监视不了了。
RGDirect - DirectX驱动的RGSS,点我了解.
(排满,暂停)RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部