🔍 CVE-2026-48998

5.3
CVSS Score
MEDIUM
2026-06-11
2026-10-26 11:10
✅ 완료

🇰🇷 한글 설명

guzzlehttp/psr7 2.10.2 이전 버전은 Host 헤더 검증 과정에서 URI 권한 구분자를 허용하여 헤더 값이 의도치 않게 재해석될 수 있는 취약점이 있습니다. 공격자는 악성 Host 헤더를 통해 URI 호스트를 조작할 수 있으며, 이는 라우팅 또는 포워딩 결정 시 의도하지 않은 호스트로 요청이나 자격 증명이 전달되게 할 수 있습니다.

💡 쉬운 설명

웹 라이브러리에서 요청의 주소 정보를 잘못 처리해 해커가 임의의 주소로 연결되도록 속일 수 있는 문제입니다. 이 결함을 이용하면 중요한 데이터가 잘못된 서버로 유출될 위험이 있습니다.

🇺🇸 원문 (English)

guzzlehttp/psr7 is a PSR-7 HTTP message library implementation in PHP. Versions prior to 2.10.2 contain improper Host header validation when parsing raw HTTP request messages and when deriving a server request URI from server variables. An attacker can provide a malformed Host header containing URI authority delimiters, such as `[email protected]`. When the Host value is used to construct a URI, the malformed value can be reinterpreted as URI userinfo and host. This can cause the PSR-7 request URI host to differ from the original Host header value. Applications are affected if they parse attacker-controlled raw HTTP requests with `GuzzleHttp\Psr7\Message::parseRequest()` or the legacy 1.x `GuzzleHttp\Psr7\parse_request()` function, or if they build server requests from attacker-controlled server variables, then rely on the resulting URI host for routing, allow-list checks, or forwarding decisions. In affected forwarding or gateway scenarios, this may cause requests or credentials to be sent to an unintended host. The issue is patched in `2.10.2`. `1.x` is end-of-life and will not receive a patch. Some workarounds are available. Validate the `Host` header as `uri-host [ ":" port ]` before calling `Message::parseRequest()` or legacy `parse_request()` on untrusted HTTP request data, or before deriving routing and forwarding decisions from a parsed request URI. Reject Host values containing userinfo, path, query, or fragment delimiters.

📍 영향받는 시스템

guzzlehttp/psr7 2.10.2 미만 버전 (1.x는 지원 종료)

⚔️ 공격 벡터

악성 Host 헤더를 포함하는 원시 HTTP 요청을 파싱하거나 서버 변수에서 요청 URI를 생성할 때 취약한 함수 사용

🛡️ 대응 방법

guzzlehttp/psr7 패키지를 2.10.2 이상으로 업그레이드하고, 1.x 버전은 사용 중단하며 Host 헤더에 대한 엄격한 검증 로직을 적용

🔧 검증 코드

출력된 버전 번호가 2.10.2 미만인 경우 취약한 버전이 설치되어 있으며, 1.x 버전은 지원이 종료되었으므로 즉시 업그레이드해야 합니다.

Shell / Script
composer show guzzlehttp/psr7 --format=json 2>/dev/null | grep -o '"version": "[^"]*"'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

PHP