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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-60004-Gitea-Validator — 🫖 Gitea CVE-2026-60004 の契約関連検出および認可済み検証ツール | Kitploit
ツール/GitHubGitHub/infosec-db/cve-2026-60004-gitea-validator
偵察脆弱性スキャナーエクスプロイトウェブセキュリティペネトレーションテスト
GitHubinfosec-db/cve-2026-60004-gitea-validator

CVE-2026-60004-Gitea-Validator

🫖 Gitea CVE-2026-60004 の契約関連検出および認可済み検証ツール

リポジトリを見る

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
11時間30分前未レビュー

🫖 CVE-2026-60004 Gitea Validator

Gitea diffpatch Gitフックリモートコード実行脆弱性に対する、スタンドアロンの発見・評価・契約連携検証ツールです。

Python 3.10+ License: MIT CVE

scanner.py は、ペネトレーションテスター、防御担当者、セキュリティ研究者に、依存関係のない単一ツールを提供します:

  • 🔎 LeakIXの既存インデックスを通じたパッシブなGitea発見
  • 🧭 単一ターゲットの公開ルートおよびSwagger偵察
  • 🩺 非破壊的なバージョン評価
  • 🧪 制限付き・認証済みの概念実証検証
  • 🧾 契約連携JSONエビデンスおよびコマンド出力の取得
  • 🛡️ 単一ターゲット制御、バージョンゲート、プライベート出力ファイル、同一オリジン資格情報処理

⚠️ 法的および倫理的免責事項

このプロジェクトは、認可されたセキュリティテスト、防御的検証、研究、教育のみを目的として提供されています。アクティブモードは、所有しているシステム、または明示的な書面による許可を得たシステムに対してのみ実行してください。適用されるすべての法律、契約、交戦規則、開示要件を遵守する責任は利用者にあります。

著者および貢献者は、誤用、損害、サービス中断、データ損失、法的結果について責任を負いません。アクティブPoCはGiteaオペレーティングシステムユーザーとしてコマンドを実行し、プライベートリポジトリを作成することでサーバー状態を変更します。他のRCE検証ツールと同様に扱ってください。

🧠 脆弱性の概要

CVE-2026-60004はGiteaのリポジトリ diffpatch ワークフローに影響します。リポジトリ書き込み権限を持つユーザーは、共有ベア一時クローンにGitフックをインストールする制御されたパッチコンテンツを送信できます。細工されたパッチを2回適用するとadd/add衝突が発生し、Giteaサービスアカウントとしてフックが実行されます。

Forgejoおよび他のフォークは自動的に脆弱性ありとは分類されません。それらの実装は個別にレビューする必要があります。

✨ 各モードの機能

アクティブモードはターゲットリストやワイルドカードを受け付けません。

📦 要件

  • Python 3.10以降
  • PATH で利用可能なGit
  • 明示的に選択したGiteaターゲットへのネットワークアクセス
  • 有効なGitea資格情報、または明示的に承認された自己登録
  • アクティブテスト用の書面による認可/契約参照
  • オプション: discover 用のLeakIX APIキー

スキャナーはPythonの標準ライブラリのみを使用します。pip install は不要です。

🚀 インストール

root@kitploit:~
git clone https://github.com/InfoSec-DB/CVE-2026-60004-Gitea-Validator.git
cd CVE-2026-60004-Gitea-Validator
python3 scanner.py --help

🩺 非破壊的チェックから開始

報告されたバージョンの確認

root@kitploit:~
python3 scanner.py verify \
  https://gitea.example \
  --contract-number ENG-2026-001 \
  --output evidence/version.json

公開ルートとSwaggerメタデータの一覧化

root@kitploit:~
python3 scanner.py recon \
  https://gitea.example \
  --contract-number ENG-2026-001 \
  --output evidence/recon.json

バージョン検出は評価シグナルであり、悪用可能性の証明ではありません。バックポートパッチ、カスタムビルド、リバースプロキシ、フォークは手動レビューが必要な場合があります。

🧪 認可されたアクティブ確認

既存の承認済みテストアカウント

シェル履歴にパスワードを残さないよう、コマンドの環境変数に配置してください:

root@kitploit:~
GITEA_PASSWORD='replace-with-approved-test-password' \
python3 scanner.py confirm \
  https://gitea.example \
  --contract-number ENG-2026-001 \
  --username audit-user \
  --execute-poc \
  --write-client-marker \
  --output evidence/confirmation.json

自動化用に --yes-i-am-authorized を指定しない限り、confirm は契約に基づく確認フレーズの入力を求めます。デフォルトのリモートコマンドは id です。

使い捨て自己登録

これは、交戦規則でアカウント作成が許可されている場合にのみ使用してください:

root@kitploit:~
python3 scanner.py confirm \
  https://gitea.example \
  --contract-number ENG-2026-001 \
  --register-test-account \
  --credential-log evidence/credentials.txt \
  --execute-poc \
  --write-client-marker \
  --output evidence/confirmation.json

パスワードはプライベート資格情報ログにのみ保存され、JSONエビデンスやターミナル結果パネルには複製されません。

ワンコマンドテストプロファイル

root@kitploit:~
python3 scanner.py test \
  https://gitea.example \
  --contract-number ENG-2026-001

🚨 test はアクティブな便利コマンドです。登録が有効な影響を受けるターゲットでは、自動的にアカウントとプライベートリポジトリを作成し、契約マーカーを書き込み、id を実行し、結果を afterdark-results/ の下に保存します。追加の対話プロンプトは意図的にないため、実行自体が認可の確認となります。

カスタムコマンド

狭い範囲で明示的に承認された検証の場合、confirm と test は --cmd を受け付けます。十分な場合はデフォルトの id プロファイルを優先してください。

root@kitploit:~
GITEA_PASSWORD='replace-with-approved-test-password' \
python3 scanner.py confirm \
  https://gitea.example \
  --contract-number ENG-2026-001 \
  --username audit-user \
  --execute-poc \
  --cmd 'uname -a' \
  --output evidence/confirmation.json

🌐 パッシブLeakIX発見

root@kitploit:~
export LEAKIX_API_KEY='replace-with-your-key'
python3 scanner.py discover \
  --method app \
  --pages 3 \
  --output evidence/leakix.json

既知の1つのホストについて、そのホストに接触せずにLeakIXレコードを検査する場合:

root@kitploit:~
python3 scanner.py discover \
  --method host \
  --target gitea.example \
  --pages 1 \
  --output evidence/leakix-host.json

発見結果はリードであり、リストされたシステムのスキャンや悪用の認可ではありません。

🔬 組み込みPoCの仕組み

  1. 報告された製品/バージョンがアクティブテストゲートを通過することを確認します。
  2. 承認済みアカウントで認証するか、明示的に要求された場合に使い捨てアカウントを1つ作成します。
  3. デフォルトブランチで初期化された一意の名前のプライベートリポジトリを作成します。
  4. 実行可能な hooks/post-index-change ファイルを追加するパッチを構築します。
  5. パッチをリポジトリ diffpatch APIエンドポイントに2回送信します。
  6. フックが選択したコマンドを実行し、その結合出力をGitオブジェクトに書き込みます。
  7. 一時Gitクライアントが一意の出力参照をフェッチします。
  8. スキャナーはプライベート 0600 ファイルを使用して契約連携エビデンスを書き込み、既存のエビデンスの上書きを拒否します。

認証済みHTTPリダイレクトは選択したターゲットオリジンに制限されます。Git出力取得も、認証ヘッダーがアクティブな間はリダイレクトを無効にします。

🧾 エビデンスと機密データの取り扱い

アクティブ実行では以下が生成される可能性があります:

  • confirmation.json — タイムスタンプ、ターゲット、アカウント名、バージョン評価、リターンコード、取得出力
  • confirmation.command-output.txt — 完全なリモートコマンド出力
  • credentials.txt — 要求された場合の生成済み使い捨てアカウントパスワード
  • embedded-result.txt コンテンツはJSONエビデンス内に保持

これらのファイルには機密のエンゲージメントデータが含まれる場合があります。これらは同梱の .gitignore で無視され、モード 0600 で作成され、エビデンス取り扱いポリシーに従って保存時に暗号化する必要があります。

🧹 クリーンアップチェックリスト

このツールは、エビデンスをレビュー可能な状態に保つため、自動削除を意図的に回避します。テスト後、ターゲット管理者は以下を行う必要があります:

  • 作成された場合、生成された audit-* アカウントを削除
  • 生成されたプライベート afterdark-* リポジトリを削除
  • オプションの /tmp/gitea-validation-*/client.txt マーカーを削除
  • ローカルの資格情報とエビデンスを安全にアーカイブまたは削除
  • Giteaを 1.27.1 以降にアップグレード
  • 修正を確認するために必要な最小限の安全な検証のみを再実行

PoC実行の成功は、Giteaサービスアカウントとしてのコマンド実行を示します。それ自体がルートアクセス、永続化、横移動、または基盤ホストの侵害を証明するものではありません。

🛡️ 安全制御

  • 正確な単一ターゲットURLのみ; ワイルドカードやターゲットファイルはサポートされません
  • User-Agentとオプションマーカーに契約番号を含む
  • アクティブバージョンゲートが既知の修正済みリリースをブロック
  • デフォルトコマンドは id または whoami に制限
  • confirm 用の明示的な --execute-poc スイッチ
  • 自己登録はオプトインであり、無効時はスキップ
  • 認証済みHTTPリクエストの同一オリジンリダイレクト強制
  • 資格情報付き出力取得中のGitリダイレクト無効化
  • 資格情報はメモリ/環境で子プロセスに渡され、取得出力から編集
  • プライベート、排他作成エビデンスファイル; 既存ファイルは決して上書きされません
  • 180秒の子プロセスタイムアウトと制限付き出力取得

✅ テストの実行

同梱のテストはローカルで実行され、ネットワークリクエストを行いません:

root@kitploit:~
python3 -m unittest discover -s tests -v

🤝 貢献

責任ある改善を歓迎します—特に互換性修正、誤検知の削減、エビデンス品質の向上、より安全なクリーンアップワークフローです。実際のターゲット詳細、資格情報、プライベートエビデンス、または武器化されたペイロードを提出しないでください。

このツール自体のセキュリティ問題については、SECURITY.md に従ってください。

📚 参考文献とクレジット

  • 公式Giteaアドバイザリ: GHSA-rcr6-4jqh-j84m
  • Giteaリリース
  • 上流アドバイザリでクレジットされたCVE報告者: NightRang3r
  • バリデータ保守: AfterDark Security Research Group

優れたPoCは再現可能で、帰属可能で、クリーンアップが退屈であるべきだと信じる慎重な研究者のために作られました。🛡️

ツールをダウンロード
項目詳細
製品Gitea
影響を受けるリリース>= 1.17.0, < 1.27.1
修正済みリリース1.27.1
影響Gitea OSユーザーとしてのリモートコマンド実行
必要なアクセス権リポジトリ書き込みアクセス; オープン登録により攻撃者が作成できる可能性あり
アドバイザリGHSA-rcr6-4jqh-j84m
モードネットワーク動作ターゲット状態を変更?目的
discoverLeakIXのみにクエリいいえ既存のサードパーティインデックスを検索; 発見されたホストには接触しません
recon正確に1つのターゲットいいえ固定公開ルートとターゲット公開Swaggerドキュメントを一覧化
verify正確に1つのターゲットいいえ/api/v1/version を読み取り、報告されたGiteaバージョンを分類
test正確に1つのターゲットはい便利フロー: バージョンゲート、登録確認、使い捨てアカウント、マーカー、id、エビデンス
confirm正確に1つのターゲットはい承認済みアカウントまたは明示的な使い捨て登録による制御された確認