Boris Larin(oct0xor)氏が所属するKasperskyのチームにより、セキュリティカンファレンス37C3にて【KTRR Bypass】などの内容が発表されました…!
カンファレンスでの発表ではあくまで「どのようなものか」という内容に留まっているものの、iOSのアップデートでは修正が不可能など…かなりすごい物となっているようで…。
KTRR Bypassの概要を発表
The recording of our (me, @bzvr_, @kucher1n) #37c3 talk “Operation Triangulation: What You Get When Attack iPhones of Researchers” was published! https://t.co/j97J9TiXsC
— Boris Larin (@oct0xor) December 27, 2023
先日「脱獄とカーネルデバッグが新しいiPhoneに登場!」と予告されていたKTRR Bypassを含む、一連の攻撃チェーンの概要について、37C3に発表が行われました。
まず、初めにご紹介しておくと…今回の講演では「概要」と「一部詳細」が発表となっており、実際のExploitコードなどは公開されていません。
そのため「いますぐ脱獄が可能になる」というわけではない点には注意が必要です。
ただし、oct0xor氏によると更に詳しい詳細などについては後日公開するとのことなので、大きく動く可能性があるとすれば…このタイミングとなりそうです。
これは何?
今回の講演では「一連の攻撃チェーン」についての発表ではあったのですが、注目されている点はKTRR Bypassであるという部分になります。
KTRR(Kernel Text Read-only Region)とは「カーネル部に変更を加えられないようにするハードウェア上のセキュリティ」というイメージのものになります。
が、名前の通り…KTRRを回避する事が出来るようになった。というのが今回のお話。
KTRRは、大部分のソフトウェア上などのセキュリティよりも上位に属するため、KTRR Bypassを可能にすることで…その後動作する他のセキュリティの仕組みの大部分までも回避できる様になるようです。
例えば、PAC / PPLといったセキュリティがこれに当たり、KTRR Bypassを達成できるだけで、PAC / PPLなどに関しても回避できちゃう…ということに(注意点があるため後述)。
iOSアップデートによる修正は不可能
更に、予告では「iOS 16.5.1以下向け」とされていたのは他の脆弱性との兼ね合いであり、KTRR Bypass自体はハードウェア上の欠陥であるため、iOSアップデートでは修正できない物となっているそうです。
iOSアップデートによりKTRR Bypassを実行しにくいように…という一時的な緩和策を施すことは可能なものの、根本的に修正するにはハードウェア上の設計を変更するしかないということになるそうです。
A12以降のデバイスに影響、A17にも存在する可能性
また、現時点でKTRR Bypassの影響を受けるデバイスはA12以降のデバイスということになり、M1やM2デバイスも含まれるとのこと。
iPhone 15 ProシリーズであるA17デバイスに関しては、現状では不明ながら…影響を受ける可能性があるようです(要確認)。
iOS 16.5以下では脱獄に必要なパーツが揃った
With the bug disclosed today, Kcall-less PPLRW is definitely possible on all kfd versions with no extra requirements. Bypassing KTRR seems like it’s more work / has extra quirks (For instance it allegedly worked only once ever and we don’t know why).
— opa334 (@opa334dev) December 27, 2023
もちろんまだ詳細やExploitコードなどが公開されたわけではないのですが、iOS 16.5以下ではカーネルExploitであるkfd Exploitがすでに存在します。
そのため、今回発表されたKTRR Bypass、もしくはPPL Bypassを使用することで、iOS 16.5以下であれば脱獄に必要なパーツが集まったということになるようです。
iOS 16.5.1〜16.6 Beta 4までは…
また、今回発表された全ての脆弱性は「iOS 16.5.1以下」で使用可能となっており、ベータ版で言えば「iOS 16.6 Beta 4まで」は使用できる模様。
そのため、今回発表された脆弱性すべての詳細やExploitコードなどが公開されれば、脱獄が可能になる可能性はある模様。
iOS 16.6以降は?
iOS 16.6以降に関しては、今回のKTRR Bypass以外に「カーネルExploit」と、KTRR Bypassを実行するためのトリガーとしてPAC(PPL) Bypassが必要となるようです。
また、A15以降のデバイス&iOS 17.0以降に関しては、更にSPTM Bypassが必要となる可能性が報告されています。
まだわからない部分も多い
The “KTRR bypass” might be unusable for jailbreaking :/ It seems like you can only write to the cache, not to the actual memory. (Source: https://t.co/SMQbxlMbtl) pic.twitter.com/3ImU89OgY8
— opa334 (@opa334dev) December 28, 2023
Opa334氏によると…「KTRR Bypassは脱獄に使えない可能性もある」とも報告されています。
ただ、あくまでこれは現在公開されている情報での予想…ということであり、発見者であるoct0xor氏からは「脱獄が行える」とも言われていたりもします。
この辺りについては第二報など、今後公開予定となっている更なる詳細を待つしかなさそうです。
〆
ということで、今回の発表ですぐに脱獄が来るか?というとそういうわけではなく、続報を待ちつつ待機…という部分に変わりがないことは注意が必要です。
ただ、多くの開発者さんのテンションが上がっているのを見る限り、今後の脱獄開発において新たなパーツとなり得る出来事…かもしれません。
コメント
過去最高の脆弱性や最高のクリスマスプレゼントなどとお祭り騒ぎになってますね。A17 17.0.2も可能性があるようなので期待です!
…詳しい詳細などについては後日公開するとのことなので、”大きに”動く可能性が…
脱獄可能となればルートフルの可能性が高いですよね?
カーネルレベルのバイパスなので
ルートレスとルートフルはこの話題には関係なくね
ios15以降のrootfu化はbindFSやfakeFS関連なので、全く関係ないですね
16.6.1じゃなく17.0にしたワイ歓喜
A15以降なら致命的だけどそうじゃないならあんまり関係なくないか
jailbreakmeみたいな激強ツールがいいな
ios14.8だけど、delayed otaでios17代にあげた方がいいですかね…?
17はキツめだからやめといた方がいい
いや判断遅い
待ってる
A9 15.8 以下も対応して
nekojb来たやん