🇰🇷 한글 설명
LangChat의 특정 커밋(2a6285a)에서 인증 인터셉터가 누락되어 인증되지 않은 원격 공격자가 REST 컨트롤러에 접근할 수 있는 취약점이 발견되었습니다. 공격자는 이를 통해 사용자 비밀번호, LLM API 키를 탈취하거나 관리자 계정을 생성하고 데이터를 조작 또는 삭제할 수 있습니다.
💡 쉬운 설명
로그인 절차를 거치지 않고도 시스템의 중요한 정보에 접근할 수 있는 보안 구멍이 발견되었습니다. 해커가 비밀번호를 훔치거나 관리자 권한을 얻어 데이터를 마음대로 지울 수 있는 위험한 상태입니다.
🇺🇸 원문 (English)
LangChat through commit 2a6285a contains a missing authentication vulnerability that allows unauthenticated remote attackers to access REST controllers because no Sa-Token interceptor is registered. Attackers can query /api/v1/auth/users to read plaintext passwords, retrieve LLM provider API keys, create super-admin accounts, and modify or delete data.
📍 영향받는 시스템
LangChat (commit 2a6285a 포함 버전)
⚔️ 공격 벡터
인증이 누락된 REST API 엔드포인트(/api/v1/auth/users 등)를 통한 원격 접근
🛡️ 대응 방법
Sa-Token 인터셉터를 올바르게 등록하고, 인증이 필요한 모든 API 경로에 대해 접근 제어를 적용해야 합니다.
🔧 검증 코드
명령어 실행 결과가 200(OK)이면 인증 없이 접근 가능한 취약한 상태이며, 401 또는 403이면 안전한 상태입니다.
curl -s -o /dev/null -w "%{http_code}" http://<target-ip>/api/v1/auth/users