🇰🇷 한글 설명
Rouille 0.3.3부터 3.6.2 버전에서 HTTP 요청 스머글링 취약점이 발견되었습니다. 공격자가 헤더 값에 줄바꿈 문자(0x0A)를 삽입하여 검증 없이 상위 연결로 전달할 경우, 백엔드 서버에서 이를 별도의 요청으로 해석하여 접근 제어를 우회할 수 있습니다.
💡 쉬운 설명
해커가 웹 요청 메시지에 몰래 숨겨진 명령어를 끼워 넣어 보안 검사를 통과하는 방식입니다. 이를 통해 원래는 접근할 수 없는 관리자 페이지나 데이터에 접근할 수 있습니다.
🇺🇸 원문 (English)
Rouille 0.3.3 through 3.6.2 contains an HTTP request smuggling vulnerability that allows remote attackers to bypass access controls by injecting bare line feed characters (0x0A) into client-supplied request header values that are copied verbatim to upstream connections without validation. Attackers can craft a header value containing a complete additional HTTP request that is interpreted as a separate request by backends such as Go net/http and Python http.server, causing the backend to process a smuggled request with attacker-chosen method, path, and headers that bypasses the rouille handler's access control logic.
📍 영향받는 시스템
Rouille 0.3.3 ~ 3.6.2
⚔️ 공격 벡터
클라이언트가 제공한 HTTP 헤더 값에 줄바꿈 문자(0x0A)를 삽입하여 요청을 위조함
🛡️ 대응 방법
Rouille을 최신 보안 패치가 적용된 버전으로 업데이트하거나 헤더 입력값 검증 로직을 강화함
🔧 검증 코드
명령어 결과에 취약한 버전 범위가 출력되면 해당 시스템은 보안 위험이 있는 상태입니다.
cargo pkgid rouille | grep -E '0.3.3|3.6.2'