🇰🇷 한글 설명
Nginx UI 2.3.4 이전 버전에서 비활성화된 사용자가 이전에 발급받은 API 토큰을 토큰 수명이 끝날 때까지 사용할 수 있습니다. 관리자가 사용자를 비활성화해도 실제로는 접근이 차단되지 않으므로, JWT를 탈취한 공격자는 계정 비활성화 후에도 보호된 자원을 읽고 수정할 수 있습니다.
💡 쉬운 설명
Nginx UI 관리자가 해킹당한 계정을 비활성화해도 기존 접근 토큰은 유효하므로 공격자가 계속 서버에 접근할 수 있습니다. 토큰으로 새 계정을 생성하면 권한 유지도 가능합니다.
🇺🇸 원문 (English)
Nginx UI is a web user interface for the Nginx web server. Prior to version 2.3.4, a user who was disabled by an administrator can use previously issued API tokens for up to the token lifetime. In practice, disabling a compromised account does not actually terminate that user’s access, so an attacker who already stole a JWT can continue reading and modifying protected resources after the account is marked disabled. Since tokens can be used to create new accounts, it is possible the disabled user to maintain the privilege. Version 2.3.4 patches the issue.
📍 영향받는 시스템
Nginx UI < 2.3.4
⚔️ 공격 벡터
탈취한 JWT 토큰을 사용하여 비활성화된 계정으로 API에 접근 및 자원 수정
🛡️ 대응 방법
Nginx UI를 2.3.4 이상으로 업그레이드하거나 토큰 수명을 단축 설정
🔧 검증 코드
docker 환경의 경우 이미지 버전 확인, 호스트 설치의 경우 nginx-ui 버전이 2.3.4 이상인지 확인
docker inspect <container_id> 2>/dev/null | grep -i 'image\|version' || dpkg -l | grep nginx-ui