Goobi viewerに認証なしSSRFとファイル読取の弱点、26.05で修正
デジタル化資料を公開するWebアプリケーションGoobi viewerに、ログインなしで外部から悪用できる重大な弱点が見つかりました。バージョン24.03以降26.05未満を使っている図書館・アーカイブ・大学などが影響を受けます。修正版26.05へ更新し、更新できない間は該当経路への外部アクセスを制限してください。
急ぎ度: 早めに
CVSS 9.8の重大な弱点で認証なしにネットワーク越しで悪用できますが、実際の攻撃での悪用(KEV掲載)は公表されておらず、修正版が出ています。
関係があるか
Goobi viewerのコア部分であるgoobi-viewer-coreを、バージョン24.03以降26.05未満で運用し、インターネットや学内ネットワークに公開している組織が対象です。デジタルアーカイブや電子図書館を自前で運用する図書館、博物館、大学、自治体などが当てはまります。
| 製品 | 影響を受ける版 | 直った版 |
|---|---|---|
| goobi-viewer-core(Goobi viewer) | 24.03以降、26.05より前 | 26.05 |
確かめ方
- 1自社や自組織でGoobi viewerを運用しているか、委託先や共同運用先を含めて確認します。
- 2稼働中のgoobi-viewer-coreのバージョンを、管理画面、デプロイ済みの成果物、または導入時の記録で確認します。24.03以降26.05未満なら対象です。
- 3リバースプロキシやWAFのログで、
/tasks/download/monitor.socketへのアクセスがあるかを確認します。 - 4このパスが外部ネットワークから到達できるかを、ネットワーク構成やプロキシの設定から確認します。
何が起きたか
Goobi viewerは、デジタル化した書籍や資料をWebブラウザで閲覧できるようにするWebアプリケーションです。バージョン24.03から26.05より前では、資料のダウンロード処理を受け付ける窓口が、ログインしていない利用者からの依頼も受け付けてしまいます。本来は認証された利用者だけが使えるべき機能が、誰にでも開かれた状態でした。
分類としては、認証の欠如(CWE-306)、意図しないファイルの公開(CWE-552)、サーバーを踏み台にした外部・内部への要求(SSRF、CWE-918)が付けられています。表題からは、サーバー上のファイルを読み出される可能性と、サーバーに別の宛先へ通信させられる可能性があることが分かります。
問題の窓口は、WebSocketで提供される DownloadTaskEndpoint(/tasks/download/monitor.socket)です。26.05で修正されました。具体的にどのような情報が読み出せるか、実際に被害が出ているかについての詳細は公表されていません。
攻撃の流れ
-
1
窓口へ接続
攻撃者がログインせずに、公開されたダウンロード用WebSocketの窓口へ接続します。
-
2
依頼を送信
認証が求められないため、ダウンロードの依頼をそのまま受け付けさせることができます。
-
3
サーバーが処理
サーバーが依頼内容に従って、サーバー内のファイルや別の通信先にアクセスしてしまいます。
-
4
情報の取得
サーバー上の情報や、外部からは見えない内部システムの情報が漏れるおそれがあります。
どう悪用されるか
悪用に必要な前提は少なく、CVSSの評価ではネットワーク経由で、特別な条件や権限、利用者の操作なしに実行できるとされています。対象のWebSocket経路に到達できれば、ログインしていない第三者でも試行できる状態です。
想定される被害は、サーバー上のファイルの読み出し、サーバーを経由した内部ネットワークへの不正な通信、それに伴う情報漏えいです。CVSSでは機密性・完全性・可用性のいずれも高い影響とされています。ただし、具体的に何が読めるかは環境の構成や権限で変わり、詳細は公表されていません。
KEV(実際の攻撃で悪用された脆弱性の一覧)への掲載や、EPSS(悪用される見込みの指標)の値は、今回の情報では確認できていません。ただし、認証が不要で公開サーバーが直接の対象になるため、更新までの期間は短いほうが安全です。
今すぐやること
-
1
26.05へ更新する
goobi-viewer-coreを修正版の26.05に更新します。更新手順や互換性は、リリースページと提供元(intranda)の案内で確認してください。
-
2
稼働バージョンを確認する
運用中の環境が24.03以降26.05未満かを、導入記録やデプロイ済みの成果物で確認します。委託先が運用している場合は、委託先にも確認します。
-
3
対象経路へのアクセスを絞る
更新までの間、
/tasks/download/monitor.socketへのアクセスを、リバースプロキシやWAFで遮断または信頼できる接続元のみに制限します。 -
4
ログを調べる
公開以降のアクセスログで、対象パスへの不審な接続がないかを確認します。見つかった場合は、サーバー内の機密情報や内部への通信の有無も調べます。
-
5
サーバーの権限と通信経路を見直す
アプリケーションが読み取れるファイルの範囲と、内部ネットワークへ出られる通信先を必要最小限にします。万一の被害を小さくできます。
すぐ更新できないとき
修正版を当てられない場合は、リバースプロキシやWAFで /tasks/download/monitor.socket へのアクセスを遮断するか、管理者や学内など信頼できる接続元に限定します。ただし、この経路を止めるとダウンロード機能に影響が出る可能性があります。公式な回避策がベンダーから示されているかは、下記のアドバイザリで確認してください。
背景
Goobi viewerは、図書館や文書館が所蔵資料をデジタル化して公開するときに使われるWebアプリケーションです。一般の閲覧者に広く公開する前提のため、インターネットから直接アクセスできる形で運用されることが多く、公開側の弱点が直接外部にさらされやすい種類のシステムです。
今回のように、認証が必要な機能の窓口で認証が抜けてしまう問題や、サーバーに任意の宛先へ要求を出させるSSRFは、Webアプリケーションで繰り返し問題になってきた種類の弱点です。SSRFは、外部から見えない内部システムへの足がかりになることがあるため、公開サーバーでは特に注意が必要です。WebSocketのような通常のページ表示とは別の通信経路は、認証や入力の検査が抜けやすい点にも注意が要ります。
よくある質問
Q.ログインできる利用者を限定していれば安全ですか。
Q.24.03より前のバージョンは影響を受けますか。
Q.すでに攻撃を受けたかどうかはどう調べればよいですか。
/tasks/download/monitor.socket への不審な接続を確認します。ただし、ログに残らない可能性もあるため、不審な点があれば、サーバー内の機密情報の持ち出しや内部への通信の有無も合わせて調べてください。まだ分かっていないこと
- 実際の攻撃での悪用が確認されているか、攻撃コードが出回っているかは公表されていません。
- 読み出される可能性のあるファイルや情報の具体的な範囲は公表されていません。
- 24.03より前の版が影響を受けるかどうかは明記されていません。最新情報は提供元のセキュリティアドバイザリで確認してください。
この記事は、取得元の公開情報をもとに生成 AI で作成しています。誤りを含むことがあります。対応を決める前に、下の原文と参照先を確認してください。
影響パッケージ
| 種類 | パッケージ | 影響を受ける版 | 直った版 |
|---|---|---|---|
| intranda | goobi-viewer-core | — | — |
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
The Goobi viewer is a web application that allows digitised material to be displayed in a web browser. From version 24.03 to before version 26.05, the DownloadTaskEndpoint WebSocket endpoint (/tasks/download/monitor.socket) in goobi-viewer-core accepts download requests from unauthenticated users. This issue has been patched in version 26.05.
出典: CVE.org (CVE Program・cvelistV5) NVD GitHub Advisory
参照URL
- advisory github.com
- advisory github.com
- advisory nvd.nist.gov
- patch github.com
- patch github.com
- web github.com