
“Is Your Git Service Safe? How a Gogs Path Traversal Vulnerability Enables Remote Code Execution (CVE‑2025‑8110) ” Feb 9, 2026 by Dr. Yunfei Ge より
背景
Gogsのパストラバーサル(経路横断)およびリモートコード実行の脆弱性は、セルフホスト型GitサービスであるGogs(Go Git Service)バージョン0.13.3以前に影響を与える重大な脆弱性です。
この脆弱性は2025年半ばに初めて悪用が確認され、その後急速に武器化され、観測された約1,400件のインスタンスのうち、公開されている700件以上のインスタンスが侵害されました。
実環境での攻撃が確認されたことを受け、米国サイバーセキュリティ・インフラストラクチャセキュリティ庁(CISA)は、この脆弱性を既知の悪用された脆弱性カタログ(Known Exploited Vulnerabilities:KEV)に追加して、連邦政府機関に対し、2026年2月2日までの修正を義務付けるとともに、一般の民間組織に対しても早急な対策を強く推奨しています。
根本原因
この問題は、GogsのPutContents APIにおけるシンボリックリンクの不適切な処理に起因しています。
APIはファイル名およびリポジトリパスを検証しますが、解決された対象がリポジトリディレクトリ外を指すシンボリックリンクであるかどうかは検証しません。
このシンボリックリンク処理の盲点により、書き込み操作がリポジトリの境界を越えることが可能になります。
OSがシンボリックリンクをたどると、攻撃者はホスト上の任意のファイルを上書きできるようになります。
この脆弱性は、関連するパストラバーサル脆弱性(CVE-2024-55947)に対して過去に提供された修正を回避します。
その修正では、直接的なディレクトリエスケープは対処されていましたが、シンボリックリンクの扱いは考慮されていませんでした。
攻撃チェーン
この攻撃には認証されたアクセスのみが必要であり、以下のシンプルなシーケンスに従います。
- 攻撃者は、新規アカウントを登録する(オープン登録が有効な場合)か、有効な認証情報を使用してログインする
- 認証後、攻撃者はリポジトリを作成し、リポジトリ外の機密ファイル(例:.git/config)を指す悪意のあるシンボリックリンクをコミットする
- 次に攻撃者はPutContents APIを使用し、シンボリックリンクのパス経由でコンテンツを書き込む
- Gogsはファイル名自体は検証するが、シンボリックリンクを解決しないため、OSが外部ターゲットファイルを上書きできる状態になる
- 悪意のある設定オプションが.git/configに挿入される
- Git操作がトリガーされる時に、サーバー上で任意のコマンドが実行される
- リバースシェルが確立され、攻撃者はシステムへの完全なインタラクティブアクセスを取得する
この攻撃チェーンにより、認証済みユーザーはリポジトリの分離を回避し、Gogsホスト上で完全なリモートコード実行が可能となります。
RidgeBotによる検出とエクスプロイト
以下のスクリーンショットは、RidgeBotが脆弱な挙動を検出し、エクスプロイトが成功したことを示しています。
リモートコード実行の証拠は、Gogsサーバーから攻撃者のシステムへのリバースシェルセッションとして確認できます。
このリバースシェルは完全なコマンド実行能力を示しており、攻撃者が任意のコマンドを実行し、侵害したホストを完全に制御できることを意味します。

対策
企業組織は、インターネットからのアクセスを制限し、オープン登録を無効化し、APIの利用を信頼できるユーザーのみに制限することで、脆弱性への露出を直ちに低減する必要があります。
恒久的な修正が適用されるまでの間は、シンボリックリンクの作成、不審なGit設定の変更、異常なコマンド実行を継続的に監視することが不可欠です。
この脆弱性は現在も積極的に悪用されているため、パッシブスキャンのみでは不十分です。RidgeBotはアクティブ検証を提供し、リモートコード実行経路を含む脆弱性の悪用可能性を安全に確認します。
これにより、セキュリティチームはパッチ適用を優先順位付けし、攻撃者が悪用する前に脆弱な環境を保護することが可能になります。
貴社のセキュリティ強化を支援する、RidgeBot®のご紹介もご覧ください。