Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-64458-Demo — PoC 스크립트로, Django에서 발견된 CVE-2025-64458을 시연합니다. Windows에서 `HttpResponseRedirect`/`HttpResponsePermanentRedirect`의 잠재적 DoS입니다. | Kitploit
도구/GitHubGitHub/ch4n3-yoon/cve-2025-64458-demo
Vulnerability AnalysisExploitationWeb SecurityPenetration TestingLearning & Education
GitHubch4n3-yoon/cve-2025-64458-demo

CVE-2025-64458-Demo

PoC 스크립트로, Django에서 발견된 CVE-2025-64458을 시연합니다. Windows에서 `HttpResponseRedirect`/`HttpResponsePermanentRedirect`의 잠재적 DoS입니다.

저장소 보기
10개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-64458 — Django 리디렉션 DoS (Windows)

설명

Django 리디렉션 응답의 서비스 거부(DoS) 문제로, 공격자가 리디렉션 응답을 구성할 때 URL 정규화 과정에서 과도한 CPU 작업을 유발할 수 있습니다. Windows에서는 Python의 Unicode NFKC 정규화가 특히 느립니다. 그 결과, 공격자가 제어하는 매우 큰 유니코드 URL로 HttpResponseRedirect/HttpResponsePermanentRedirect를 생성하거나 django.shortcuts.redirect()를 사용하면 비정상적인 처리 시간이 발생하여 요청 스레드가 고갈되고 서비스 속도 저하/중단이 발생할 수 있습니다.

이 문제는 CVE‑2025‑27556의 후속 조치이며, 특히 Windows에서 unicodedata.normalize()의 성능 특성으로 인해 영향을 받습니다.

영향

  • 사용자가 제공한 리디렉션 대상을 반영하거나 사용하는 엔드포인트(예: next/return_to 매개변수, 또는 신뢰할 수 없는 입력을 사용하여 리디렉션을 반환하는 앱 로직)를 통한 비인증 DoS.
  • Django의 리디렉션 클래스에 영향을 미침: HttpResponseRedirect (302) 및 (301), 그리고 .
HttpResponsePermanentRedirect
django.shortcuts.redirect()
  • 심각도: 높음 (Django 릴리스 노트에 명시됨). Linux/macOS는 훨씬 덜 영향을 받으며, Windows에서는 상당한 속도 저하가 나타납니다.
  • PoC (poc.py)가 보여주는 것

    • 호스트 이름에 전각 유니코드 문자(예: A)를 반복하여 매우 긴 URL을 생성합니다. 예: https://AA…/.
    • HttpResponseRedirect(url)를 반복적으로 인스턴스화하여 URL 정규화(iri_to_uri()) 및 분할(urlsplit())을 트리거하며, Windows에서 느린 경로를 실행합니다.
    • URL 크기가 증가함에 따라 인스턴스화당 평균 시간을 출력하여 매우 큰 유니코드 입력에 따라 계산 시간이 어떻게 증가하는지 보여줍니다.
    • 패치된 Django에서는 너무 긴 리디렉션 대상이 DisallowedRedirect로 조기에 거부되어(패치 요약 참조), 비용이 많이 드는 정규화 작업을 방지합니다.

    패치 요약 (c880530ddd4f)

    • HttpResponseRedirectBase.__init__에서 리디렉션 대상에 길이 검사를 추가합니다:
      • django.utils.http에서 MAX_URL_LENGTH를 가져옵니다.
      • 대상을 str로 변환하고, len(redirect_to_str) > MAX_URL_LENGTH이면 urlsplit()을 호출하기 전에 DisallowedRedirect를 발생시킵니다.
    • 매우 긴 유니코드 URL이 DisallowedRedirect를 발생시키는지 확인하는 테스트를 확장합니다.
    • 느린 NFKC 정규화로 인한 Windows 특정 DoS 위험으로서 4.2.26, 5.1.14 및 5.2.8 릴리스 노트에 CVE를 문서화합니다.

    영향/수정 버전

    • 수정 버전: 4.2.26, 5.1.14, 5.2.8.
    • 이전 패치 수준은 Windows에서 리디렉션 대상이 신뢰할 수 없는 입력에서 비롯될 때 취약합니다.

    참고

    • 업스트림 패치 diff: https://github.com/django/django/commit/c880530ddd4fabd5939bab0e148bebe36699432a.diff
    도구 다운로드