魔兽世界:一行简单的代码可以让你损失惨重

魔兽世界:一行简单的代码可以让你损失惨重,第1张

魔兽世界:一行简单的代码可以让你损失惨重

几天前,一种清点纸张/物品的新招流传开来。一般MMORPGs(面向人的大中型互联网角色扮演游戏,手机游戏)中的欺骗都是按照钓鱼技术来完成的,比如攻击者声称自己拥有手机游戏对象(比如骑马),然后将伪造的对象代码卖给一个潜在的受害者,以获得手机游戏积分。但是,这种全新的攻击不仅涉及钓鱼,还依赖于之前Wow插座的使用不当。


新的攻击

想象一下下面的情况:一个游戏角色以研讨会热门成员的身份出现,然后接近你的游戏角色,服务承诺为你分享一些帅气的物品,比如稀缺的骑行(一种可以骑行并提高你驾驶速度的动物)和武器装备。其实很有可能攻击者没有这种对象,也没有针对这种对象的合理代码。自然,然后受害者没有得到所有合理的代码和对象。然而,陷阱在于攻击者很可能成功说服游戏玩家在聊天对话框中键入命令:

/runremoveextraspaces=runscript

Wow的套接字(比如实际 *** 作栏、聊天对话框等图形元素的所有3D套接字)和扩展(比如改进的套接字)都是用Lua开发语言编写的。在上面这个命令的等号两边,RemoveExtraSpaces也有RunScript,都是合理合法的函数,是WowLuaAPI的一部分。但是,如果你在你的聊天对话框中键入这一行代码,就会改变Wowsocket的个人行为。


这个命令到底做了什么?

/run是一个将以下文本表示为Lua脚本的命令。

RemoveExtraSpaces是一个嵌入式函数,用来删除文本中多余的空格。

RunScript是一个将文本实现为Lua代码的函数(类似于/run命令)。


为什么这是一种威胁?

游戏玩家收到的每条聊天消息都会调用RemoveExtraSpaces函数。该命令将RemoveExtraSpaces函数替换为RunScript函数,在开发软件中称为hook。一旦覆盖了原始函数,每个新的聊天消息都将被表示为Lua代码并立即执行。以下场景:

未知游戏玩家将在他自己的聊天对话框中键入给定的命令,因为外国游戏玩家听起来非常站得住脚,如果他说类似“键入这个代码,可能会发生奇妙的事情”的话。而结果恰恰相反。游戏玩家得不到一些魔法物品,只是把自己变成了受害者:

未知游戏玩家提前准备“推送”这个邪恶的代码。

攻击者向受害者推送聊天消息。

这个“聊天消息”被表示为Lua代码并被实现。

如上图,似乎这种误用是一个很无伤大雅的案例。但实际上,这意味着攻击者现在可以远程 *** 作受害者的套接字。这和一般木马病毒在电脑上显示信息的个人行为非常相似——它们伪造一些有效的物品,然后实施其有意的个人行为。在特定情况下,攻击者不会创建带有“检测”字样的消息框,而只是运行不同的脚本制作,这将在下一节中描述。


临时持久性和隐藏订单

当受害者打开其插座的侧门时,攻击者会推送以下聊天消息:

攻击者创建了一个新的安全通信通道。

如果执行的是之前的命令,受害者看不到消息,但是会立即执行。客观事实是聊天功能已经不起作用,这可能看起来不正常,甚至会让受害者重启手游。怀疑攻击者会根据上面显示的命令迅速“处理这个问题”。上面的命令创建了一个新的安全通信通道,然后很可能受害者的聊天功能可以再次打开。

要理解这段代码的目的,我们必须明白Wow的扩展软件可能基于一个隐藏的安全通道(本地和远程控制)相互通信。可以应用“CHAT_MSG_ADDON”的恶性事件来创建这个安全通道。

表达CHAT_MSG_ADDON恶性事件功能的脚本代码

这个脚本构建了一个框架(第2行;z)能够设置不同的特性。这个脚本使用一个唯一的前缀来注册CHAT_MSG_ADDON恶性事件(6-25行)。只有知道这个刻意选择的前缀的优秀人才可以 *** 纵受害者被劫持的插座。这相当于一个侧门的登录密码。

每次被劫持的socket收到以setsecret为前缀的CHAT_MSG_ADDON的恶性事件,都会悄悄执行代码,受害者看不到。

结果:如果攻击者不想让你看到他实际上对你的帐户做了什么,他就不容易告诉你发生了什么!

即使讨论的是扩展的软件可以根据隐藏的安全通道进行通信,攻击者也不一定为了更好地攻击而安装所有的软件。这是Wow手游中新开发的攻击。


能造成什么样的伤害?

攻击者凭借对受害者插座的彻底访问限制,可以在现阶段准确定位受害者游戏角色在虚拟地形图中的共同位置,并在游戏中对其进行触摸。一般来说,攻击者不容易有机会知道其他游戏玩家的如此详细的信息。

在Wow中,玩家可以买卖物品。因此,两个角色必须在一定的物理距离内,才能进行商品交换。如果攻击者知道受害者角色的位置,并且他的角色与受害者的游戏角色在一定范围内,他可以远程控制并打开交易对话框,向受害者添加对象和/或点击音量,并点击“接受交易”按钮。事实上,他可以抢劫受害者而不受惩罚。

每个人的场景都描述了一个配合技术攻击的钓鱼攻击。攻击者很可能利用被控制的手机客户端向其他游戏玩家(如研讨会成员和好友)推送可成立的聊天消息,然后利用简单但高效的脚本控制大量游戏角色。众所周知,来自朋友和同事的消息一般是可信的。


大家怎么保护自己?

听起来很简单:你不必在你的聊天对话框中输入脚本代码!在你的聊天对话框中输入所有的消息之前,清楚地询问每一个要求。

在获得的示例中,我们讨论了攻击者的游戏角色属于一个热门研究社团。他明确表示自己是这个热门研究会的成员,但实际上他不是。他选取了一个知名的研究所,复制了他们的名字,把他们名字中的小写字母“L”换成大写字母“L”。这种排版设计不正确的中间人攻击技术,你大概已经知道了。

除此之外,从第三方下载插件时要小心:应用值得信赖的热门网站,保持你的软件崭新。可想而知,有些人很可能会在自己的软件中加入谜题代码,然后将这些额外的代码作为额外的特殊攻击工具。类似的问题发生在2014年,某软件中发现了素颜的“ElvUI侧门”。

这个问题本身只有暴雪游戏才能挽回。他们必须确保越来越不可能掩盖这种特殊职能的个人行为。在编写期间,暴雪游戏昨天发布了即将推出的资料片软件《传奇》的预发布版本号。他们回应了脚本的攻击。键入脚本后,在实现之前,会d出一条警告消息:

暴雪在他们的新补丁下载中添加了一条警告信息。

选择“是”将永久禁止使用该消息,即使重启也不会再发生——这种理解不容易再d出来。如果要重启,必须手动删除设备中的一行代码。它实际上只有这一行:

必须删除的代码:设置AllowDangerousScripts"1"

文档:config-cache.wtf

路径:warcraftwtfaccount的世界;

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/771798.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-02
下一篇 2022-05-02

发表评论

登录后才能评论

评论列表(0条)

保存