
Kaiten의 PIN 기반 인증 우회 취약점
Kaiten - 워크플로우 관리 시스템. Kaiten의 취약점으로 인해 공격자가 PIN 코드 인증 메커니즘을 우회할 수 있습니다. 애플리케이션은 사용자가 로그인 자격 증명을 입력한 후 이메일로 전송된 6자리 PIN 코드를 입력하도록 요구합니다. 그러나 요청 제한 메커니즘은 쉽게 우회할 수 있어, 공격자가 무차별 대입 공격을 수행하여 올바른 PIN을 추측하고 애플리케이션에 무단 액세스할 수 있습니다.
세부 정보:
인증 메커니즘은 비밀번호 없이 이메일로 전송되는 단일 요소를 사용합니다. :)
속도 제한 우회는 X-Forwarded-For 헤더를 사용하여 달성할 수 있으며, 이를 통해 X-RateLimit-Remaining 카운터가 초기화됩니다.

이 방법을 사용하면 일반적으로 여러 번 시도한 후 발생하는 HTTP 429 Too Many Requests 응답 없이 계속 요청할 수 있습니다.

또한 새 PIN 코드를 요청하는 데 제한이 없으므로 공격자는 무차별 대입 공격을 통해 PIN 코드를 추측할 수 있습니다. PIN 코드의 만료 시간은 5분이므로, 공격자는 6자리 PIN 코드를 추측하는 데 5분이 주어집니다. ~150 RPS로 공격자는 ~45,000개의 PIN 코드를 시도할 수 있습니다. 모든 시도 후 수학적 계산으로 성공 확률 50%는 33분, 100%는 4시간이면 도달할 수 있습니다.
취약한 버전:
<= 57.131.12
링크:
간단히 bash 스크립트를 다운로드하고 선택한 사용자 이름으로 실행합니다 (로그인만 가능, 이메일은 불가!)
bash CVE-2024-41276.sh <input_user> <kaiten.example.com>
결과: 성공 결과 => 추가 사용을 위한 유효한 쿠키 획득
