Gogsにゼロデイ脆弱性、認証ユーザーがRCE可能に|パッチ未提供でMetasploit公開

Rapid7のシニアセキュリティ研究者ジョナ・バージェスが、セルフホスト型GitサービスGogsに未修正のゼロデイ脆弱性を発見した。

これは引数インジェクションの脆弱性で、最新版のGogs 0.14.2および0.15.0+devに影響し、CVE IDはまだ割り当てられていない。デフォルト設定ではオープン登録が有効なため、管理者権限を持たないユーザーがアカウントとリポジトリを作成し、「Rebase before merging」の操作を通じて--execフラグを注入することで、サーバー上でリモートコード実行が可能になる。

バージェスは3月17日にGogsのメンテナーへ報告し、メンテナーは3月28日に受領を認めたが、修正パッチは提供されていない。Shadowserverは2,400台超、Shodanは1,000件強の公開サーバーを確認しており、その大半はアジア(1,894台)とヨーロッパ(319台)にある。先行するCVE-2025-8110については、CISAが1月12日にKEVカタログへ追加した。

From: New Gogs zero-day flaw lets hackers get remote code execution

【編集部解説】

今回の脆弱性が厄介なのは、「攻撃に高度な権限も特殊な踏み台も要らない」という点に尽きます。Gogsは初期設定のまま立ち上げると、誰でもアカウントを作れる「オープン登録」が有効で、しかもリポジトリの作成数に上限がありません。つまり攻撃者は、誰かを騙す必要も、管理者を狙う必要もなく、自分のアカウントと自分のリポジトリの中だけで攻撃を完結できてしまいます

技術的な核心は「引数インジェクション」と呼ばれる古典的な弱点にあります。Gogsはプルリクエストを処理する際、ブランチ名を git rebase コマンドへほぼそのまま渡しており、オプションの終わりを示す -- 区切りを入れ忘れていました。このため、ブランチ名そのものをコマンドの命令文として誤認させることができます。Rapid7はこの脆弱性をCVSSv4で9.4(緊急)と評価しています。

影響範囲は決して小さくありません。侵入に成功した攻撃者は、サーバー上の他人の非公開リポジトリを読み取り、パスワードのハッシュ値やAPIトークン、SSHキー、2要素認証の秘密情報まで奪える可能性があります。さらに恐ろしいのは、ホストされたコードを密かに書き換える「サプライチェーン攻撃」への発展です。改ざんされたコードが正規のものとして配布されれば、被害は一つのサーバーを越えて広がっていきます。

事態をより深刻にしているのが、メンテナー側の沈黙です。Rapid7のジョナ・バージェス氏は3月17日にGitHub経由(GHSA-qf6p-p7ww-cwr9)で報告し、3月28日に受領こそ確認されたものの、その後の連絡は途絶えたとされます。The Registerの取材に対しても、バージェス氏は追加の応答が一切なかったと語っています。現時点で修正パッチは存在せず、Rapid7自らが修正案のプルリクエストを提出してレビューを待っている状況です。

一方で、攻撃手法を自動化するMetasploitモジュールはすでに公開されています。これは諸刃の剣です。防御側にとっては自社環境の検証に役立つ反面、攻撃の敷居を一気に下げてしまうためです。Rapid7は「現時点で実環境での悪用の痕跡は確認していない」としていますが、パッチ不在のまま攻撃ツールだけが出回る今の状態は、時間との勝負に入ったと見るべきでしょう。

ここで一歩引いて考えたいのは、これがGogs単体の不注意では片付けられない問題だという点です。バージェス氏が指摘するとおり、Gogsは過去にもCVE-2024-39933をはじめとする同種の引数インジェクションを何度も修正してきました。しかし今回の Merge() という処理経路だけは見落とされていた。「同じ種類の傷を別の場所で繰り返す」という構図は、人手の限られたオープンソースプロジェクトが構造的に抱えるリスクをよく表しています。

実は、この「修正の取りこぼし」はGogsにとって初めてではありません。先行するCVE-2025-8110も、過去に修正したはずのCVE-2024-55947を回避する形で悪用された経緯がありました。米国のCISAは1月12日、この脆弱性を「悪用が確認された脆弱性」のKEVカタログへ追加し、連邦機関に2月2日までの対応を命じています。修正版(v0.13.4)が出たのは、その後の1月下旬でした。深刻な脆弱性が立て続けに起きている事実を踏まえれば、今回も当局や監視団体が動く展開は十分に想定されます。

自前でGitサーバーを持つことは、外部サービスに依存しない自律性という大きな価値があります。Gogsはおよそ4.8万のGitHubスターを集めてきた、その思想を体現する人気プロジェクトです。けれども「自分で持つ」とは「自分で守り、自分で直す」責任も引き受けることを意味します。今回の件は、セルフホストの自由と引き換えに何を負うのかを、改めて私たちに問いかけています。日本国内の利用者も「海外の話」と捉えず、足元の設定を点検しておくことが賢明です。

【用語解説】

ゼロデイ脆弱性
開発元による修正パッチが提供される前の段階で発見・公表された脆弱性のこと。守る手段が整わないうちに悪用されうるため危険度が高い。

引数インジェクション(CWE-88)
プログラムが外部から受け取った文字列を、コマンドの「引数(オプション)」として誤って解釈してしまう弱点。今回はブランチ名がコマンドの命令として扱われた。

リモートコード実行(RCE)
攻撃者が遠隔から、標的サーバー上で任意のプログラムを実行できてしまう状態。被害の中でも最も深刻な部類に入る。

プルリクエスト
開発者が自分の変更を本体のコードへ取り込んでもらうよう依頼する、Gitの共同開発における基本操作。

リベース(git rebase)
一連の変更(コミット)を別の起点に並べ替え、履歴を一直線に整える操作。今回の脆弱性はこの処理経路に存在した。

オープン登録
管理者の承認なしに誰でもアカウントを作成できる設定。Gogsでは初期状態で有効になっており、攻撃の入口を広げる要因となった。

CVSS
脆弱性の深刻度を0〜10の数値で示す国際的な評価指標。今回は最新のCVSSv4で9.4(緊急)と評価された。

サプライチェーン攻撃
製品やコードの供給網に潜り込み、正規の配布物に不正を仕込む攻撃手法。改ざんが下流の利用者全体へ波及する点が脅威となる。

KEVカタログ
米CISAが管理する「実際に悪用が確認された脆弱性」の一覧。掲載されると、米連邦機関には期限内の対応が義務付けられる。

【参考リンク】

Gogs(公式サイト)(外部)
Go言語製のセルフホスト型Gitサービスの公式サイト。MITライセンスのオープンソース。

Rapid7(公式サイト)(外部)
今回の脆弱性を発見・公表した米国のセキュリティ企業の公式サイト。

Rapid7 脆弱性アドバイザリ(一次情報)(外部)
発見者バージェスによる一次情報。技術的詳細と具体的な緩和策を詳述している。

CISA(米サイバーセキュリティ・インフラセキュリティ庁)(外部)
米国の政府機関。KEVカタログの管理や連邦機関への対応指示を担っている。

Shadowserver Foundation(外部)
ネット上の脅威や公開サーバーを観測・追跡する非営利の監視団体。

Shodan(外部)
ネット接続機器やサービスを検索できる検索エンジン。本件の調査に用いられた。

Metasploit(公式サイト)(外部)
Rapid7が開発する代表的なペネトレーションテスト用フレームワーク。

Wiz(公式サイト)(外部)
クラウドセキュリティ企業。先行脆弱性CVE-2025-8110を発見・報告した。

【参考記事】

Authenticated RCE via Argument Injection in Gogs (NOT FIXED)(Rapid7)(外部)
一次情報。CVSSv4 9.4やMerge()関数が原因であること、具体的な緩和策を詳述している。

No fix yet for critical RCE bug in open-source Git service Gogs(The Register)(外部)
Metasploitモジュール公開やメンテナー沈黙の経緯、悪用痕跡なしと報じている。

Gogs Zero-Day RCE (CVE-2025-8110) Actively Exploited(Wiz Blog)(外部)
先行脆弱性CVE-2025-8110の一次情報。v0.13.4で1月下旬に修正された経緯を示す。

CISA Warns of Active Exploitation of Gogs Vulnerability(The Hacker News)(外部)
CVE-2025-8110のKEV追加と、当時パッチが未提供だった事実を報じている。

Critical Gogs RCE Vulnerability Lets Any Authenticated User Execute Code(The Hacker News)(外部)
CVSS9.4・CVE未付与、公開インスタンス推定1,141件などを整理している。

New Gogs 0-Day Vulnerability Lets Attackers Execute Malicious Code(Cyber Security News)(外部)
GitHubスター約5万の人気や、悪用成功時の被害を具体的にまとめている。

【関連記事】

Gogsのセキュリティ欠陥露呈、ソースコード盗難の危機に警鐘
本記事で触れた過去の引数インジェクション(CVE-2024-39930〜39933)を報じた、同一製品の前提記事。

Linux、AI生成バグ報告で混乱 ― トーバルズが語る「管理不能」の実態と新ルール
人手の限られたオープンソースが脆弱性対応に追われる構造的課題を扱った記事。

Cursor 2.5未満で任意コード実行の脆弱性、何気ないGit操作が侵入口に
Git操作を起点としたRCEという、攻撃経路が近い脆弱性事例。

GUARDIANWALL MailSuiteに緊急脆弱性、悪用確認済み──CVSS 9.8の認証不要RCE
深刻度の高いRCE脆弱性への対応の緊急性という観点で通じる記事。

Go言語マルウェア:Linux環境を破壊する高度なサプライチェーン攻撃が発見
本記事で論じたサプライチェーン攻撃のリスクを掘り下げた関連記事。

【編集部後記】

セキュリティのニュースは、つい「危ない」「急げ」という言葉で消費されがちです。けれど今回の一件で私たちが立ち止まりたいのは、Gogsという小さくても誇り高いプロジェクトが、限られた人手の中で何度も自分たちのコードと向き合ってきた、その営みのほうかもしれません。脆弱性は失敗ではなく、ソフトウェアが生きて使われ続けている証でもあります。だからこそ、報告する人、直そうとする人、そして使い続ける私たちの間で、責任をどう分かち合うか。その問いは、これからますます増えていく「自分たちで持つ技術」の時代に、静かに重みを増していくはずです。みなさんの現場では、その線引きをどう考えていますか。

Googleで優先するソースとして追加するボタン
投稿者アバター
TaTsu
『デジタルの窓口』代表。名前の通り、テクノロジーに関するあらゆる相談の”最初の窓口”になることが私の役割です。未来技術がもたらす「期待」と、情報セキュリティという「不安」の両方に寄り添い、誰もが安心して新しい一歩を踏み出せるような道しるべを発信します。 ブロックチェーンやスペーステクノロジーといったワクワクする未来の話から、サイバー攻撃から身を守る実践的な知識まで、幅広くカバー。ハイブリッド異業種交流会『クロストーク』のファウンダーとしての顔も持つ。未来を語り合う場を創っていきたいです。