
ICEStick के लिए एक कम पिन संख्या स्निफर - TPM चिप्स को लक्षित
आइस40 स्टिक को LPC स्निफर में बदलें, केवल TPM-विशिष्ट संदेशों को लॉग करें। यह रिपॉजिटरी https://github.com/lynxis/lpc_sniffer/ की एक प्रतिलिपि है, जिसमें केवल प्रारंभ फ़ील्ड 0101 और पते 24 से 27 के बीच के संदेशों को लॉग करने के लिए संशोधन किए गए हैं।
इस परियोजना का उपयोग BitLocker को उसकी डिफ़ॉल्ट कॉन्फ़िगरेशन में सक्षम होने पर LPC बस को स्निफ करके BitLocker VMK कुंजियाँ निकालने के लिए किया गया था। अधिक जानकारी इस पोस्ट में उपलब्ध है।
iceprog lpc_sniffer.bin द्वारा lpc_sniffer.bin को अपने ice40 में प्रोग्राम करें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
अभिविन्यास के लिए: USB पोर्ट दक्षिण की ओर इंगित करता है:
बीच में हरी LED: overflow_led
overflow_led तब होता है जब आंतरिक बफर भर जाता है। कोई और LPC फ्रेम डिकोड नहीं किए जाते हैं।
LPC स्निफर FTDI के दूसरे uart पर 921600 बॉड पर फ्रेम लिखेगा।
एक त्रुटि कोड 4 बिट्स में डिकोड किया जाता है
एक LPC फ्रेम करेगा:
आंतरिक मेमोरी का उपयोग 48-बिट एड्रेसेबल मेमोरी के रूप में किया जाता है। 48 बिट बिल्कुल एक lpc फ्रेम है
LPC स्निफर एक आंतरिक बफर का उपयोग कर रहा है। जब आंतरिक बफर भर जाता है, तो नए फ्रेम को त्याग दिया जाएगा। बीच में हरी LED चालू हो जाएगी। आंतरिक बफर 2**10 lpc फ्रेम (1024) तक सहेज सकता है।