NINTENDO Switch 一出,香港隨即引起炒賣熱潮。當然每有新機推出,都會引發一班駭客試試身手,想看看能不能攻破新機(尤其是任天堂主機有著「良好」的紀錄)。但意想不到的是這部新機不單不到十日就被攻破,當中的手法,更跟 iOS 一個漏洞有密切關係。
駭客 qwertyoruiop 近日在 Twitter 公開了一張照片,顯示他令一部 NINTENDO Switch 顯示一句「done」字句,上面還有著名的 iOS 越獄團隊「盤古」的名字,這不禁令人想到這部才剛剛推出了十日的新遊戲機,是不是那麼快便被攻破了?有網上媒體 LiveOverflow 就訪問多個駭客組織和 qwertyoruiop ,最終得知這次「攻破」的原理!
that's just how it goes pic.twitter.com/ztkFrbjz5u
— qwertyoruiop (@qwertyoruiopz) March 11, 2017
為甚麼「攻破」 Switch 會跟盤古有關呢?原來這次「攻破」跟去年 8-9 月間 iOS 9.3 一連串漏洞有關。當時,瀏覽器引擎 Webkit 出現三個漏洞(「三叉戟漏洞」),當用戶不小心用瀏覽器來閱覽「有餡」網站時,就會執行任意程式碼。當時 Apple 就一口氣釋出多次更新來修補這個漏洞。過了大半年,想不到「三叉戟漏洞」仍然陰魂不散。
雖然 NINTENDO Switch 並沒有一個「讓玩家使用的瀏覽器」,但原來當 NINTENDO Switch 要連接 Wi-Fi ,而那 Wi-Fi 又需要登入時,便需要彈出一個瀏覽器來將用戶重導向一個「強制網路門戶(Captive Portal)」網頁。有趣的是,任天堂在開發時,竟然用上一個舊版本的 Webkit 套件,裡面仍然有那個「三叉戟漏洞」。
[row][double_paragraph]
[/double_paragraph][double_paragraph]
[/double_paragraph] [/row]
當駭客發現 Switch 裡面其實是有瀏覽器之後,就利用 Switch 備有的代理伺服器功能,查出每當 Switch 要連上網時,都會連接到一個預設網頁「http://conntest.nintendowifi.net」以測試連線狀態。於是駭客在自己設置的代理伺服器中將「conntest.nintendowifi.net」指向自己,並預先建立釣魚網站,讓 Switch 自己踩進駭客自己設置的陷阱裡,從而執行任意程式碼。
[row][double_paragraph]
[/double_paragraph][double_paragraph]
[/double_paragraph] [/row]
當然,qwertyoruiop 也重申,他實際上並未攻破 NINTENDO Switch ,他只是在作一些槪念驗證,以展示如何在 NINTENDO Switch 內的 Webkit 中執行任意程式碼。不過他認為,這可以作為一個開始,去真正破解 NINTENDO Switch 。相信任天堂方面在得知問題之後,好快就會推出更新程式來搗塞這漏洞了。至於到時各位要不要更新自己部 Switch 來等待越獄的一天來臨,就要大家自己衡量了。
Just to be clear: I did not jailbreak the Switch. I simply demonstrated a proof of concept exploit that gives me code exec in the browser.
— qwertyoruiop (@qwertyoruiopz) March 13, 2017
LiveOverflow 詳細解說「攻破」NINTENDO Switch 的原理
[ot-video][/ot-video]
PoC (槪念驗證)程式碼下載:按此