Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/c4dt/ubuntu-cve-2026
防御ツール脆弱性分析エクスプロイトユーティリティとフレームワーク
GitHubc4dt/ubuntu-cve-2026

ubuntu-cve-2026

IPv4のuse-after-free脆弱性CVE-2026-98432に対するアップストリームのkfree_rcu修正を含む、パッチ適用済みのUbuntuカーネル.debパッケージをビルドするシェルスクリプト。

リポジトリを見る
2日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-98432 に対応するパッチ適用済み Ubuntu カーネル

build-patched-kernel.sh は、CVE-2026-98432 のアップストリーム修正を含む Ubuntu カーネルの .deb パッケージをビルドします:

e3f33b0a1d89 "ipv4: free inet_opt and ireq_opt after an RCU grace period"

このバグは ip_options_build() における use-after-free です。ある CPU がまだ SYNACK を送信中である一方で、別の CPU が TCP ソケットの IPv4 オプションを解放してしまう可能性があります。この修正は、net/ipv4/af_inet.c と net/ipv4/tcp_ipv4.c 内の 2 か所の kfree() 呼び出しを kfree_rcu() に置き換えます。

スクリプトの動作

  1. 最初の引数からカーネルバージョンを取得します。引数が指定されない場合は uname -r から取得します (例: 6.8.0-45-generic)。
  2. deb-src リポジトリを有効化し、コンパイラとビルドツールをインストールします。
  3. apt-get source を使用して、このカーネルをビルドした Ubuntu ソースパッケージをダウンロードします。アーカイブにそのバージョンがもう存在しない場合は、Launchpad の pull-lp-source にフォールバックします。その後、ビルド依存関係をインストールします。
  4. 修正を適用します。Ubuntu カーネル間では周辺のコードが異なるため、アップストリームの diff を適用するのではなく、2 行を直接置き換えます。kfree_rcu() が NULL を受け付けない 5.7 より古いカーネルでは、NULL チェックを追加します。
  5. パッケージバージョンに +cve202698432.1 を付加します。これにより、新しいパッケージは同じ ABI を持つアーカイブのパッケージをアップグレードします。
  6. Ubuntu の debian/rules を使用してビルドし、.deb ファイルを ./debs-<version>/ にコピーします。

スクリプトを再度実行すると、ダウンロード済みのソースが再利用され、二重にパッチが適用されることはありません。

使用方法

Ubuntu マシン上で直接 (root または sudo で実行):

./build-patched-kernel.sh                    # uname -r のカーネル
./build-patched-kernel.sh 6.8.0-45-generic   # 特定のカーネル

Docker では、カーネルに一致する Ubuntu リリースを使用してください (6.8 なら noble、5.15 なら jammy)。コンテナ内の uname -r はホストのカーネルを表示するため、バージョンを明示的に指定してください:

docker run --rm -v "$PWD":/work -w /work -e WORKDIR=/build ubuntu:24.04 \
    ./build-patched-kernel.sh 6.8.0-45-generic

WORKDIR=/build はカーネルソースをコンテナ内に保持します。macOS のようにマウントされたディレクトリが大文字小文字を区別しない場合には、これが必要です。その他の設定 (OUTDIR、LOCAL_SUFFIX、SRC_PACKAGE/SRC_VERSION、JOBS) はスクリプトの冒頭で説明されています。

インストール

sudo apt install ./debs-<version>/linux-image-unsigned-<version>_*.deb \
                 ./debs-<version>/linux-modules-<version>_*.deb \
                 ./debs-<version>/linux-modules-extra-<version>_*.deb \
                 ./debs-<version>/linux-headers-*.deb
sudo reboot

カーネルイメージは署名されていません。また、署名済みの linux-image-<version> パッケージを置き換えます。Secure Boot が有効な場合は、独自の MOK キーでイメージに署名するか、Secure Boot を無効にしてください。

ツールをダウンロード