
多くのLinuxカーネル(v5.14からv6.6、Debian、Ubuntu、KernelCTFを含む)で動作する、CVE-2024-1086 向けのユニバーサルローカル権限昇格Proof-of-Conceptエクスプロイトです。KernelCTFイメージでの成功率は99.4%です。
このエクスプロイトは、v5.14(含む)からv6.6(含む)までのバージョンに影響します。ただし、パッチ適用済みブランチ v5.15.149>、v6.1.76>、v6.6.15> は除外されます。これらのバージョン向けのパッチは2024年2月にリリースされました。根本的な脆弱性は、v3.15からv6.8-rc1までの全バージョン(パッチ適用済みの安定版ブランチを除く)に影響します。
注意事項:
CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y が設定された v6.4> カーネル(Ubuntu v6.5を含む)では動作しませんCONFIG_USER_NS=y)、そのユーザーネームスペースが非特権であること(shコマンド sysctl kernel.unprivileged_userns_clone = 1)、および nf_tables が有効であること(kconfig CONFIG_NF_TABLES=y)が必要です。デフォルトでは、これらはすべてDebian、Ubuntu、KernelCTFで有効です。他のディストリビューションはテストされていませんが、動作する可能性もあります。さらに、このエクスプロイトはx64/amd64でのみテストされています。デフォルト値は、ローカルシェルを使用するDebian、Ubuntu、KernelCTFでそのまま動作するはずです。テストされていないセットアップ/ディストリビューションでは、kconfigの値がターゲットカーネルと一致していることを確認してください。これらは src/config.h で指定できます。32GiBを超える物理メモリを搭載したマシンでエクスプロイトを実行する場合は、CONFIG_PHYS_MEM を増やしてください。SSH(テストマシンへの)またはリバースシェル経由でエクスプロイトを実行する場合は、不要なネットワークアクティビティを避けるために CONFIG_REDIRECT_LOG を 1 に切り替えることをお勧めします。
このソフトウェアディレクトリ/フォルダ/リポジトリ(以下「リポジトリ」)内のプログラムおよびスクリプト(以下「プログラム」)は、教育/研究目的のみで公開、開発、配布されています。私(以下「作成者」)は、このリポジトリ内のプログラムの悪意のある使用や違法な使用を容認しません。これは、研究を共有することが目的であり、違法行為を行うことではないためです。作成者は、このリポジトリ内のプログラムを使ってあなたが行ういかなる行為についても法的責任を負いません。