传奇部落

 找回密码
 立即注册
查看: 462|回复: 0

排查脚本漏洞与被刷元宝装备详解

[复制链接]

1537

主题

384

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
12376
QQ
发表于 2018-4-5 21:10:54 | 显示全部楼层 |阅读模式

一:非法GM权限的解决办法

1.下载了版本后解压出来然后在版本里搜索 CHANGEPERMISSION 这个命令就是设置玩家的权限的,

如果你的版本里有这个命令,首先你看看这个命令是每个玩家都能执行的还是只有管理员才能执行的,然后选择删除或者保留。

2.下载了版本后解压出来然后在版本里搜索 CHANGEMODE.

这个命令是设置玩家获得 隐身、管理、无敌模式的,如果你的版本里有这个命令.

首先你看看这个命令是每个玩家都能执行的还是只有管理员才能执行的,然后选择删除或者保留。

3.下载了版本后解压出来然后在版本里搜索 AdminList.txt 这个文件是保存管理员名单的

如果发现版本里有类似 AddTextListEx .\AdminList.txt 这样的代码 尽量删除 这个命令会写入某玩家的名字进去

4.Gm命令设置为权限0的漏洞,查看与修复的方法是:M2上依次打开-【选项】-【游戏命令】-【管理命令】

每个都点一下,看看所需权限是多少 如果发现是0的 就修改成1-10之间就可以了

二:常见出现非法刷元宝的处理方法

1.下载了版本后解压出来然后在版本里搜索 GAMEGOLD 这个命令是给玩家加元宝的 版本里会有很多,

具体就的自己判断了 建议都打开看看 分析下 为了游戏能安全些 多付出点时间检查会更好。

2.还有一种 就是利用双击类型物品的编号重复刷元宝 比如 QFunction-0.txt 里有这么一段代码

[@StdModeFunc32]
#IF
#ACT
GAMEGOLD + 5

这样是双击增加5个元宝 物品数据库(StdItems.DB)里对应的物品名是 5元宝 Anicout编号为32 ,

但是别人留漏洞的时候也会做一个很常见的物品,也做成双击触发型的东西

Anicout编号也设为32 那样双击一样可以获得元宝,所以这个大家也可以看看

正式开服的朋友请一定打开日志系统,这样如果游戏出现刷元宝之类的问题可以分析日志查看到蛛丝马迹。

不开的话就没办法分析了。有的版本刷元宝的物品他会不放在日志里 添加方法:mir20引擎里-查看-列表信息-游戏管理-点全部添加-保存
--------------------------------------------------

利用行会招募NPC的公告写入一个元宝代码,然后配合一个软件来调用这段元宝代码!

或者利用二级密码NPC的写入方式刷出元宝.如果不配合这个软件直接调用QF文本的元宝代码,

是没任何反映的!想必很多人都无法突破这里!就是因为这些NPC的写入功能,而导致了开区的版本出现莫名的刷元宝装备等.

而众多服务端里基本都存在行会招募NPC和二级密码NPC!所以说布站80%的传奇版本都可刷元宝装备也不是夸大其词的!

下面为某传奇版本刷元宝装备的案例,因版本是开发者刻意留的漏洞,

所以是不需要用到软件直接调用命令输入代码就可以刷的,

这些漏洞如果用传奇脚本漏洞查看器检测是没有办法检测出来有漏洞的。至于是什么版本在此本人也不说了。

1.首先上服保持人物等级是1级(绝对不能高过1级,不然刷不了),然后在新手小村里进入监狱再出来就可以直接传送到土城了!

2.第1个刷法就是利用二级密码刷,点设置密码然后输入11/@@inputstring20

提示设置成功后会提示你的密码为黄色字体的11,点11输入1/@StdModefunc35后点确定,然后双击你的在线回收,点黄色的1字就能刷元宝了

!一次50W元宝。这个方法我们在行会招募NPC一样的可以用这样的输入方法进行刷元宝的。

当然除了刷元宝外,我们还可以通过其他命令来刷其他的东西.

3.金刚石的刷法 输入1/@StdModefunc60;这个代码

4.装备的刷法 输入1/@StdModefunc103;终极装备

5.元宝的刷法 输入1/@StdModefunc35;

当然了,这是只是某传奇版本的案例,不是每个版本输入的这些代码就能刷的,

但只要是版本开发者刻意留的漏洞,可能就是输入的代码不一样外其实原理还是一样的.

下面就来说说被封包刷装备物品的

遭遇WPE封包刷,那么肯定是脚本不严谨,下面举例说明什么样情况会被刷,什么样脚本不会被刷

[@main]
<获取装备/@获取>\

[@获取]
#IF
#ACT
give 裁决 1
Break

这样的脚本可以无限制刷裁决·无限制无条件的执行 [@获取]

示例2:

[@main]
<获取装备/@获取>\

[@获取]
#IF
CheckGold 5000
#ACT
take 金币  5000
give 裁决 1
Break
以上安全.但是一样可以被刷,每刷一次扣5000金币,当金币不够5000就刷不动了!


示例3:

[@main]
<获取装备/@获取>\

[@获取]
#IF
CheckGold 5000
#ACT
take 金币  5000
#CALL [\\系统文件\基础物品.txt] @物品
Break

[@物品]
#IF
#ACT
give 裁决 1
Break
以上封包可以直接执行[@物品] 跳过检测,解决方式,要么检测放在执行段,

要么加增加标识判断是否正规进入,如下:

[@获取]
#IF
#ACT
#CALL [\\系统文件\基础物品.txt] @物品
Break

[@物品]
#IF
CheckGold 5000
#ACT
give 裁决 1
Break

==========================

以下是通常大家不在意的,

这个才是被刷的重点,因为不可能任何脚本都要货币检测,那么就检测他是否正规来路

======================

比如这个是QF脚本:  (31类双击物品 )

[@STDMODEFUNC11]
#IF
#ACT
#CALL [\\系统文件\基础物品.txt] @物品
Break

[@物品]
#IF
CheckGold 5000
#ACT
take 金币  5000
give 裁决 1
Break

=====================

封包执行@物品 检测标识 ·

如果正常双击31类物品 就会给予标识 789 为1  ·不是正规进入就不可能是1,执行脚本后标识清零

============
[@STDMODEFUNC12]
#atc
set [789] 1
#say
<领取/@物品01>

[@物品01]
#IF
#ACT
#CALL [\\系统文件\基础物品.txt] @物品
Break

[@物品]
#IF
check [789] 1
#ACT
set [789] 0
give 裁决 1
Break

GOTO 防刷和CALL的方式一样

-以上2种均可解决被刷 就算被刷别人也是满足你的脚本执行条件,

是需要付出代价的.顶多算个外挂自动点击而已,当检测条件不符合了就不能再点击了,反正被无限刷 就是脚本缺乏检测 ·或者检测的位置不对.

永远记住一句话:检测要放在执行段


有很多新手GM 不懂得如何检测版本是否存在漏洞,这样的 建议找个懂一点的技术,对版本进行相关检测,看看有没有被刷的可能

还有种被刷的方法就是引擎BUG,因为引擎的GM权限和脚本的GM权限并非同一权限,

引擎GM权限刷出来的物品都是有操作记录的 而脚本GM权限刷出来的物品都是NPC制造,

针对这一点,没有太好的解决方法,唯一的就是检测自己的脚本和触发是否存在被刷的可能!



开传奇学技术,版本修改定做,在本站开服客户给所有后台,免费教学开服技术 站长QQ137919001
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站长QQ137919001|小黑屋|网站地图|传奇部落 ( 皖ICP备18020244号-1 )

GMT+8, 2019-6-26 12:34 , Processed in 0.131008 second(s), 22 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表