このリポジトリには、Termix の格納型クロスサイトスクリプティング (XSS) 脆弱性に対する Proof of Concept (PoC) エクスプロイトが含まれています。この脆弱性は、Electron 環境でのローカルファイルインクルージョン (LFI) やセッションハイジャックにつながる可能性があります。
dangerouslySetInnerHTML を使用した SVG ファイルの安全でないレンダリング。requestsPython の依存関係をインストール:
python3 -m venv .venv
source .venv/bin/activate
pip3 install requests
ターゲットアプリケーション (Termix) をセットアップ: 脆弱性のあるバージョンの Termix (Release 1.9.0) を展開済みであることを確認してください。 注: このエクスプロイトは Termix Release 1.7.0 - 1.9.0 で動作するように設計されています。
wget https://github.com/Termix-SSH/Termix/archive/refs/tags/release-1.9.0-tag.zip
unzip release-1.9.0-tag.zip
ターミナル 1 (バックエンド):
cd Termix-release-1.9.0-tag
npm install
npm run dev:backend
バックエンドサーバーが完全に起動するまで待ちます。
ターミナル 2 (フロントエンド/Electron):
cd Termix-release-1.9.0-tag
npm run electron:dev
Termix アプリケーションのウィンドウが開きます。
SSH アクセス (Localhost) をセットアップ:
このエクスプロイトは、被害者の SSH サーバーに接続して悪意のあるファイルをアップロードします。
ポート 22 で SSH サーバーが実行されていることを確認するか、それに合わせてスクリプトを調整してください。
デフォルト設定では、提供された authorized key (またはパスワード) を持つユーザー kali が使用されます。
エクスプロイトスクリプトを実行: 新しいターミナルを開いて実行します:
python3 exploit.py --user 'USERNAME' --pass 'PASSWORD'
注: 指定するデータは、デフォルトの認証情報または自分で登録した認証情報と一致している必要があります。
XSS をトリガー:
/home/kali (またはファイルがアップロードされた場所) に移動します。cookie_stealer.svg をクリックして表示します。成功を確認:
localStorage から) と Cookie が表示されます。exploit.py)このスクリプトは次のアクションを実行します:
localhost を指す管理対象 SSH ホストエントリを作成します (生成された SSH キーを使用)。cookie_stealer.svg) をアップロードします。
<foreignObject> を使用して SVG 内に HTML/JS を埋め込みます。<img src="https://raw.githubusercontent.com/themehackers/cve-2026-22804/HEAD/x" onerror="..."> はレンダリング時に即座に実行をトリガーします。免責事項: このコードは教育およびテスト目的のみで使用してください。所有していない、またはテスト許可を得ていないシステムに対して使用しないでください。