Cursor Keeps Skipping Rate Limits on Login Routes (CWE-307)

개요

AI 생성 코드에서 로그인 라우트에 대한 속도 제한(rate limiting)이 누락되는 문제로 인해 공격자가 자격 증명을 무차별 대입 공격(brute-force)할 수 있는 취약점이 발견되었습니다.

주요 내용

* AI 코드 생성 도구(Cursor, Claude Code 등)로 생성된 50개의 로그인 엔드포인트에 대한 검사 결과, 속도 제한이 적용되지 않은 비율이 0%였습니다.
* 속도 제한이 없는 로그인 라우트는 네트워크 속도에 맞춰 공격자가 무차별 대입 공격을 시도할 수 있으며, 이는 자격 증명 스터핑(credential-stuffing) 공격에 취약하게 만듭니다.
* AI 모델이 속도 제한을 구현하지 않는 이유는, 모델이 "로그인 엔드포인트 작동 여부"에 초점을 맞추고 "공격으로부터 로그인 엔드포인트 보호"라는 교차 관심사(cross-cutting concern)인 미들웨어(middleware) 구현은 학습 데이터에서 분리되어 학습되기 때문입니다.
* express-rate-limit과 같은 라이브러리를 사용하면 몇 줄의 코드로 간단하게 속도 제한을 추가할 수 있습니다.
* 실제 프로덕션 환경에서는 IP 기반 제한 외에 반복적인 실패 시 계정 잠금과 같은 추가적인 보안 조치를 고려해야 합니다.
* SafeWeave와 같은 도구를 사용하여 AI 생성 코드의 속도 제한 미적용을 감지하거나, 수동 검사를 통해 로그인 라우트의 속도 제한 구현 여부를 확인하는 것이 중요합니다.

시사점

AI 코드 생성 도구의 편리함과 함께, 개발자는 생성된 코드의 보안 취약점(CWE-307)을 인지하고 속도 제한과 같은 필수적인 보안 기능을 반드시 검토하고 적용해야 합니다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions