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
lpc_sniffer_tpm — Uno sniffer a basso numero di pin per ICEStick - mirato ai chip TPM | Kitploit
Strumenti/GitHubGitHub/denandz/lpc_sniffer_tpm
Sicurezza Sistemi EmbeddedMemory ForensicsEsfiltrazione DatiInformatica ForenseDigital ForensicsHacking HardwareSicurezza HardwareAnalisi del Firmware
GitHubdenandz/lpc_sniffer_tpm

lpc_sniffer_tpm

Uno sniffer a basso numero di pin per ICEStick - mirato ai chip TPM

Vedi Repository
178306 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

Sniffer LPC (low pin count) specifico per TPM per ice40 stick

Trasforma la ice40 stick in uno sniffer LPC, registrando solo i messaggi specifici del TPM. Questo repository è un duplicato di https://github.com/lynxis/lpc_sniffer/, con modifiche apportate per registrare solo i messaggi con campo iniziale 0101 e indirizzo compreso tra 24 e 27.

Questo progetto è stato utilizzato per estrarre le chiavi VMK di BitLocker sniffando il bus LPC quando BitLocker era abilitato nella sua configurazione predefinita. Ulteriori informazioni sono disponibili in questo post.

funzionalità

  • letture + scritture i/o
  • letture + scritture di memoria
  • errori di sincronizzazione

Come usare

  1. modificare l'EEPROM del FTDI e abilitare la modalità OPTO sul Canale B
  2. programmare lpc_sniffer.bin nella tua ice40 con iceprog lpc_sniffer.bin
  3. nota: il comando precedente può essere sostituito da make install
  4. collegare il bus LPC
  5. estrarre i dati LPC: python3 ./parse/read_serial.py /dev/ttyUSB1 | tee outlog
  6. estrarre la chiave dai dati: cut -f 2 -d' outlog | grep '2...00$' | perl -pe 's/.{8}(..)..\n/$1/' | grep -Po "2c0000000100000003200000(..){32}"

quali connettori sono usati sulla IceStick?

  • connettore J1
root@kitploit:~
	VCC 3.3|NC 1
	GND        2
	lpc_clock  3
	lpc_ad[0]  4
	lpc_ad[1]  5
	lpc_ad[2]  6
	lpc_ad[3]  7
	lpc_frame  8
	lpc_reset  9
  • uscita uart tramite il ftdi

LED

root@kitploit:~
	Per orientamento: la porta usb punta a sud:
	verde al centro: overflow_led

overflow_led quando il buffer interno è pieno. Non vengono più decodificati frame LPC

Protocollo Uart

Lo sniffer LPC scriverà i frame sulla seconda uart del FTDI a 921600 baud.

formato

  • 4 byte: indirizzo
  • 1 byte: dati
  • 1 byte: 0-3 bit: direzione+tipo, 4-7: codice di errore
  • 2 byte: '\r\n'

codici di errore

Un codice di errore è decodificato in 4 bit

  • 0001 - timeout di sincronizzazione.

Documentazione interna

Un frame LPC verrà:

  1. decodificato dal decoder LPC
  2. salvato nella memoria interna
  3. completato con \r\n
  4. scritto sulla uart

layout in memoria

La memoria interna è usata come memoria indirizzabile a 48 bit. 48 bit corrispondono esattamente a un frame lpc

  • 4 byte: indirizzo
  • 1 byte: dati
  • 1 byte: direzione/tipo + codice di errore

buffer interno

Lo sniffer LPC utilizza un buffer interno. Quando il buffer interno è pieno, i nuovi frame verranno scartati. Il LED verde al centro si accenderà. Il buffer interno può salvare fino a 2**10 frame lpc (1024).

Scarica lo strumento