您当前的位置:首页 > 其他技术 > 传奇漏洞

网游动力讲解传奇写入漏洞的原理与什么叫传奇写入

本文出处:网游动力作者:本站发布时间:2014-09-22阅读次数:

 给新手讲解一下,同时也给自己理一下思路。
举个龙帝的例子,漏洞的触发是这样的步骤:
这里复制粘贴了别人告知的漏洞步骤:在招兵买马那里抢下行会(PS:要刷的号必须是掌门人)然后点行会管理,修改公告内容 输入<11/@@InPutString18>,点返回会看到掌门致辞那里有一个黄色的11,点黄色的11,在对话框里输入<1/@StdModefunc35>点确定,最后就是双击你背包里面的在线回收,出现一个黄色的1字,这样就可以刷元宝了!点一次是50W元宝。
步骤一,修改公告内容,这里输入的是<11/@@InPutString18>,前面的11是可以任意替换的,不重要,18是对应的S18变量,点11之后输入的内容是直接给S18变量赋值的。
步骤二,点黄色的11,输入<1/@StdModefunc35>。这里的1也是可以任意替换的。@StdModefunc35是QF里的触发脚本段,原来对应的应该是吃50w元宝触发,这里直接用命令来执行。
步骤三,点在线回收,点黄色的1。新手应该是在这里迷茫了。重点讲一下这里。
原来在线回收的脚本里,应该是正常的一段,但是在某一段文字内容后面应该加了<$STR(S18)>,意思就是显示变量S18的内容。
S变量是人物个人变量,与其他人无关,写入S18,就是靠上面<11/@@InPutString18>命令段完成的。如果点了黄色的11,写入的是,祖国万岁
那么在步骤三点在线回收之后,该出现黄色1部分,应该出现祖国万岁。
之所以在线回收能够调用QF里的@StdModefunc35,是因为在QF里,有一段命令是CALL了在线回收文本,那么就相当于在线回收就在QF里,同一个脚本文件里的命令是可以直接跳转的。如果QF里有一段命令名字是@123123,那么在输入的时候,也可以写<asdfasdfasdf/@123123>,那么在步骤三之后,点这段asdfasdf就会执行QF里的@123123命令段
补充一点
步骤三里,是漏洞的真正执行的地方。漏洞作者在正常的NPC对话框脚本后面只加了<$STR(S18)>,效果是我们可以在对话框里看到<$STR(S18)>,同时也能点到<$STR(S18)>。如果是聊天框里的输出变量,比如欢迎伟大的城主<$username>进入游戏。这种是完全无用的。
延伸一点来说,这个<$STR(S18)>也可以放到其他任何一个NPC,比如盟重传送员的对话框里。那么之前的步骤一步骤二不变的情况下,步骤三就要改成点盟重传送员,然后点黄色的1来加元宝。