
Ai2의 playground 채팅에서 안전하지 않은 직접 객체 참조(IDOR) 취약점을 시연하여, 공격자가 예측 가능한 메시지 ID를 무차별 대입하여 다른 사용자의 대화 기록에 액세스할 수 있음을 보여줍니다.
Ai2는 시애틀 기반의 비영리 AI 연구 기관입니다. Ai2는 자사의 LLM과 대화할 수 있는 플레이그라운드 웹 애플리케이션을 제공하며, 해당 애플리케이션의 채팅 컴포넌트에서 안전하지 않은 직접 객체 참조(IDOR) 취약점이 존재합니다. 공격자는 이 IDOR을 악용하여 다른 사용자의 대화를 변조할 수 있습니다.
모든 사용자의 대화 기록은 서버에 저장됩니다. 그러나 Ai2의 서버는 개별 대화 기록의 소유권이나 공유 상태를 구분하지 않습니다. 결과적으로 공격자는 대화 메시지 ID를 무차별 대입하여 다른 사용자의 대화 기록(소유자가 공개적으로 공유하지 않은 기록까지도)에 접근할 수 있습니다.
대화 메시지 ID 형식은 예측 가능하며 무차별 대입 공격에 취약합니다. 고정 접두사 msg_ 뒤에 10자 문자열이 옵니다. 이 문자열은 대문자와 숫자가 교대로 구성됩니다(예: A1A1A1A1A1). POC는 다음과 같습니다:


이 취약점은 https://playground.allenai.org의 모든 사용자에게 영향을 미칠 수 있습니다. 사용자의 채팅 기록이 무차별 대입된 message_id로 도난당할 수 있습니다.