
demo application showing off SQL Injection exploit in django 5.2.7
이 애플리케이션은 여러 Django 버전에 영향을 미치는 CVE-2025-64459를 시연합니다. 이 취약점은 최신 Django 릴리스에서 패치되었습니다.
SQL 인젝션은 사용자 입력이 SQL 쿼리의 일부로 처리되어 공격자가 쿼리 작동 방식을 변경하고 접근해서는 안 되는 데이터를 노출하거나 수정할 수 있는 취약점입니다.
Django QuerySet 및 Q 객체에서 데이터 노출로 이어질 수 있는 SQL 인젝션 취약점입니다. 이 익스플로잇은 Django QuerySet에 쿼리 파라미터를 전달할 때 사용자가 _connector 및 _negated 키를 설정하여 임의의 SQL 조각을 실행할 수 있게 하는 데서 발생합니다.
이 앱에서는 홈 URL 경로에서 익스플로잇이 이루어집니다. cve.hyperf.app/?_connector=OR 1=1 OR에 접속하면 SQL 쿼리에 OR 1=1 OR가 삽입되어 필터가 모든 레코드와 일치하게 되고 모든 결과가 반환됩니다. 이 경우 보관되었거나 DRAFT 상태로 설정된 게시물이 노출됩니다.
[!NOTE]
db.sqlite3 및 .env 파일은 익스플로잇을 위한 데이터베이스를 설정하기 위해 의도적으로 git에 추적됩니다.
저장소를 클론하고 uv로 의존성을 동기화합니다.
uv sync
개발 서버를 시작합니다.
uv run manage.py runserver