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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
PNGboomer-CVE-2026-77622 — Sliver HTTP(S) C2 PNG爆弾 DoS エクスプロイト — GHSA-663m-7x7m-g4fw (CVE-2026-77622) | Kitploit
ツール/GitHubGitHub/squ1shification/pngboomer-cve-2026-77622
脆弱性分析エクスプロイトペネトレーションテストコマンド&コントロールレッドチーミング
GitHubsqu1shification/pngboomer-cve-2026-77622

PNGboomer-CVE-2026-77622

Sliver HTTP(S) C2 PNG爆弾 DoS エクスプロイト — GHSA-663m-7x7m-g4fw (CVE-2026-77622)

リポジトリを見る
118時間28分前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

PNGboomer — CVE-2026-77622

Sliver C2のHTTP(S)リスナーに対するサービス拒否(DoS)エクスプロイト。セッションごとのPNGエンコードnonceをブルートフォースし、サーバーのメモリを枯渇させる解凍爆弾(decompression bomb)を送信します。

GHSA-663m-7x7m-g4fwとして公開されています。

概要

SliverのHTTP(S) C2チャネルは、メッセージをPNG画像内にラップします。各セッションには[1, 65537)の範囲のランダムなnonceが割り当てられ、サーバーは?n=クエリパラメータがセッションのnonceと一致するリクエストからのみPNGデータをデコードします。これは認証チェックではなくルーティングメカニズムであり、キースペースは16ビットです。

サーバーはGoのimage.Decode()でPNGをデコードし、メモリ上に幅 × 高さ × 1ピクセルあたりのバイト数を割り当てます。宣言された寸法が32767×32767のRGBA PNGファイルは、ワイヤー上では約3 KBに圧縮されますが、メモリ上では4 GB以上に解凍されます。サーバーはデコードされた寸法に制限を課しません。

このエクスプロイトは3つのフェーズで動作します:

  1. キャリブレーション(Calibrate) — 一致しないnonceを中程度の大きさのプローブPNGとともに送信し、ベースラインの応答時間を測定します。
  2. スキャン(Scan) — 全nonce範囲にわたってプローブPNGを送信します。一致するnonceはPNGデコードをトリガーし、拒否されたリクエストよりも測定可能なほど長い時間がかかります。候補は複数回の再プローブで検証されます。
  3. キル(Kill) — 発見したnonceで解凍爆弾PNGを送信します。サーバーは数ギガバイトを割り当て、OOMキラーに強制終了されるか、ホストをスワップに追い込んで応答不能にします。

影響を受けるバージョン

GHSA-663m-7x7m-g4fwで参照されている修正前のSliver C2バージョン。HTTPまたはHTTPSリスナーを実行しているすべてのSliverサーバーが影響を受けます。

ビルド

root@kitploit:~
go build -o pngboomer

外部依存関係はありません。標準ライブラリのみを使用します。

使用方法

root@kitploit:~
./pngboomer -url http://target:8080/ [オプション]

オプション

フラグデフォルト説明
-urlhttp://127.0.0.1:8080/Sliver HTTP C2ベースURL
-workers8スキャンの並行数
-probe-w2000プローブPNGの幅
-probe-h2000プローブPNGの高さ
-probe-color2プローブのカラータイプ(2=RGB、6=RGBA)
-kill-w32767キルPNGの幅
-kill-h32767キルPNGの高さ
-kill-color6キルのカラータイプ(2=RGB、6=RGBA)
-threshold-ms50nonce検出の最小応答時間フロア
-outlier-mult15.0適応しきい値 = ベースラインp99 × この値
-calibrate16キャリブレーションサンプル数
-verify3候補nonceあたりの再プローブ回数
-max-nonce65537nonce範囲の上限(Sliverの剰余)
-probe-timeout5sプローブごとのHTTPタイムアウト
-kill-timeout180sキルリクエストのHTTPタイムアウト
-target-cap-mb10240宣言されたターゲットメモリ上限(安全チェック)
-nonce0スキャンをスキップし、このnonceを直接使用
-scan-onlyfalsenonceを発見して出力するだけで、キルは送信しない
-no-confirmfalseキル後のターゲット死亡確認のためのTCPポーリングをスキップ
-no-colorfalseANSIカラー出力を無効化
-silentfalse発見したnonceのみをstdoutに出力

例

ローカルのDockerターゲットに対するデフォルトのスキャンとキル:

root@kitploit:~
./pngboomer -url http://127.0.0.1:8080/ -target-cap-mb 10240

スキャンのみ(キルせずにnonceを発見):

root@kitploit:~
./pngboomer -url https://c2.target.com/ -scan-only

nonceをすでに知っている場合にスキャンをスキップ:

root@kitploit:~
./pngboomer -url http://target:8080/ -nonce 41337

安全性

キル爆弾はターゲット上で数GBのPNGデコードを引き起こします。テスト時は、Sliverサーバーを--memory=<N>gを指定したDockerコンテナ内で実行し、-target-cap-mb Nを渡して、ターゲットのメモリを超える危険なワーカー/プローブの組み合わせをツールが拒否するようにしてください。

nonceスキャンの仕組み

プローブPNGは、デコードに間違ったnonceのサーバーの高速パス拒否よりも測定可能なほど長い時間がかかるほど十分に大きいです。スキャンはnonce範囲をシャッフルし、ワーカーゴルーチンに分散します。各ワーカーは候補nonceでプローブPNGを送信し、応答時間を測定します。

応答が適応しきい値(-threshold-msとbaseline_p99 × outlier-multの大きい方)を超えると、候補は-verify回再プローブされます。再プローブの過半数もしきい値を超えた場合、nonceが確定します。超えない場合、候補はブラックリストに登録され、スキャンが続行されます。スキャンが諦めるまでに、最大8つの誤検知「ブリップ」が許容されます。

開示

GitHubのプライベートアドバイザリプロセスを通じてBishop Foxに報告されました。CalebKinganがパッチを作成しました。

ツールをダウンロード