華文網

盤古團隊證實:微信小遊戲“跳一跳”改分漏洞仍在,這是最新攻略

1 月 2 日下午,著名安全團隊“盤古”的安全專家向雷鋒網宅客頻道證實,微信小遊戲“跳一跳”改分漏洞仍在,此前流傳的“微信已補漏洞”是指已經修補了微信小遊戲“跳一跳”的原始程式碼下載漏洞。

這意味著,改分依然可行。

為此,“盤古”旗下的移動安全威脅資料平臺 Janus 為雷鋒網出具了一份最新改分攻略:

一、改分關鍵步驟

電腦安裝抓包軟體,手機設置https代理到電腦

通過抓包軟體,抓包拿到微信的sesseion_id

將sesseion_id寫入改分腳本,提交改分請求

二、詳細教程

(1)部署代理環境(mac環境)

mac下選用charles作為抓包代理軟體(https://www.charlesproxy.com/),windows用戶可以用 fiddler(https://www.telerik.com/fiddler)。

安裝好後運行起來,查看本機IP位址,以及軟體提供的遠端代理埠號:

charles 的頂部菜單 Proxy->Proxy settings

將手機接入與電腦同一個局域網的wifi,然後在wifi的代理設置中,選擇手動指定代理,代理伺服器為電腦的ip及代理軟體提供的埠號(如圖中的8888)。

電腦端會提示是否運行遠端接入,點allow即可。

設置好了以後可以嘗試流覽器打開baidu.com,如果可以正常打開,

並且在抓包軟體中可以看到請求記錄就完成了手機的代理設置。

由於是https的請求,需要在手機端安裝證書才可以解密請求,charles的證書可通過手機流覽器安裝,手機流覽器訪問http://chls.pro/ssl,點繼續訪問此網站,會提示安裝證書。

iOS 10.3以上的系統版本,需要在 設置→通用→關於本機→證書信任設置 裡面啟用完全信任Charles證書。

配置好證書後可以打開https://baidu.com看看是否能解開百度的首頁原始程式碼。

(2)獲取session id

https配置完畢後,打開微信的跳一跳小程式,就可以看到抓包歷史有一個帶有session id的請求:https://mp.weixin.qq.com/wxagame/wxagame_init

在request部分就可以複製到session_id了。

(3)將sesseion_id寫入改分腳本,提交改分請求

目前開源的腳本是nodejs寫的,git地址:https://gist.github.com/feix/6dd1f62a54c5efa10f1e1c24f8efc417

具體的步驟:

新建個目錄,比如:wxt1t,然後將腳本源碼保存到這裡,比如hack.js。

然後安裝nodejs,

可以通過官網下載安裝包安裝:https://nodejs.org/en/

然後在命令列cd到當前專案檔案夾(wct1t),運行:

npm init --y

npm install crypto-js request-promise

然後用文字編輯器打開hack.js,修改裡面的score(分數)和session_id變數的值即可。

命令列運行node hack.js,出現2018! Happy new year! 就代表成功了。

上述專家還提醒:“雖然‘跳一跳’的下載代碼漏洞已經修補,但是之前官方的原始程式碼已經傳播開了,別人拿去改一改,就可以出個自己的‘跳一跳’了,比如,可以拿‘跳一跳’的代碼改一個遊戲,叫‘跳跳跳’,然後夾帶一些私貨,

發佈個新遊戲。”

如果這樣,類似的新遊戲是否有夾帶惡意程式碼的風險?

專家對雷鋒網稱:“小程式有審核機制,如果夾帶了惡意程式碼,躲避審核後才能實現。現在小程式審核比較嚴格,尚不清楚其對惡意程式碼的審計力度。”

參考連結:http://appscan.io/discover-discuss.html?id=1123859495