🔍 CVE-2026-27829

6.5
CVSS Score
MEDIUM
2026-02-26
2026-06-17 10:27
✅ 완료

🇰🇷 한글 설명

Astro 웹 프레임워크의 이미지 파이프라인 버그로 인해 image.domains 및 image.remotePatterns 제한을 우회할 수 있습니다. inferSize 옵션 사용 시 도메인 검증이 수행되지 않아, 공격자가 임의의 호스트로부터 콘텐츠를 가져오게 하여 SSRF 공격을 수행할 수 있습니다.

💡 쉬운 설명

웹사이트가 허락된 이미지 주소만 가져오도록 설정되어 있음에도 불구하고, 특정 기능을 사용하면 공격자가 지정한 엉뚱한 주소로 서버가 접속하게 만들 수 있습니다. 이를 통해 서버 내부 네트워크나 중요한 정보에 몰래 접근할 위험이 있습니다.

🇺🇸 원문 (English)

Astro is a web framework. In versions 9.0.0 through 9.5.3, a bug in Astro's image pipeline allows bypassing `image.domains` / `image.remotePatterns` restrictions, enabling the server to fetch content from unauthorized remote hosts. Astro provides an `inferSize` option that fetches remote images at render time to determine their dimensions. Remote image fetches are intended to be restricted to domains the site developer has manually authorized (using the `image.domains` or `image.remotePatterns` options). However, when `inferSize` is used, no domain validation is performed — the image is fetched from any host regardless of the configured restrictions. An attacker who can influence the image URL (e.g., via CMS content or user-supplied data) can cause the server to fetch from arbitrary hosts. This allows bypassing `image.domains` / `image.remotePatterns` restrictions to make server-side requests to unauthorized hosts. This includes the risk of server-side request forgery (SSRF) against internal network services and cloud metadata endpoints. Version 9.5.4 fixes the issue.

📍 영향받는 시스템

Astro versions 9.0.0 through 9.5.3

⚔️ 공격 벡터

사용자 입력이나 CMS 콘텐츠를 통해 조작된 이미지 URL을 전달하여 inferSize 기능이 실행되도록 유도

🛡️ 대응 방법

Astro 버전을 9.5.4 이상으로 업데이트

🔧 검증 코드

명령어 결과에 [email protected] ~ 9.5.3 사이의 버전이 나타나면 취약한 상태입니다.

Shell / Script
npm list astro | grep -E 'astro@9\.(0\.[0-9]|1\.[0-9]|2\.[0-9]|3\.[0-9]|4\.[0-9]|5\.[0-3])'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L

💻 영향받는 소프트웨어

Cloud Services