Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
DCS932L-Emulation-CVE-2024-37606-Attack — Semplifica l'emulazione del firmware D-Link DCS-932L con componenti pre-patchati e include un exploit proof-of-concept per la CVE-2024-37606. | Kitploit
Strumenti/GitHubGitHub/itwizardo/dcs932l-emulation-cve-2024-37606-attack
Sicurezza Sistemi EmbeddedSicurezza IoTAnalisi delle VulnerabilitàExploitReverse EngineeringSicurezza HardwareApprendimento e FormazioneAnalisi del FirmwareBinary Exploitation

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
GitHubitwizardo/dcs932l-emulation-cve-2024-37606-attack

DCS932L-Emulation-CVE-2024-37606-Attack

Semplifica l'emulazione del firmware D-Link DCS-932L con componenti pre-patchati e include un exploit proof-of-concept per la CVE-2024-37606.

Vedi Repository
121 anno faNon ancora revisionato

Rendi di nuovo facile l'emulazione

ChatGPT Image Apr 22, 2025, 12_56_50 PM

Benvenuto! Questo repository fornisce strumenti e un ambiente per emulare il firmware della D-Link DCS-932L e dimostrare la vulnerabilità CVE-2024-37606. Include binari pre-patchati e le librerie necessarie, semplificando la configurazione dell'emulazione in modo che tu non debba eseguire patch manuali con strumenti come Ghidra.

CVE-2024-37606

Questo progetto include un proof-of-concept exploit (CVE-2024-37606-DCS932L.py) per la CVE-2024-37606. Questa vulnerabilità comporta un buffer overflow nel servizio alphapd. Si prega di usarlo in modo responsabile e solo per scopi educativi. Clicca sulla foto per vedere il video Guarda la demo

Modifiche per l'emulazione

Sono state apportate diverse modifiche per migliorare funzionalità e usabilità dell'ambiente di emulazione del firmware:

  1. Script di avvio: Aggiunto uno script di avvio (startup.sh) per semplificare l'emulazione.
  2. Adeguamento di Libnvram.so: Rimosse le righe da 338 a 342 dal libnvram.so originale per garantire il corretto funzionamento dell'emulatore NVRAM. Il file modificato (firmadyne/libnvram.so) è incluso.
  3. Integrazione di Firmadyne: Aggiunta la cartella Firmadyne per facilitare l'emulazione del firmware.
  4. Patch di Alphapd: Patchato il binario alphapd usando Ghidra per risolvere un errore che impediva il recupero dell'IP da sysinfo durante l'emulazione.
  5. Aggiunta di Qemu-mipsel-static: Incluso qemu-mipsel-static per l'emulazione MIPS Little Endian.

Configurazione e utilizzo

Segui questi passaggi per configurare l'ambiente di emulazione ed eseguire l'exploit.

1. Prerequisiti

  • Un ambiente Linux (testato su sistemi basati su Ubuntu/Debian).
  • git
  • qemu-user-static
  • python3 e pip

2. Clona il repository

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

3. Installa gli strumenti di emulazione utente QEMU

  • Su Linux (Debian/Ubuntu):
    root@kitploit:~
    sudo apt update
    sudo apt install qemu-user-static
    
  • Su macOS (usando Homebrew):
    root@kitploit:~
    brew install qemu
    # L'installazione di QEMU tramite Homebrew include i binari statici in modalità utente.
    
  • Su Windows (usando Chocolatey o installazione manuale):
    • Usando Chocolatey (richiede Chocolatey installato):
      root@kitploit:~
      choco install qemu
      
    • Installazione manuale: scarica il programma di installazione di QEMU dal sito ufficiale di QEMU e assicurati che la directory di installazione sia aggiunta al PATH di sistema.

4. Prepara il filesystem del firmware

Copia il binario statico di QEMU nel filesystem del firmware:

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

Imposta l'attributo immutabile sulla directory web. Questo impedisce la modifica di file critici del server web necessari per il corretto funzionamento dell'emulazione e dell'exploit:

  • Su Linux:
    root@kitploit:~
    sudo chattr +i etc_ro/web/
    
  • Su Windows (PowerShell - Imposta l'attributo di sola lettura):
    root@kitploit:~
    Set-ItemProperty -Path ./etc_ro/web -Name IsReadOnly -Value $true
    # Nota: imposta la directory come di sola lettura, prevenendo modifiche accidentali.
    # Per rendere di sola lettura anche i contenuti, aggiungi -Recurse a Get-ChildItem:
    # Get-ChildItem -Path ./etc_ro/web -Recurse | Set-ItemProperty -Name IsReadOnly -Value $true
    
  • Su macOS:
    root@kitploit:~
    sudo chflags schg etc_ro/web/
    

5. Avvia l'ambiente di emulazione

Entra nell'ambiente chroot usando il binario QEMU MIPS Little Endian:

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

Dentro la shell chroot, esegui lo script di avvio e avvia il server web:

root@kitploit:~
# Esegue le attività di avvio (configurazione di rete, ecc.)
./startup.sh

# Imposta le variabili d'ambiente per l'emulazione nvram
export LD_PRELOAD=/firmadyne/libnvram.so
export HOME=.
export RANDFILE=$HOME/.rnd

# Avvia il server web vulnerabile (si vincola a 0.0.0.0, potrebbe richiedere 1-2 minuti per l'inizializzazione completa)
alphapd 

Lascia questo terminale in esecuzione. I servizi del dispositivo emulato saranno accessibili dalla macchina host tramite l'indirizzo IP configurato da startup.sh (spesso 192.168.0.1).

6. Esegui l'exploit

Apri una nuova finestra di terminale sulla macchina host (fuori dall'ambiente chroot).

Apri in un nuovo terminale:

root@kitploit:~
cd /path/to/DCS932L # Regola il percorso se necessario

(Facoltativo) Installa i pacchetti Python richiesti se lo script ne ha bisogno (ad es. requests):

root@kitploit:~
# pip3 install requests # Rimuovi il commento se necessario

Esegui lo script dell'exploit. Punta automaticamente all'ambiente emulato locale (192.168.0.1 configurato da startup.sh):

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

Per puntare a un indirizzo IP diverso, usa l'argomento --ip:

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

Segui l'output dello script per vedere l'exploit in azione.

⚠️ Note

  • Questo firmware è MIPS Little Endian. Devi obbligatoriamente usare qemu-mipsel-static.
  • Usare qemu-mips-static (Big Endian) produrrà errori Invalid ELF image.
  • Il servizio alphapd si vincola a 0.0.0.0 all'interno dell'ambiente chroot e potrebbe richiedere 1-2 minuti per diventare completamente reattivo dopo l'esecuzione.
  • Lo script startup.sh probabilmente configura un'interfaccia di rete (ad es. tap0) con IP 192.168.0.1. Verifica questo se l'exploit non riesce a connettersi.
  • Assicurati che le librerie necessarie (come /lib/ld-uClibc.so.0) siano presenti nella directory /lib dell'ambiente chroot.

Disclaimer

Questo progetto è solo per scopi educativi e di ricerca. Dimostra una vulnerabilità nota (CVE-2024-37606). Gli autori non sono responsabili per qualsiasi uso improprio di queste informazioni o del codice. Usa questo ambiente e questo exploit in modo responsabile ed etico.

Questo è stato sviluppato come parte di un progetto scolastico per la Novi Hogeschool.

Autore

Georgio T. - itwizardo

Sentiti libero di contribuire a questo progetto e migliorare gli strumenti per il reverse engineering dei firmware e l'analisi della sicurezza!

Scarica lo strumento