
Un sniffer de bajo número de pines para ICEStick, orientado a chips TPM
Convierte el ice40 stick en un sniffer LPC, registrando solo mensajes específicos de TPM. Este repositorio es una copia de https://github.com/lynxis/lpc_sniffer/, con modificaciones realizadas para registrar únicamente mensajes con el campo de inicio 0101 y dirección entre 24 y 27.
Este proyecto se utilizó para extraer claves VMK de BitLocker mediante la captura del bus LPC cuando BitLocker estaba habilitado en su configuración predeterminada. Más información disponible en este post.
iceprog lpc_sniffer.bin.make install../parse/read_serial.py /dev/ttyUSB1 | tee outlog 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
For orientation: the usb port points south:
green in the middle: overflow_led
overflow_led cuando el búfer interno está lleno. No se decodifican más tramas LPC.
El sniffer LPC escribirá tramas en el segundo UART del FTDI a 921600 baudios.
Un código de error se codifica en 4 bits.
Una trama LPC:
La memoria interna se utiliza como memoria direccionable de 48 bits. 48 bits equivalen exactamente a una trama LPC.
El sniffer LPC utiliza un búfer interno. Cuando el búfer interno está lleno, las tramas nuevas se descartan. El LED verde del medio se encenderá. El búfer interno puede guardar hasta 2**10 tramas LPC (1024).