脱獄ツール「checkra1n」で使用されているBootROM Exploit【checkm8】ですが、基本的には実行するためにはMacやWindows、LinuxといったそれぞれのOSに合ったツールを使う必要があります。
ですが、今回報告された「WebUSB版」ではOSに依存せずブラウザから実行することが可能に…なるかも!?
WebUSB対応版
Ill release the Chrome WebUSB port of @axi0mX‘s checkm8 exploit on my GitHub page soon. Just fixing some minor errors and cleaning up the JavaScript right now.
— Luca (@RPwnage) 2019年12月1日
RPwnage氏より「まもなくcheckm8のChrome WebUSB版をリリースする予定です」との報告が行われています。
いくつかの小さなバグ修正と、JavaScriptの整理を完了した後にリリースとなるようです。
WebUSBって?
WebUSBとは、すごく簡単にまとめると…ChromeなどのブラウザからUSBデバイスへアクセスする仕組みの事です。
現在この機能を使えるのはGoogle Chrome(Chromiumベース)だけなのですが、逆に言えば…理論的にはChromeさえ使えるOSならば、checkm8を実行出来るようになるという事になります。
デバイス単体で…というわけではない
勘違いしやすい部分として、あくまでPCなど他デバイス側のブラウザからcheckm8を実行するものであり、iOS単体でcheckm8を実行…する物ではありません。
そのため、例えばデバイス単体で脱獄が行えるようになる…ということではないので、ご注意ください。
Mac版…Windows版…などが無くなる?
Chromeが動作するOSならば、Macであろうと、Windowsであろうと、Linuxであろうと、なんならAndroidやChromebookなどであっても、理論的には動作させることが可能です。
それらとiOSデバイスをUSB接続し、ブラウザ(Chrome)からcheckm8を実行する…という事ができちゃう!
そのため、これまでOS毎にツールが開発されていましたが、そういった垣根が無くなる、もしくはハードルが低くなる可能性があります。
脱獄ツール「checkra1n」はどうなる…!?
今回のお話は「checkm8 exploit」の話であり、脱獄ツールである「checkra1n」とは異なります。
ただ、今回のWebUSB版checkm8がリリースされた場合、仮に技術的に可能ならば…checkra1nがWebUSB対応する可能性も十分あるのでは!?と思ったりも。
Mac / Windows / Linuxの対応作業を行うならば、WebUSB版のひとつを開発するほうが工数も少なく出来る…かもしれないので、可能性としてはありそうです。
〆
ただ、WebUSBについて調べてみるとWindowsではドライバの制限に関連し、ブラウザからデバイスへアクセスできるかどうか…の問題があるようです。
iOSデバイスではどうなのか…なども含め、コレに関しては実際にリリースされてみなければ不明な部分。とはいえ、回避方法もいくつかあるようなので、それで回避できれば大きな問題にはならないかも…?
コメント
素敵なお話だあ
Androidスマホ経由で脱獄できるだなんてロマンチック…!!
JavaScreptになってますよ…
パイナップル時代の興奮がルネサンスしまくりですわ
Very nice work ! 素晴らしい一言です。
wktkしてきました
一瞬デバイス単体で出来るかと思ってマジで焦ったww
chromeってUSBアクセスできるの初めて知ったわ
これはすごい!
えぇ…
WindowsはWinUSBみたいな汎用ドライバ入れないとダメだと思う。
あともとから入ってるドライバも消す必要あるんじゃないかな〜
それだとiTunesとの共存が難しそう
裏を返せば重要データの入ったUSBメモリなんかにも余裕でアクセスできるってことか
はい、そのためChromeではこの機能は標準だと無効化されているようです
無効化というような無効化は無いと思う(新しいバージョンで変わっててるとかだったらすみません)
位置情報とかと同じでプログラムが要求したら、都度ユーザーに許可を求めるって感じ
それを標準で無効という
Chromeの場合実験的機能はflagで管理したりするので、
そっちのほうが無効って感じがしたんだよね……
補足で、
Chrome78から使えるNative File System(ローカルのファイルを直接読み書きできるAPI)を使うようにするにはflag弄らないといけなくて結構だるい、
けどWebUSBはその場で通知が出てアクセス許可するだけという違いがある。
ローカルwifi接続でできたらええのになあ。。。
checkm8はwifiチップの脆弱性じゃないから無理やね。。。