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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
svg_phishing_tools — 一般的に見られるSVG添付フィッシングの解析・生成ツール | Kitploit
ツール/GitHubGitHub/hackinglz/svg_phishing_tools
偵察静的分析動的分析 (サンドボックス)情報収集フィッシングウェブセキュリティマルウェア分析脅威インテリジェンス
GitHubhackinglz/svg_phishing_tools

svg_phishing_tools

一般的に見られるSVG添付フィッシングの解析・生成ツール

リポジトリを見る
57711ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

SVG セキュリティ解析ツールキット - ツールドキュメント

このツールキットには、悪意のある可能性のある SVG ファイルを解析し、セキュリティメカニズムを検出するための専門的な Python ツールが含まれています。

概要

このツールキットは、主に 4 つのツールで構成されています:

  1. extract.py - 難読化された URL 抽出のための静的解析
  2. extract_dynamic.py - box-js を使用した JavaScript 実行のための動的解析
  3. cf_probe.py - Cloudflare 保護の検出(Turnstile、CAPTCHA など)
  4. encoder.py - 難読化された SVG サンプルを作成するためのテストケースジェネレーター

ツール #1: extract.py - 静的 SVG URL 抽出ツール

目的

コードを一切実行せずに、悪意のある SVG ファイルから難読化された URL をデコードするパターンベースの静的解析ツールです。これは初期解析においてより安全なオプションです。

主な機能

  • XOR デコード: XOR 暗号化されたペイロードの自動検出とデコード
  • 文字演算: 数値計算を伴う String.fromCharCode パターンのデコード
  • Base64 抽出: Base64 エンコードされた URL の検出とデコード
  • メールアドレス検出: URL 連結に使用されるメールアドレスの識別
  • 複数の難読化戦略: さまざまな難読化解除テクニックを処理

使用方法

root@kitploit:~
# 単一の SVG ファイルを解析する
python3 extract.py -i malicious.svg

# デコードされた JavaScript を表示する詳細出力
python3 extract.py -i malicious.svg -v

# 詳細な解析手順を示すデバッグモード
python3 extract.py -i malicious.svg -d

# 標準入力から読み込む
python3 extract.py < malicious.svg

主な検出パターン

  1. Secretkey XOR パターン: String.fromCharCode(115,101,99,...)("secretkey")を検出
  2. XOR ループ検出: parseInt と XOR 演算を伴う for ループを識別
  3. Data URI スクリプト: data: URI から Base64 コンテンツを抽出してデコード
  4. ネストされた atob() + 変数: atob("base64") + variableName パターンを処理

依存関係

  • Python 3.6+(標準ライブラリのみを使用)

出力例

root@kitploit:~
DYNAMIC SVG URL EXTRACTOR
=========================================================
SVG #1 Results:
----------------------------------------
Obfuscation: XOR decoding (key length: 9)
Extracted URLs:
  → https://malicious.example.com/[email protected]

ツール #2: extract_dynamic.py - 動的 SVG JavaScript アナライザー

目的

box-js を使用して SVG ファイルに埋め込まれた JavaScript を抽出・解析する高度な動的解析ツールです。このツールはサンドボックス環境で JavaScript を実行し、複雑な難読化によって構築された場合でも最終的な完全な URL を抽出するように設計されています。

主な機能

  • JavaScript 実行: box-js を使用して SVG スクリプトを安全に実行
  • 高度なフックシステム: 包括的なモニタリングを備えた 300 行以上の JavaScript ペイロード
  • URL 構築追跡: 文字列連結を通じて動的に構築された URL をキャプチャ
  • 最終 URL の優先順位付け: 完全な URL と部分的なコンポーネントを区別
  • ActiveX/WScript モニタリング: 特殊な Windows スクリプトオブジェクトの検出
  • 複数シンク検出: location、window.open、fetch、XHR、Image.src などを監視

依存関係

root@kitploit:~
# 必須: box-js をグローバルにインストールする必要があります
npm install -g box-js

# Python の要件(任意)
pip install -r requirements.txt

使用方法

root@kitploit:~
# 単一の SVG の基本解析
python3 extract_dynamic.py -i malicious.svg

# カスタム出力ディレクトリを指定して解析
python3 extract_dynamic.py -i malicious.svg -o analysis_results

# 拡張タイムアウトで SVG のディレクトリを解析
python3 extract_dynamic.py -i svg_samples/ -t 60

# デバッグ用に一時ファイルを保持
python3 extract_dynamic.py -i malicious.svg --keep-temp

# URL ブロックリストをファイルに保存
python3 extract_dynamic.py -i malicious.svg --blocklist-out urls.txt

# プライバシー保護のためメールアドレスをマスク
python3 extract_dynamic.py -i malicious.svg --mask-emails

高度な機能

フックシステム(PRELUDE_JS)

このツールは、以下をフックする包括的な JavaScript ペイロードを注入します:

  • ロケーション操作: location.href、location.assign()、location.replace()
  • ウィンドウメソッド: window.open()、ナビゲーションメソッド
  • HTTP リクエスト: fetch()、XMLHttpRequest.open()
  • 文字列操作: String.prototype.concat、文字列操作
  • デコーダー: atob()、decodeURI()、unescape()
  • 動的実行: eval()、Function()、setTimeout()

パターン認識

以下を自動的に検出して処理します:

  • 単純な 16 進デコードパターン
  • 16 進エンコードされた動的実行
  • XOR + 動的 eval 構築
  • 文字マッピング + find() 実行
  • 算術文字コードパターン
  • 一般的な難読化テクニック

出力例

root@kitploit:~
=== Processing: malicious.svg ===
  Wrote temp JS -> /tmp/boxjs_svg_ABC/test.boxed.js
  Running box-js (timeout 30s) with sink hooks...
  [+] box-js finished. Results in: boxjs_out/malicious.svg.boxjs_results

  *** FINAL COMPLETE URLs FOUND ***:
    → https://evil.example.com/[email protected]
  
  Emails found:
    → [email protected]

=== FINAL ANALYSIS SUMMARY ===
🎯 COMPLETE URLs EXTRACTED (1 total):
======================================================
  → https://evil.example.com/[email protected]
======================================================

ツール #3: cf_probe.py - Cloudflare 保護検出

目的

リダイレクトチェーン全体にわたって Turnstile、CAPTCHA システム、ブラウザ検証、その他の保護手段を含む Cloudflare セキュリティメカニズムを検出するための Web 偵察ツールです。

主な機能

  • リダイレクトチェーン追跡: HTTP リダイレクトと meta-refresh リダイレクトを自動的に追跡
  • 複数の検出パターン: さまざまな方法で Turnstile を検出
  • JavaScript ファイルスキャン: リンクされた JS ファイルを解析して追加のサイトキーを検出
  • 圧縮サポート: gzip、deflate、brotli 圧縮を処理
  • 包括的な保護検出: 複数の Cloudflare 保護タイプを識別

依存関係

root@kitploit:~
pip install requests
pip install brotli  # brotli サポート用(任意)

使用方法

root@kitploit:~
# Cloudflare 保護について単一の URL を確認
python3 cf_probe.py https://example.com

# JavaScript ファイル解析を伴うスキャン
python3 cf_probe.py https://example.com --scan-js

# ファイルから複数の URL を処理
python3 cf_probe.py -i urls.txt

# カスタム User-Agent とタイムアウト
python3 cf_probe.py https://example.com -A "Custom-Agent" -t 30

# TLS 検証を無効化(テスト用)
python3 cf_probe.py https://example.com --insecure

# 分析用に HTML/JS をダンプ
python3 cf_probe.py https://example.com --dump analysis_dump/

検出機能

Turnstile 検出

  • data-sitekey 属性
  • turnstile.render() JavaScript 呼び出し
  • turnstile.create() JavaScript 呼び出し
  • Turnstile API スクリプト参照
  • cf-turnstile CSS クラス

その他の Cloudflare 保護

  • カスタム CAPTCHA システム
  • ブラウザ検証ページ
  • CF チャレンジコンテナ
  • CF ヘッダー(CF-Ray、サーバーヘッダー)
  • DDoS 保護メッセージ

出力例

root@kitploit:~
=== Redirect/Navigation Chain (3 steps) ===

[0] URL: https://example.com
    Status: 301
    Cloudflare Protection: YES (CF Headers)
    CF Header: cf-ray: 123abc456def789

[1] URL: https://protected.example.com
    Status: 200
    Cloudflare Protection: YES (Turnstile, Custom CAPTCHA)
    Turnstile Site key(s): 0x1AAA000000000000000
    CAPTCHA Evidence: Click the computer to verify

=== Summary ===
Cloudflare Protection Detected: Turnstile with key(s): 0x1AAA000000000000000 | Custom CAPTCHA

ツール #4: encoder.py - SVG テストケースジェネレーター

目的

解析ツールをテストするためのさまざまなエンコーディングパターンを備えた難読化された SVG ファイルを生成します。

主な機能

  • 複数の難読化パターン: 6 つの異なるエンコーディングテクニック
  • 動的な可変性: ランダム化された変数名、構造、エンコーディングパラメータ
  • 現実的なテストデータ: ランダムなドメインとメールアドレスを生成
  • バッチ生成: 完全なテストスイートを作成可能

使用方法

root@kitploit:~
# 単一のパターンを生成
python3 encoder.py -u "https://evil.com/c2" -p 1 -o test.svg

# ディレクトリにすべてのパターンを生成
python3 encoder.py --random-all -o test_patterns/

# カスタムメールアドレス
python3 encoder.py -u "https://evil.com" -e "[email protected]" -p 3 -o custom.svg

難読化パターン

  1. XOR + Proxy パターン: ES6 Proxy を使用した拡張 XOR エンコーディングによる実行
  2. Hex 関数パターン: Function コンストラクタによる 16 進エンコードされた動的実行
  3. オブジェクトキーパターン: オブジェクトプロパティを使用した XOR + 動的 eval 構築
  4. 文字マッピングパターン: Array.find() 実行による文字マッピング
  5. 算術パターン: 算術文字コードの評価
  6. Data URI パターン: data URI 内の Base64 エンコードされたスクリプト

出力例

root@kitploit:~
$ python3 encoder.py --random-all -o test_suite/
Generated xor_proxy_enhanced: test_suite/pattern_01_xor_proxy_enhanced.svg
  URL: https://r4nd0m.example.com/[email protected]

Generated hex_function: test_suite/pattern_02_hex_function.svg  
  URL: https://evil-site.org/[email protected]

[... 4 more patterns ...]

テストワークフロー

推奨される解析ワークフロー:

root@kitploit:~
# ステップ 1: テストケースを生成
python3 encoder.py --random-all -o test_cases/

# ステップ 2: 最初に静的解析(より安全)
python3 extract.py -i test_cases/pattern_01_*.svg -v > static_results.txt

# ステップ 3: 動的解析(隔離環境で)
python3 extract_dynamic.py -i test_cases/ -o dynamic_results/ --blocklist-out malicious_urls.txt

# ステップ 4: 抽出された URL の Cloudflare 保護を検証(安全な場合のみ)
python3 cf_probe.py -i malicious_urls.txt

インストール

root@kitploit:~
# ツールキットをクローンまたはダウンロード
cd svg_tools/

# Python の依存関係をインストール
pip install -r requirements.txt

# box-js をグローバルにインストール(動的解析用)
npm install -g box-js

# インストールを確認
python3 extract.py --help
python3 extract_dynamic.py --help
python3 cf_probe.py --help
python3 encoder.py --help
ツールをダウンロード