🇰🇷 한글 설명
OpenStack Swauth 1.2.0 이하 버전에서 Swift 인증 토큰이 로그 파일에 평문으로 저장되어 공격자가 토큰을 탈취할 수 있다. 탈취된 토큰을 이용해 X-Auth-Token 헤더에 삽입하여 인증을 우회할 수 있다.
💡 쉬운 설명
강금고의 비밀번호가 실수로 벽에 붙은 메모에 저장된 것과 같은 상황이다. 누구나 로그 파일을 읽으면 인증 토큰을 볼 수 있어 다른 사람이 당신인 척 할 수 있다.
🇺🇸 원문 (English)
An issue was discovered in middleware.py in OpenStack Swauth through 1.2.0 when used with OpenStack Swift through 2.15.1. The Swift object store and proxy server are saving (unhashed) tokens retrieved from the Swauth middleware authentication mechanism to a log file as part of a GET URI. This allows attackers to bypass authentication by inserting a token into an X-Auth-Token header of a new request. NOTE: github.com/openstack/swauth URLs do not mean that Swauth is maintained by an official OpenStack project team.
📍 영향받는 시스템
OpenStack Swauth through 1.2.0, OpenStack Swift through 2.15.1
⚔️ 공격 벡터
로그 파일에서 평문 토큰을 추출하여 X-Auth-Token 헤더에 삽입한 요청 전송
🛡️ 대응 방법
Swauth를 1.2.0 이상으로 업그레이드하고 로그 파일 접근 권한 제한 및 토큰 해싱 활성화
🔧 검증 코드
설치된 swauth 버전이 1.2.0 이하이면 취약하며, 1.2.1 이상이면 패치됨을 확인
pip list 2>/dev/null | grep -i swauth || dpkg -l 2>/dev/null | grep swauth