🇰🇷 한글 설명
Turms IM Server v0.10.0-SNAPSHOT 및 이전 버전에서 사용자 온라인 상태 조회 기능에 권한 제어 결함이 발견되었습니다. UserServiceController.java의 handleQueryUserOnlineStatusesRequest() 메서드는 적절한 권한 확인 없이 인증된 사용자가 임의의 사용자의 온라인 상태, 기기 정보 및 로그인 시간을 조회할 수 있게 허용합니다.
💡 쉬운 설명
로그인한 사용자라면 누구나 다른 사용자가 현재 접속 중인지, 어떤 기기를 쓰는지 몰래 확인할 수 있는 보안 취약점입니다. 개인의 활동 정보가 권한 없이 노출될 위험이 있습니다.
🇺🇸 원문 (English)
Turms IM Server v0.10.0-SNAPSHOT and earlier contains a broken access control vulnerability in the user online status query functionality. The handleQueryUserOnlineStatusesRequest() method in UserServiceController.java allows any authenticated user to query the online status, device information, and login timestamps of arbitrary users without proper authorization checks.
📍 영향받는 시스템
Turms IM Server v0.10.0-SNAPSHOT 및 그 이전 버전
⚔️ 공격 벡터
인증된 사용자가 권한 검증이 누락된 API 엔드포인트를 통해 임의의 사용자 정보를 요청함
🛡️ 대응 방법
해당 취약점이 해결된 최신 버전으로 업데이트하거나, UserServiceController.java 내의 권한 검증 로직을 수정해야 함
🔧 검증 코드
API 요청 시 권한 오류(403 Forbidden 등)가 발생하지 않고 타인의 정보가 반환되면 취약한 상태임
curl -s http://<target_ip>:<port>/api/v1/user/online-status | grep -E 'error|unauthorized'