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

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

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

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

ツールディレクトリ

カテゴリ

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

Fragnesia-go

fragnesia(CVE-2026-46300)のGo実装

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

人気

すべて見る →

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

すべてのツールを探索

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

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

fragnesia-go

SA1つ。一度に1バイト。レースなし。

fragnesia(CVE-2026-46300)のGo移植版です。Dirty Frag脆弱性クラスの一員 - 別のバグ、同じ攻撃面、独自のパッチ。

動作の仕組み (tl;dr)

このバグはLinux XFRM ESP-in-TCPサブシステムに存在します。ファイルからTCP受信キューへデータがsplice()された後、ソケットにTCP_ULP espintcpがインストールされると、カーネルはキュー内のデータをESP暗号文レコードとして扱い、その場で復号します。このデータのソースはページキャッシュ内のページです。復号処理はAES-GCMキーストリームをそのページに直接XORします。

その結果、任意の読み取り可能ファイルのページキャッシュに対して、制御可能な1バイト書き込みが発生します。

キーストリームテーブル

AES-GCM(RFC 4106)のカウンタブロック位置2は[salt(4) || IV(8) || 0x00000002]です。これをセッションキーで暗号化すると16バイトのキーストリームブロックが得られます。このブロックのバイト0が対象バイトにXORされます。IVノンスの下位32ビットを変化させることで、最初の65536個のノンス内で256通りすべてのキーストリームバイト値に到達できます。エクスプロイトは起動時にAF_ALG AES-ECB経由でこのルックアップテーブルを一度だけ構築します。

バイトフリップループ

ペイロードの各バイトについて:

  1. ファイル(ページキャッシュ)から現在の値を読み取ります。
  2. needed_keystream = current XOR desired を計算します。
  3. そのキーストリームバイトに対応するノンスを検索します。
  4. IVを設定し、TCPトリガーペアを発火します(送信側はファイルページをソケットにspliceし、受信側はデータがキューに入るまでTCP_ULPのインストールを遅延させます)。
  5. 結果:current XOR keystream = current XOR (current XOR desired) = desired。

SAは1つ。最大192トリガー。決定的。

使い方

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

成功すると、新しいPTY経由でrootシェルに落ちます。ディスク上のバイナリは変更されません - ページキャッシュのみです。

クリーンアップ

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

要件

  • Linux - パッチ未適用のカーネル(下記参照)
  • 外部ツール不要 - 純粋なGo、単一の静的バイナリ
  • カーネルモジュール: esp6(トランスポートモード、IPv6ループバック)

影響を受けるカーネル

パッチ適用前のすべてのカーネル: https://lists.openwall.net/netdev/2026/05/13/79

dirtyfragと同じ範囲。

緩和策

dirtyfragと同じ:

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

dirtyfrag-goとの比較

参照

  • v12-security/pocs - fragnesia - オリジナルのC言語PoC
  • CVE-2026-46300 - Red Hat
  • カーネルパッチ

クレジット

  • William Bowling / V12 team - 脆弱性の発見とオリジナルPoC
ツールをダウンロード
dirtyfrag-gofragnesia-go
CVEsCVE-2026-43284 / CVE-2026-43500CVE-2026-46300
トランスポートESP-in-UDP + RxRPCESP-in-TCP (ULP)
書き込み粒度トリガーあたり4バイトトリガーあたり1バイト
XFRM SAs481
暗号方式HMAC-SHA256 + CBC-AESAES-128-GCM
IPファミリーIPv4IPv6