OnePlus 8 ProのKirisakuraカスタムカーネルは、より良いセキュリティのために制御フロー整合性(CFI)を有効にします

スポンサーリンク

OnePlusの携帯電話は、主に開発者に優しい態度と、もちろん、その簡単なブートローダーロック解除ポリシーにより、いじくり屋の間で非常に人気があります。会社自体が実験することを恐れておらず、改造者は同じ考え方の流派を完全に受け入れています。たとえば、OnePlus電話は、XDAの豊富なアフターマーケット開発コミュニティの好意により、Energy Aware Scheduling(EAS)をサポートする非Pixelデバイスの最初の数台でした。これは、サードパーティのカーネルをカスタマイズして新しいパフォーマンス機能やセキュリティ対策を導入できるため、ここXDAで常に歓迎されている大きな理由です。

XDA認定の開発者Freak07は、桐桜カーネルのメンテナーとしてよく知られていますが、カスタムカーネルを通じてOnePlus 8 Proに気の利いたセキュリティ機能を導入しました。このメカニズムは、制御フロー整合性(CFI)と呼ばれ、ランタイム強化機能として設計されていますが、バグ検出ツールとして分類することもできます。

スポンサーリンク

制御フローの整合性とは何ですか?それは強化とどのように関連していますか?

悪用可能なコードを修正してセキュリティを向上させることは、カーネル開発の非常に重要な側面です。これは、とりわけ、毎月のAndroidセキュリティアップデートによって定期的に行われます。

ただし、ご存じのとおり、これらの更新プログラムは、すべてのOEMが希望どおりに定期的に展開することはできません。さらに、Androidカーネルは、ツリーの外にある数千および数千のコード行で構成されています。 Androidカーネルの複雑さとサイズ、およびAndroidエコシステムの多様性により、すべてのエクスプロイトを修正することは困難です。悪用可能なコードのすべての1行を修正する代わりに、既存のセキュリティバグを悪用不可能にすることで、システムを攻撃に対してより回復力のあるものにすることが有益です。この手法は硬化と呼ばれます。

ここで、制御フロー整合性(CFI)が役立ちます。CFIは、コンパイルされたバイナリの元の制御フローグラフへの変更を許可しないセキュリティメカニズムです。コードインジェクションを困難にする既存のメモリ保護のため、一般的な攻撃方法は、メモリに格納されている関数ポインタを上書きすることです。

コントロールフローの整合性についてもう少し詳しく説明する、Freak07による技術的な説明を次に示します。

CFIを公式にサポートしている唯一のAndroidスマートフォンモデル(私たちが知っている)は、Google Pixel 3およびPixel 4ファミリーです。開発者は、彼のカーネルが完全に機能するKernel-CFIを備えた数少ないカスタムカーネルの1つであることを教えてくれました。OnePlus 7 Proフォーラムには、Kernel-CFIとASUS ROG Phone II用のFreak07独自のKirisakuraカーネルをサポートする別のカーネルがありますが、OnePlus 8 Pro用の彼のカーネルリリースは、Linux搭載デバイス用の最初のカスタムカーネルですCFIを適用するカーネルバージョン4.19。

デバイスでAndroid 9 Pie以降を実行している場合は、Kernel-CFIの使用を強くお勧めします。OEMは最新のセキュリティアップデートより数か月遅れることがあり、私たちの電話は私たちの生活にますます接続され、貴重なプライベートデータを保持しているため、システムの強化に焦点を当てたセキュリティ機能は確かに私たちの個人用スマートフォンへの歓迎すべき追加です。ただし、Kernel-CFIよりも重要ではないにしても重要なカーネルセキュリティ機能は他にもあります。そのため、CFIをすべての欠陥から保護する魔法の弾丸にしないでください。

タイトルとURLをコピーしました