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
SmmBackdoor — Primo backdoor System Management Mode open source e pubblicamente disponibile per piattaforme basate su UEFI. Ottimo come terreno di gioco generico per vari esperimenti SMM. | Kitploit
Strumenti/GitHubGitHub/cr4sh/smmbackdoor
Escalation di PrivilegiMeccanismi di PersistenzaExploitPost-ExploitHacking HardwareSviluppo PayloadAnalisi del Firmware
GitHubcr4sh/smmbackdoor

SmmBackdoor

Primo backdoor System Management Mode open source e pubblicamente disponibile per piattaforme basate su UEFI. Ottimo come terreno di gioco generico per vari esperimenti SMM.

Vedi Repository
6321612 anni faRevisionato da Kitploit

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

Backdoor SMM per piattaforme basate su UEFI


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Questo è un progetto legacy abbandonato, per la versione corrente della backdoor consulta la pagina del progetto SMM Backdoor Next Gen e la sua documentazione:

https://github.com/Cr4sh/SmmBackdoorNg

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Per maggiori informazioni su questo progetto, leggi il seguente articolo:

http://blog.cr4.sh/2015/07/building-reliable-smm-backdoor-for-uefi.html

Contenuto del repository:

  • SmmBackdoor.py -- Programma Python che consente di infettare l'immagine PE di un driver DXE UEFI con il codice della backdoor, comunicare con la backdoor installata per leggere la SMRAM e fare altre cose utili.

  • SmmBackdoor/ -- Codice sorgente della parte UEFI che viene eseguita in System Management Mode.

  • SmmBackdoor.efi, SmmBackdoor.pdb -- Binario della parte UEFI e i relativi simboli di debug.

  • smm_call/ -- Programma Linux proof of concept che interagisce con la backdoor installata per ottenere privilegi di root per il proprio processo.

Per compilare il progetto SmmBackdoor è necessario disporre di una macchina Windows con Visual Studio 2008 e il codice sorgente di EDK2 (https://github.com/tianocore/edk2).

Istruzioni passo passo:

  1. Copiare la sottodirectory SmmBackdoor nella directory del codice sorgente di EDK2.

  2. Modificare il file Conf/target.txt e impostare il valore della proprietà ACTIVE_PLATFORM su OvmfPkg/OvmfPkgX64.dsc.

  3. Modificare OvmfPkg/OvmfPkgX64.dsc e aggiungere le seguenti righe alla fine del file:

root@kitploit:~
#
root@kitploit:~
# Driver di terze parti
#
SmmBackdoor/SmmBackdoor.inf {
  <LibraryClasses>
    DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
    MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
}

4. Eseguire il Prompt dei comandi di Visual Studio 2008 e fare cd nella directory EDK2.

  1. Eseguire Edk2Setup.bat --pull per configurare l'ambiente di compilazione e scaricare i binari richiesti.

  2. cd SmmBackdoor && build

  3. Dopo la compilazione, il file immagine PE risultante verrà creato in Build/OvmfX64/DEBUG_VS2008x86/X64/SmmBackdoor/SmmBackdoor/OUTPUT/SmmBackdoor.efi

Per eseguire SmmBackdoor.efi come payload dell'infector, ad esempio sulla scheda madre Intel DQ77KB:

  1. Scaricare il firmware della scheda madre utilizzando un programmatore SPI hardware.

  2. Aprire l'immagine flash scaricata in UEFITool.

  3. Estrarre l'immagine PE del file FFS con GUID = 26A2481E-4424-46A2-9943-CC4039EAD8F8 e salvarla nel file extracted.bin.

  4. Infettare l'immagine estratta con SmmBackdoor.efi usando SmmBackdoor.py:

root@kitploit:~
$ python SmmBackdoor.py --infect extracted.bin --output infected.bin --payload SmmBackdoor.efi
  1. In UEFITool sostituire l'immagine PE originale con infected.bin.

  2. Salvare l'immagine flash modificata in un file e scriverla nella ROM della scheda madre con il programmatore.

La backdoor dispone anche di funzionalità di output di debug che consentono di visualizzare i messaggi di debug della fase DXE sullo schermo e ricevere i messaggi di debug della fase runtime tramite porta COM.

Per usare SmmBackdoor.py è necessario installare la libreria Python pefile (https://pypi.python.org/pypi/pefile) e il framework CHIPSEC (https://github.com/chipsec/chipsec) inclusi i binding Python.

Comandi supportati:

  • SmmBackdoor.py --infect <source_path> --output <dest_path> --payload <payload_path> - Infetta l'immagine PE del driver DXE con il codice della backdoor specificato.

  • SmmBackdoor.py --test - Verifica la presenza della backdoor e stampa le informazioni di stato dalla struttura BACKDOOR_INFO.

  • SmmBackdoor.py --dump-smram - Scarica tutte le regioni SMRAM disponibili nei file.

  • SmmBackdoor.py --read-phys

    - Stampa il dump esadecimale della pagina di memoria fisica all'indirizzo indicato.

  • SmmBackdoor.py --read-virt

    - Stampa il dump esadecimale della pagina di memoria virtuale all'indirizzo indicato.

  • SmmBackdoor.py --timer-enable - Abilita la SMI timer periodica richiesta per smm_call (di default è abilitata).

  • SmmBackdoor.py --timer-disable - Disabilita la SMI timer periodica.

Utilizzo di smm_call:

  • smm_call [<arg_1> [<arg_2>]] - Invia il codice di controllo e gli argomenti specificati alla backdoor SMM.

  • smm_call --privesc - Chiede alla backdoor di concedere privilegi di root al processo chiamante e avvia una shell di comandi.

Tieni presente che questo codice è stato testato solo con la scheda madre Intel DQ77KB. Puoi provare a eseguirlo su qualsiasi altro hardware compatibile con UEFI, ma alcune funzionalità della backdoor potrebbero non funzionare.

Scritto da: Dmytro Oleksiuk (alias Cr4sh)

[email protected] http://blog.cr4.sh

Scarica lo strumento