🇰🇷 한글 설명
Apache Juneau의 RestClient가 HTTP 리다이렉트를 따라갈 때 원본 요청의 인증 헤더를 그대로 유지합니다. 이로 인해 서버가 다른 호스트/포트나 HTTPS에서 HTTP로 리다이렉트하면 Authorization, Cookie, Proxy-Authorization, X-API-Key 같은 자격 증명 헤더가 외부로 노출될 수 있습니다. 9.2.0 이하 버전이 영향을 받으며, 9.2.1 버전에서 수정되었습니다.
💡 쉬운 설명
Juneau 라이브러리를 사용하는 프로그램이 다른 주소로 자동 이동(리다이렉트)할 때 로그인 정보가 함께 전달될 수 있습니다. 공격자가 이를 악용하면 비밀번호나 인증 토큰을 빼낼 수 있습니다.
🇺🇸 원문 (English)
Insufficiently Protected Credentials vulnerability in Apache Juneau.
The Apache Juneau RestClient followed HTTP redirects while keeping credential headers from the original request, so a server that redirected the client to a different host or port, or from HTTPS to HTTP, could receive headers such as Authorization, Cookie, Proxy-Authorization and X-API-Key.
This issue affects Apache Juneau: through 9.2.0.
Users are recommended to upgrade to version 9.2.1, which fixes the issue. The fix applies to HTTP clients created by the RestClient builder; applications that supply their own HttpClient must disable automatic redirects or strip credential headers on cross-origin redirects themselves.
📍 영향받는 시스템
Apache Juneau 9.2.0 이하 버전 (RestClient 빌더로 생성된 HTTP 클라이언트)
⚔️ 공격 벡터
악의적인 서버가 클라이언트를 다른 호스트나 HTTP 주소로 리다이렉트시켜 인증 헤더를 탈취
🛡️ 대응 방법
Apache Juneau를 9.2.1 이상으로 업그레이드하거나, 자체 HttpClient 사용 시 자동 리다이렉트를 끄거나 교차 출처 리다이렉트에서 인증 헤더를 제거
🔧 검증 코드
출력된 Implementation-Version이 9.2.1 미만이면 취약한 버전이며, 9.2.1 이상이면 수정된 버전입니다. 아무 결과도 없으면 Juneau가 설치되어 있지 않을 가능성이 높습니다.
find / -name 'juneau*.jar' 2>/dev/null | xargs -I{} sh -c 'unzip -p {} META-INF/MANIFEST.MF 2>/dev/null | grep -i version && echo {}'