🇰🇷 한글 설명
guzzlehttp/guzzle 7.15.1 미만 버전의 RedirectMiddleware에서 정보 노출 취약점이 발견되었습니다. allow_redirects.referer 설정이 활성화된 경우, 동일한 스킴(예: HTTPS to HTTPS)으로 리다이렉트될 때 원래 요청의 URI 프래그먼트(# 이후 부분)가 Referer 헤더에 포함되어 전송됩니다. 이를 통해 공격자는 토큰이나 인증 정보와 같은 민감한 데이터를 탈취할 수 있습니다.
💡 쉬운 설명
웹사이트를 이동할 때 주소창 뒷부분에 숨겨진 비밀번호나 인증 키가 실수로 다른 사이트에 전달될 수 있는 문제입니다. 공격자는 이 정보를 가로채서 사용자의 계정에 접근할 위험이 있습니다.
🇺🇸 원문 (English)
guzzlehttp/guzzle versions before 7.15.1 contain an information disclosure vulnerability in RedirectMiddleware. When the optional allow_redirects.referer setting is enabled, the middleware copies the URI fragment (the portion after '#') from the referring request into the generated Referer header when following a same-scheme redirect (e.g., HTTPS to HTTPS). An attacker who controls the redirect destination can read this fragment from the incoming Referer header, potentially disclosing one-time login secrets, access tokens, state values, or other sensitive client data to a server never meant to receive it. The referer setting is disabled by default. Fixed in 7.15.1, which strips the fragment before generating the Referer value.
📍 영향받는 시스템
guzzlehttp/guzzle versions < 7.15.1
⚔️ 공격 벡터
공격자가 제어하는 리다이렉트 대상 서버로 민감한 정보가 포함된 Referer 헤더가 전송되도록 유도
🛡️ 대응 방법
guzzlehttp/guzzle 버전을 7.15.1 이상으로 업데이트
🔧 검증 코드
출력된 버전 정보가 7.15.1 미만인지 확인
composer show guzzlehttp/guzzle | grep 'versions'