go-shiori's DownloadBookmark() (internal/core/download.go) fetches a caller-supplied bookmark URL...
概要
go-shiori's DownloadBookmark() (internal/core/download.go) fetches a caller-supplied bookmark URL...
原文の説明
取得元が公開している説明をそのまま載せています (多くは英語)。
go-shiori's DownloadBookmark() (internal/core/download.go) fetches a caller-supplied bookmark URL using a plain http.Client with no custom DialContext or destination-IP validation (no IsLoopback(), IsPrivate(), IsUnspecified(), or IsLinkLocalUnicast() checks). An authenticated user creating or updating a bookmark via POST /api/bookmark, PUT /api/v1/bookmarks/cache, or POST /api/bookmarks/ext can supply a loopback (127.0.0.1) or 0.0.0.0 (which Linux redirects to loopback) URL, causing the server to make outbound requests to internal-only services, cloud metadata endpoints, or other network-restricted resources.
出典: NIST National Vulnerability Database NVD GitHub Advisory
AI要約
外部の AI が作成した要約です。誤りを含むことがあります。重要な判断の前に、下の原文と参照URLを確認してください。
go-shioriのDownloadBookmark()関数において、カスタムのネットワークアクセス制御が行われず、内部のみのサービスやクラウドメタデータエンドポイントにアクセス可能なSSRFの脆弱性が存在します。この脆弱性は認証されたユーザーによって悪用される可能性があります。
go-shioriのDownloadBookmark()でSSRFの脆弱性が発生。
internal/core/download.go内のDownloadBookmark()関数。
外部から内部リソースにアクセスできるため、重大なセキュリティリスクとなります。
http.ClientにカスタムDialContextを設定し、IPアドレスの検証を行う。
一時的な回避策は情報なし。
内部リソースへの不要なアクセスが発生していないかをログから確認する。
参照URL
- web github.com
- web github.com
- web nvd.nist.gov
- web github.com