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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/itwizardo/dcs932l-emulation-cve-2024-37606-attack
Безопасность встроенных системБезопасность IoTАнализ уязвимостейЭксплуатацияОбратная инженерияАппаратная БезопасностьОбучение и ОбразованиеАнализ ПрошивокЭксплуатация Бинарных Файлов

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
GitHubitwizardo/dcs932l-emulation-cve-2024-37606-attack

DCS932L-Emulation-CVE-2024-37606-Attack

Упрощает эмуляцию прошивки D-Link DCS-932L с предварительно исправленными компонентами и включает эксплойт Proof-of-Concept для CVE-2024-37606.

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

Make Emulating Easy Again

ChatGPT Image Apr 22, 2025, 12_56_50 PM

Добро пожаловать! Этот репозиторий предоставляет инструменты и среду для эмуляции прошивки D-Link DCS-932L и демонстрации уязвимости CVE-2024-37606. Он включает предварительно пропатченные бинарные файлы и необходимые библиотеки, упрощая настройку эмуляции, так что вам не нужно вручную патчить с помощью таких инструментов, как Ghidra.

CVE-2024-37606

Этот проект включает эксплойт доказательства концепции (CVE-2024-37606-DCS932L.py) для CVE-2024-37606. Эта уязвимость связана с переполнением буфера в службе alphapd. Пожалуйста, используйте это ответственно и только в образовательных целях. Нажмите на фото, чтобы посмотреть видео Смотреть демо

Модификации для эмуляции

Было внесено несколько изменений для улучшения функциональности и удобства использования среды эмуляции прошивки:

  1. Стартовый скрипт: Добавлен стартовый скрипт (startup.sh) для упрощения эмуляции.
  2. Настройка Libnvram.so: Удалены строки 338–342 из оригинального libnvram.so для обеспечения правильной работы эмулятора NVRAM. Изменённый файл (firmadyne/libnvram.so) включён.
  3. Интеграция Firmadyne: Добавлена папка Firmadyne для облегчения эмуляции прошивки.
  4. Патч Alphapd: Пропатчен бинарный файл alphapd с помощью Ghidra для устранения ошибки, препятствующей получению IP из sysinfo во время эмуляции.
  5. Добавление qemu-mipsel-static: Включён qemu-mipsel-static для эмуляции MIPS Little Endian.

Установка и использование

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

1. Предварительные требования

  • Среда Linux (протестировано на системах на базе Ubuntu/Debian).
  • git
  • qemu-user-static
  • python3 и pip

2. Клонирование репозитория

root@kitploit:~
git clone https://github.com/itwizardo/DCS932L-Emulation-CVE-2024-37606-Attack DCS932L-CVE
cd DCS932L-CVE

3. Установка инструментов эмуляции пользовательского режима QEMU

  • В Linux (Debian/Ubuntu):
    root@kitploit:~
    sudo apt update
    sudo apt install qemu-user-static
    
  • В macOS (с помощью Homebrew):
    root@kitploit:~
    brew install qemu
    # QEMU installation via Homebrew includes user-mode static binaries.
    
  • В Windows (с помощью Chocolatey или ручной установки):
    • Использование Chocolatey (требуется установленный Chocolatey):
      root@kitploit:~
      choco install qemu
      
    • Ручная установка: Загрузите установщик QEMU с официального сайта QEMU и убедитесь, что каталог установки добавлен в PATH вашей системы.

4. Подготовка файловой системы прошивки

Скопируйте статический бинарный файл QEMU в файловую систему прошивки:

root@kitploit:~
sudo cp /usr/bin/qemu-mipsel-static ./usr/bin/

Установите неизменяемый атрибут для веб-каталога. Это предотвращает изменение критически важных файлов веб-сервера, необходимых для правильной работы эмуляции и эксплойта:

  • В Linux:
    root@kitploit:~
    sudo chattr +i etc_ro/web/
    
  • В Windows (PowerShell — устанавливает атрибут «только для чтения»):
    root@kitploit:~
    Set-ItemProperty -Path ./etc_ro/web -Name IsReadOnly -Value $true
    # Note: This sets the directory as Read-Only, preventing accidental changes.
    # To make contents read-only too, add -Recurse to Get-ChildItem:
    # Get-ChildItem -Path ./etc_ro/web -Recurse | Set-ItemProperty -Name IsReadOnly -Value $true
    
  • В macOS:
    root@kitploit:~
    sudo chflags schg etc_ro/web/
    

5. Запуск среды эмуляции

Войдите в среду chroot, используя бинарный файл MIPS Little Endian QEMU:

root@kitploit:~
sudo chroot . /usr/bin/qemu-mipsel-static /bin/sh

Внутри оболочки chroot запустите стартовый скрипт и запустите веб-сервер:

root@kitploit:~
# Execute startup tasks (network setup, etc.)
./startup.sh

# Set environment variables for nvram emulation
export LD_PRELOAD=/firmadyne/libnvram.so
export HOME=.
export RANDFILE=$HOME/.rnd

# Start the vulnerable web server (binds to 0.0.0.0, may take 1-2 mins to fully initialize)
alphapd 

Оставьте этот терминал работающим. Сервисы эмулируемого устройства будут доступны через хост-машину по IP-адресу, настроенному в startup.sh (часто 192.168.0.1).

6. Запуск эксплойта

Откройте новое окно терминала на вашей хост-машине (вне среды chroot).

Откройте в новом терминале:

root@kitploit:~
cd /path/to/DCS932L # Adjust path if necessary

(Необязательно) Установите необходимые пакеты Python, если они требуются скрипту (например, requests):

root@kitploit:~
# pip3 install requests # Uncomment if needed

Выполните скрипт эксплойта. Он автоматически нацелен на локальное эмулируемое окружение (192.168.0.1, настроенное startup.sh):

root@kitploit:~
python3 CVE-2024-37606-DCS932L.py

Чтобы указать другой IP-адрес, используйте аргумент --ip:

root@kitploit:~
# Example: python3 CVE-2024-37606-DCS932L.py --ip <target_ip>

Следуйте выводу скрипта, чтобы увидеть эксплойт в действии.

⚠️ Примечания

  • Эта прошивка — MIPS Little Endian. Вы должны использовать qemu-mipsel-static.
  • Использование qemu-mips-static (Big Endian) приведёт к ошибкам Invalid ELF image.
  • Служба alphapd привязывается к 0.0.0.0 внутри среды chroot и может требовать 1–2 минуты для полного ответа после запуска.
  • Скрипт startup.sh, вероятно, настраивает сетевой интерфейс (например, tap0) с IP 192.168.0.1. Проверьте это, если эксплойт не может подключиться.
  • Убедитесь, что необходимые библиотеки (например, /lib/ld-uClibc.so.0) присутствуют в каталоге /lib среды chroot.

Отказ от ответственности

Этот проект предназначен только для образовательных и исследовательских целей. Он демонстрирует известную уязвимость (CVE-2024-37606). Авторы не несут ответственности за любое неправомерное использование этой информации или кода. Используйте эту среду и эксплойт ответственно и этично.

Это было разработано в рамках школьного проекта для Novi Hogeschool.

Автор

Georgio T. - itwizardo

Не стесняйтесь вносить вклад в этот проект и улучшать инструменты для обратной разработки прошивки и анализа безопасности!

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