Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
DirtyFrag-go — dirtyfrag(CVE-2026-43284 / CVE-2026-43500)の Go 実装 | Kitploit
ツール/GitHubGitHub/nonameuserosint-hue/dirtyfrag-go
特権昇格エクスプロイトバイナリエクスプロイト
GitHubnonameuserosint-hue/dirtyfrag-go

DirtyFrag-go

dirtyfrag(CVE-2026-43284 / CVE-2026-43500)の Go 実装

リポジトリを見る
13ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

dirtyfrag-go

2つのバグ。1つのシェル。ディスク書き込みなし。

dirtyfrag(CVE-2026-43284 / CVE-2026-43500)のGo移植版です。

動作の仕組み(要約)

このバグクラスはLinuxカーネルのXFRMサブシステムに存在します。ファイルページがパイプにsplice()され、その後ESP暗号化ソケットに送られると、カーネルはESPペイロードをその場で復号化します - ソースファイルのページキャッシュページに直接書き込まれます。ファイルは読み取り専用です。しかしページキャッシュはそうではありません。

dirtyfragは、このプリミティブを悪用する2つの独立したバグを連鎖させます:

CVE-2026-43284 - ESP/XFRMパス

NETLINK_XFRM経由で48個のXFRMトランスポートモードSAをインストールします。各SAは、ESNリプレイ状態のseq_hiフィールドにシェルコードペイロードの4バイトをエンコードします。vmsplice + spliceチェーンは、各SAに対してESPのその場での復号化をトリガーし、その4バイトを/usr/bin/suのページキャッシュエントリに書き込みます。48回のトリガー、192バイトの書き込み、レースコンディションなし。

CVE-2026-43500 - RxRPC/rxkadパス

復号化した際に目的のバイト列を生成する3つのPCBC(fcrypt)セッションキーをオフラインで総当たりします。各キーに対してAF_RXRPCソケットトリガーを起動し、/etc/passwdのrootエントリをroot::0:0(nullok)にパッチします。その後、su -は空のパスワードを受け入れます。

両方のパスは、ホスト上でCAP_NET_ADMINを必要としないように、ユーザー名前空間+ネットワーク名前空間(CLONE_NEWUSER | CLONE_NEWNET)で実行されます。

使用方法

root@kitploit:~
go build -o dirtyfrag-go .
./dirtyfrag-go

# Force a specific path
./dirtyfrag-go --force-esp
./dirtyfrag-go --force-rxrpc

# Verbose output
./dirtyfrag-go -v

バイナリはまずESPパスを試行します。その後も/usr/bin/suがパッチされていない場合は、RxRPCパスにフォールバックします(最大3回の再試行)。成功すると、新しいPTYを介してrootシェルにドロップします。

クリーンアップ

このエクスプロイトはページキャッシュのみに触れます。ディスク上のバイナリと/etc/passwdは変更されません。再起動すればすべて元に戻ります。再起動せずにすぐに追い出すには:

root@kitploit:~
echo 1 | tee /proc/sys/vm/drop_caches

要件

  • Linux - パッチ未適用のカーネル(下記参照)
  • 外部ツールやプリビルドペイロード不要 - 純粋なGo、単一の静的バイナリ
  • カーネルモジュール:esp4、esp6(ESPパス)、および/またはrxrpc(RxRPCパス)

影響を受けるカーネル

パッチ適用前のすべてのカーネル:

  • CVE-2026-43284: https://lists.openwall.net/netdev/2026/05/06/112
  • CVE-2026-43500: https://lists.openwall.net/netdev/2026/05/06/114

緩和策

root@kitploit:~
rmmod esp4 esp6 rxrpc
printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' \
  > /etc/modprobe.d/dirtyfrag.conf

オリジナルとの比較

Goのランタイムは最初からマルチスレッドであるため、unshare(CLONE_NEWUSER)は許可されていません。Go移植版は、SysProcAttr.Cloneflagsを設定した子プロセスとして自身を再実行します。これにより、Goランタイムが初期化される前にclone()が呼び出されます。

参考

  • V4bel/dirtyfrag - オリジナルのC PoC
  • CVE-2026-43284 - NVD
  • CVE-2026-43500 - NVD

クレジット

  • V4bel - 脆弱性の発見とオリジナルPoC
ツールをダウンロード
C(オリジナル)Go
外部依存なしなし
単一ファイルいいえいいえ
静的バイナリはいはい
RxRPCパスはいはい
ESPパスはいはい
名前空間の分離unshare()Cloneflagsによる再実行