🇰🇷 한글 설명
Warpgate 0.25.6 미만 버전에서 발생하는 취약점으로, 클라이언트가 제공한 x-warpgate-username 헤더가 인증된 사용자 이름보다 먼저 전달될 수 있습니다. 공격자가 조작된 헤더를 사용하여 백엔드 서버에서 다른 사용자로 권한을 탈취할 수 있는 인증 우회 취약점입니다.
💡 쉬운 설명
로그인할 때 사용하는 이름표를 공격자가 가짜로 만들어 보낼 수 있는 문제입니다. 이 가짜 이름표가 진짜 이름표보다 먼저 전달되면, 시스템이 공격자를 다른 사람으로 착각하여 허용해 줄 수 있습니다.
🇺🇸 원문 (English)
Warpgate is an open source SSH, HTTPS and MySQL bastion host for Linux. Prior to 0.25.6, copy_server_request in warpgate-protocol-http/src/proxy.rs forwards a client-supplied x-warpgate-username header before inject_own_headers appends the authenticated username. Because the request builder preserves repeated values, a proxied backend that trusts the first x-warpgate-username value can authorize an authenticated attacker as another user. The same forwarding policy also accepts the reserved x-warpgate-authentication-type header, and warpgate-common/src/http_headers.rs does not exclude either reserved identity header. This issue is fixed in version 0.25.6.
📍 영향받는 시스템
Warpgate 0.25.6 미만 버전
⚔️ 공격 벡터
HTTP 요청 헤더에 조작된 x-warpgate-username 또는 x-warpgate-authentication-type 값을 삽입하여 전송
🛡️ 대응 방법
Warpgate를 최신 버전인 0.25.6 이상으로 업데이트
🔧 검증 코드
출력된 버전 번호가 0.25.6보다 낮으면 취약한 상태입니다.
cargo run --version 2>/dev/null | grep -E 'warpgate'