Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2025-59489 — Unityランタイムインジェクションの脆弱性CVE-2025-59489を検出する自動スキャナ。Android APKからUnityバージョンを抽出し、パッチ適用済みバージョンと照合してチェックします。バッチ処理とCI/CD統合に対応しています。 | Kitploit
ツール/GitHubGitHub/taptap/cve-2025-59489
Androidセキュリティ静的分析脆弱性スキャナーDevSecOpsモバイルセキュリティ
GitHubtaptap/cve-2025-59489

cve-2025-59489

Unityランタイムインジェクションの脆弱性CVE-2025-59489を検出する自動スキャナ。Android APKからUnityバージョンを抽出し、パッチ適用済みバージョンと照合してチェックします。バッチ処理とCI/CD統合に対応しています。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

Unity CVE-2025-59489 脆弱性検出ツール

Android ゲームプラットフォーム専用の Unity Runtime インジェクション脆弱性自動検出ツール。

脆弱性概要

  • CVE ID: CVE-2025-59489
  • CVSS スコア: 8.4 (High)
  • 影響範囲: Unity 2017.1 以降でビルドされた Android アプリ
  • 公式発表: https://unity.com/security/sept-2025-01

脆弱性の影響詳細

影響の上限(最悪のケース)

一言でまとめると:攻撃者は影響を受ける Unity ゲーム/アプリを完全に制御し、そのアプリのすべての権限を取得できます。

Android プラットフォームでの影響シナリオ

  1. ユーザーのスマートフォンに悪意のあるアプリ A がインストールされている
  2. ユーザーのスマートフォンには影響を受ける Unity ゲーム B もインストールされている
  3. 悪意のあるアプリ A は以下が可能:
    • ゲーム B になりすまして任意のコードを実行
    • ゲーム B がアクセスできるすべてのデータを窃取(セーブデータ、アカウント情報、写真、連絡先など)
    • ゲーム B のすべての権限を使用(カメラ、マイク、位置情報、ネットワークなど)

重要ポイント:Android では、悪意のあるアプリが Unity アプリが取得済みの権限を乗っ取ることができます

Windows プラットフォームでの影響シナリオ

  1. ユーザーが悪意のあるウェブリンクをクリックする
  2. パソコンに影響を受ける Unity ゲームがインストールされている場合
  3. 攻撃者は以下が可能:
    • リモートでゲームに悪意のあるコードの読み込みをトリガー
    • ゲームの権限で任意の操作を実行
    • ゲームがアクセスできるファイルやデータを窃取

重要ポイント:Windows では、ゲームがカスタム URI ハンドラーを登録している場合、特別に細工されたリンクをクリックするだけで脆弱性をトリガーできます

具体的な影響例

ゲームがこの権限を持つ場合攻撃者は可能
📸 カメラあなたを盗撮
🎤 マイクあなたを盗聴
📍 位置情報あなたを追跡
📱 連絡先あなたの連絡先を窃取
💾 ストレージファイルの読み取り/削除
💰 決済ゲーム内決済を不正利用
🔐 アカウントゲームアカウントを窃取

重要な制限

良い知らせ:攻撃者はアプリ自体の権限境界を突破できません

  • ❌ root 権限は取得できない
  • ❌ 他のアプリのデータにはアクセスできない(Android サンドボックス保護)
  • ❌ 攻撃されたアプリの身分でしか行動できない

悪い知らせ:多くのゲームは多数の権限(カメラ、マイク、ストレージ、位置情報など)を要求するため、攻撃者はこれらの権限を完全に悪用できます

ゲームプラットフォームへの影響

Android ゲームプラットフォーム運営者として、最悪の結果:

  1. ユーザーのプライバシー漏洩 → プラットフォームの評判低下
  2. 大規模なアカウント盗難 → ユーザー離れ
  3. 法的責任 → セキュリティ審査義務の不履行
  4. 経済的損失 → ユーザーからの賠償請求、規制当局の罰則

[出典:Unity 公式セキュリティ発表、GMO Flatt Security 技術分析]

クイックスタート

環境要件

# Python 3.7+ 標準ライブラリのみ必要、追加依存なし
python3 --version  # Python バージョンの確認

5 分で始める

# ステップ 1: テストを実行
python test_demo.py

# ステップ 2: 単一 APK を検出
python unity_vulnerability_checker.py your_game.apk

# ステップ 3: 一括検出
python unity_vulnerability_checker.py --batch /path/to/apks

# ステップ 4: 使用例を確認
python usage_examples.py

最も簡単な使用方法

from unity_vulnerability_checker import check_unity_vulnerability

# 単一の APK ファイルを検出
result = check_unity_vulnerability("your_game.apk")

# 方法 1: 便利なプロパティを使用
if result.is_vulnerable:
    print(f"⚠️  アプリが影響を受けています!({result.version})")
    print(f"推奨:{result.recommendation}")
elif result.is_safe:
    print(f"✅ アプリは安全です")
    print(f"理由:{result.message}")
else:
    print(f"❓ 手動確認が必要です")
    print(f"理由:{result.message}")

# 方法 2: status フィールドを使用
if result.status == "positive":
    print(f"影響あり:{result.version}")

ディレクトリ内のすべての APK を一括検出

from unity_vulnerability_checker import batch_check

# ディレクトリを一括スキャン
results = batch_check("/path/to/apk/folder")

# 影響を受けるアプリをフィルタリング
vulnerable_apps = [
    (name, result) 
    for name, result in results.items() 
    if result.is_vulnerable
]
print(f"{len(vulnerable_apps)} 個の影響を受けるアプリを発見")
for name, result in vulnerable_apps:
    print(f"  - {name}: {result.version}")

既存システムへの統合

from unity_vulnerability_checker import UnityVulnerabilityChecker

class MyPlatform:
    """あなたのゲームプラットフォームシステム"""

    def __init__(self):
        self.checker = UnityVulnerabilityChecker()

    def check_new_upload(self, apk_path: str) -> bool:
        """新しくアップロードされた APK をチェックし、公開可能かどうかを返す"""
        result = self.checker.check_apk(apk_path)

        if result.is_vulnerable:
            # 影響あり - 公開を拒否
            self.notify_developer(
                f"あなたのアプリは Unity の脆弱性の影響を受けています\n"
                f"バージョン:{result.version}\n"
                f"推奨:{result.recommendation}"
            )
            return False
        elif result.is_safe:
            # 安全 - 公開を承認
            return True
        else:
            # 判断不能 - 手動確認
            self.queue_manual_review(apk_path, result.message)
            return False

    def notify_developer(self, message: str):
        """開発者に通知(通知ロジックを実装)"""
        pass

    def queue_manual_review(self, apk_path: str):
        """手動確認キューに追加(ロジックを実装)"""
        pass

検出結果の説明

ツールは 3 種類の結果タイプを返します:

  • positive - 影響を確認(更新が必要)
  • negative - 安全(Unity アプリではない、または修正済み)
  • inconclusive - 判断不能(手動確認が必要)

出力例(単一行の簡潔な形式):

# 影響を受けるアプリ
⚠️  このアプリは CVE-2025-59489 の影響を受けています (Unity 2019.2.6f1)

# 安全なアプリ(3 つのケース)
✅ このアプリは安全です - Unity アプリではありません
✅ このアプリは安全です - Unity patcher ツールで修正済み
✅ このアプリは安全です - 修正済みバージョン (2019.4.41f1)

# 判断不能
❓ 判断不能 - Unity アプリですがバージョンを抽出できません。パッキングや難読化の可能性があり、手動確認を推奨します
⚠️  ファイルが大きすぎて処理できません (1500.0MB、制限 1024MB) - コードの 15 行目の MAX_APK_SIZE_MB をより大きな値に変更してください

プロジェクトファイル一覧

.
├── unity_vulnerability_checker.py  # コアモジュール
│   ├─ UnityVulnerabilityChecker クラス - 脆弱性検出コアエンジン
│   ├─ check_unity_vulnerability() - 簡略化された検出関数
│   ├─ batch_check() - 一括検出機能
│   └─ 完全なバージョン解析・判定ロジック
│
├── usage_examples.py               # 使用例
│   ├─ 基本的な使用例
│   ├─ 一括検出の例
│   ├─ プラットフォーム統合の例
│   ├─ 自動応答の例
│   └─ Flask API 統合の例
│
├── test_demo.py                    # テストデモ
│   ├─ バージョン番号解析テスト
│   ├─ バージョン抽出テスト
│   ├─ 修正判定テスト
│   ├─ APK スキャンシナリオシミュレーション
│   └─ パフォーマンスベンチマークテスト
│
├── test_version_detection.py       # ユニットテスト(33 テストケース)
│
├── README.md                       # 完全なドキュメント(クイックスタートガイドを含む)
│
└── CLAUDE.md                       # 開発規約

コア機能

APK 検出

  • Unity アプリの自動識別
  • Unity バージョン番号の抽出
  • CVE-2025-59489 の影響を受けるかどうかの判定
  • 3 種類の検出結果を返す:positive(影響あり)、negative(安全)、inconclusive(手動確認が必要)

一括処理

  • ディレクトリの一括スキャン対応
  • 統計レポートの生成
  • 大規模なアプリ審査に最適

統合が容易

  • シンプルな API インターフェース
  • コマンドラインツール
  • 既存システムへの組み込みが可能

使用ガイド

コマンドラインでの使用

# 単一ファイルの検出
python unity_vulnerability_checker.py game.apk

# 詳細ログモード
python unity_vulnerability_checker.py game.apk -v

# ディレクトリの一括検出
python unity_vulnerability_checker.py --batch /path/to/apk/folder

# 一括検出(詳細モード)
python unity_vulnerability_checker.py --batch /path/to/apk/folder -v

一括スキャンとレポート生成

from unity_vulnerability_checker import batch_check

results = batch_check("/path/to/apk/directory", verbose=True)

# 影響を受けるアプリをフィルタリング
vulnerable = {name: result for name, result in results.items()
              if result.is_vulnerable}

print(f"{len(vulnerable)} 個の影響を受けるアプリを発見")

審査システムへの統合

from unity_vulnerability_checker import UnityVulnerabilityChecker

class AppReviewSystem:
    def __init__(self):
        self.checker = UnityVulnerabilityChecker(verbose=False)

    def review_upload(self, apk_path: str) -> str:
        result = self.checker.check_apk(apk_path)

        if result.is_vulnerable:
            return "REJECT"  # 公開を拒否
        elif result.is_safe:
            return "APPROVE"  # 承認
        else:
            return "MANUAL_REVIEW"  # 手動確認

reviewer = AppReviewSystem()
decision = reviewer.review_upload("new_game.apk")

Flask API 統合

from flask import Flask, request, jsonify
from unity_vulnerability_checker import check_unity_vulnerability

app = Flask(__name__)

@app.route('/api/scan', methods=['POST'])
def scan_apk():
    file = request.files['file']
    temp_path = f"/tmp/{file.filename}"
    file.save(temp_path)

    result = check_unity_vulnerability(temp_path)

    # to_dict() メソッドを使用して直接 JSON に変換
    response = result.to_dict()
    response["filename"] = file.filename
    response["vulnerable"] = result.is_vulnerable
    
    return jsonify(response)

検出原理

検出ロジックのフローチャート

ツールをダウンロード