一條代碼讓你在魔獸世界里傾家蕩產(chǎn)
一條代碼就能讓你在《魔獸世界》里傾家蕩產(chǎn)。無論是“金團”黑金黑裝備,還是點卡金幣/人民幣交易,幾乎每個《魔獸世界》玩家都被至少一種騙術羞辱過智商。受騙之后還能怎么辦?除了拍腦門別再想著圖方便、撿便宜,似乎也沒有什么別的辦法——至少在國服,客服對受害者一般幫不上什么忙。
大部分《魔獸世界》騙術屬于“社會工程學”范疇:偽造游戲 ID、運用人際交往技巧,取得受騙者的信任。但還有一種更厲害的騙術,運用了游戲內(nèi)聊天系統(tǒng)里的“命令行”功能。
《魔獸世界》玩家早就吃過命令行的虧,很多人都聽說過騙公會會長退會和移交會長的伎倆。但上面這一條命令的毀滅性更強,如果在你的游戲里輸入,基本等于把整個游戲的控制權交給了騙子。
這條命令有什么用?
這是一條腳本命令,《魔獸世界》客戶端界面腳本語言是 Lua(基于 C)。我們玩游戲的界面,比如動作條、角色的姓名版(血條)、施法條、傷害文字等等,無論是暴雪自帶還是第三方界面或者功能插件,都是用 Lua 腳本語言寫的。
/run:讓 /run 后面的字段按照 Lua 腳本運行;
RemoveExtraSpaces 和 RunScript:都是游戲自帶的合法函數(shù),分別能把文字中無用的空格去掉,和讓一段文字被識別為 Lua 代碼
上面這條代碼的功能是,每當前者運行時,都用后者代替前者。后者在《魔獸世界》玩家每次收到聊天信息的時候都會運行,這條代碼的結果就是,玩家收到的聊天信息將被當做 Lua 命令執(zhí)行。
騙子會假裝這段代碼是某個絕版坐騎的兌換碼,而坐騎對玩家的誘惑力是很大的。但其實,這段代碼正是騙子“界面劫持”計劃的第一步和最重要的一步。
這段代碼有一個副作用:
受騙玩家的聊天系統(tǒng)不管用了。
別人發(fā)來的信息他看不見,因為信息都變成了 Lua 命令,而 Lua 命令運行除了報錯以外沒有任何提示的。如果玩家起了疑心、重啟游戲的話,之前的努力就白費了。因此騙子需要遠程重新啟動玩家的聊天功能——當然是通過聊天的方式。因為,現(xiàn)在玩家的客戶端已經(jīng)變成“肉雞”,騙子發(fā)什么命令,肉雞就會執(zhí)行什么命令。
這樣,玩家仍然可以正常在各個公共或私密頻道聊天,但騙子會利用另一個功能“插件通信接口”(CHAT_MSG_ADDON),來向玩家的客戶端繼續(xù)注入代碼。
“插件通信接口”同樣也是暴雪開發(fā)并提供給第三方插件開發(fā)者的合法功能,通過這個接口發(fā)送的信息不回顯示在玩家的聊天框上。很多人都用過 DBM 插件,它的團隊警報實現(xiàn)方式,其實就是團長的插件通過“插件通信接口”向團員發(fā)送信息,團員的客戶端插件收到這些信息,呼出對應的事件警報,就這樣,一條一條惡意代碼發(fā)送到受害玩家的客戶端里。即便玩家沒有安裝任何第三方插件,插件通信接口也是默認開放且無法關閉的,因為它是游戲運行的重要功能。
所有代碼的最終目標是完全劫持玩家的游戲界面。完成注入后,我們假定受騙玩家正在主城,騙子先找到他的準確位置,控制角色走到他的身邊,通過插件通信接口發(fā)送代碼,控制玩家的客戶端啟動交易,輸入交易金額,點擊確認。好了,你的錢都沒了。
整個過程最可怕之處在于,騙子取得了玩家界面的完全控制權,遠端對界面的控制通過代碼實現(xiàn),在受騙玩家在本地是完全看不見的。
新版本并未徹底解決這個問題
再過一個月,《魔獸世界》最新的 7.0 版本《軍團再臨》就將正式上線;事實上,起過渡作用的“前夕”版本已經(jīng)實裝。最近,暴雪以及游戲在各國的運營商針對該漏洞推出了一個在線修正(hot fix),但并未徹底解決問題:現(xiàn)在在命令行中輸入以 /run 或其他字段開頭的腳本命令,會彈出一個對話框,提示玩家使用自定義腳本可能會導致游戲金幣損失,詢問是否繼續(xù)。
如果玩家選擇是,當前的自定義腳本會執(zhí)行,而且這個對話框不會再出現(xiàn),之后的自定義腳本也會自動執(zhí)行。
該怎樣保護自己?
首先,不要輸入 /run 開頭的腳本命令。也不要貪,魔獸世界里沒有任何隱藏代碼能讓你獲得神裝和隱藏坐騎。
其次,只使用暴雪自帶的插件,在自己信任的插件聚合網(wǎng)站,或者單獨插件作者自己的網(wǎng)站下載插件,并更新過期的插件,不去不知名的小網(wǎng)站下載。第三方插件本身就有運行腳本的能力,你永遠不知道自己的角色別人能也控制。
更多資訊,可以訪問2898站長資源平臺資訊-互聯(lián)網(wǎng)絡欄目:http://afrimangol.com/news/hlwl/ 謝謝!