🇰🇷 한글 설명
Turms Server v0.10.0-SNAPSHOT 및 이전 버전의 관리자 인증 시스템에서 비밀번호가 평문으로 저장되는 취약점이 발견되었습니다. BaseAdminService 클래스가 인증 성능 최적화를 위해 관리자 비밀번호를 AdminInfo 객체 내에 암호화되지 않은 상태로 메모리에 캐싱합니다. 이로 인해 로컬 시스템 접근 권한을 가진 공격자가 메모리 덤프나 디버거를 통해 관리자 비밀번호를 탈취할 수 있습니다.
💡 쉬운 설명
서버가 로그인 속도를 높이려고 관리자의 비밀번호를 암호화하지 않은 채 메모리에 그대로 저장해두는 문제입니다. 컴퓨터 내부 권한을 가진 해커가 메모리를 들여다보면 비밀번호를 바로 읽어낼 수 있습니다.
🇺🇸 원문 (English)
Turms Server v0.10.0-SNAPSHOT and earlier contains a plaintext password storage vulnerability in the administrator authentication system. The BaseAdminService class caches administrator passwords in plaintext within AdminInfo objects to optimize authentication performance. Upon successful login, raw passwords are stored unencrypted in memory in the rawPassword field. Attackers with local system access can extract these passwords through memory dumps, heap analysis, or debugger attachment, bypassing bcrypt protection.
📍 영향받는 시스템
Turms Server v0.10.0-SNAPSHOT 및 그 이전 모든 버전
⚔️ 공격 벡터
로컬 시스템 접근 권한을 이용한 메모리 덤프, 힙 분석 또는 디버거 부착
🛡️ 대응 방법
해당 취약점이 해결된 최신 버전으로 업데이트하거나 메모리 내 비밀번호 노출을 방지하도록 소스 코드를 수정해야 합니다.
🔧 검증 코드
출력 결과에 취약한 버전인 v0.10.0-SNAPSHOT 이하의 버전 정보가 포함되어 있는지 확인합니다.
curl -s http://<target_ip>:<port>/version | grep -E 'Turms Server v0.10.0-SNAPSHOT|earlier'