Sposoby blokowania interfejsów JTAG, SWD, UART i innych interfejsów debugowania w czytnikach piórach OEM w produkcji: wypalanie bezpieczników, bity OTP, uwierzytelnianie certyfikatem debugowania oraz co kupujący muszą zweryfikować.

Opublikowano: lis 15, 2024 - 164 Wyświetlenia

Blokada interfejsu JTAG i blokowanie interfejsu debugowania w czytnikach piórach: dlaczego każdy egzemplarz produkcyjny powinien być wysyłany ze spalonymi bezpiecznikami

Odbiorcy: Ten artykuł jest skierowany do inżynierów bezpieczeństwa sprzętu, specjalistów ds. ochrony marki OEM/ODM, osób odpowiedzialnych za zgodność z przepisami oraz zespołów zakupowych oceniających, czy interfejsy debugowania JTAG, SWD, UART i inne w piórze czytającym SmartReadingPen są prawidłowo wyłączone w produkcji — oraz jakie nieodwracalne procedury przepalania bezpieczników muszą zostać wykonane, zanim jakiekolwiek urządzenie dla dzieci trafi do szkoły lub gospodarstwa domowego.

Pióro czytające, które jest dostarczane z włączonym portem JTAG, to pióro czytające, które każdy atakujący z kablem za 20 USD może przejąć. Podłącz cztery piny do sondy JTAG, zatrzymaj Cortex-A53, zrzuć cały obraz firmware z NAND, wyciągnij klucze AES z interfejsu testowego bezpiecznego elementu i wynieś klucz podpisywania firmware, hash kodu PIN rodzica oraz klucz deszyfrujący model klonowania głosu. Wszystko w niecałe 10 minut. Algorytm kryptograficzny jest niezłamny; tylne drzwi zostały szeroko otwarte.

To jest notatka inżynieryjna dotycząca naszego blokowania interfejsów debugowania: wyłączenie JTAG, wyłączenie SWD, blokada UART, przepalanie bezpieczników, provisioning OTP oraz protokół audytu fabrycznego, którego należy wymagać od każdego dostawcy piór czytających OEM przed przyjęciem partii produkcyjnej.

1. Powierzchnia ataku interfejsu debugowania

Nowoczesny SoC pióra czytającego udostępnia wiele interfejsów debugowania, z których każdy jest potencjalnymi tylnymi drzwiami:

Interfejs Piny Funkcja Ryzyko, jeśli włączony
JTAG (IEEE 1149.1) 5 pinów (TCK, TMS, TDI, TDO, TRST) Pełne zatrzymanie CPU, odczyt/zapis pamięci, odczyt bezpieczników Krytyczne
SWD (ARM Serial Wire Debug) 2 piny (SWDIO, SWCLK) Takie samo jak JTAG, ale mniejsza liczba pinów Krytyczne
UART (konsola szeregowa) 2 piny (TX, RX) Logi bootowania, czasem powłoka root Wysokie
Pady testowe SPI / I2C 2–4 piny Odczyt NAND, czasem tryb testowy SoC Wysokie
Tryb urządzenia USB Para różnicowa Może ujawnić DFU (Device Firmware Update) Średnie
HCI Wi-Fi / BT Antena Może ujawnić logi firmware, czasem komendy AT Średnie

Produkcyjne pióro czytające musi mieć wszystkie sześć interfejsów wyłączonych lub zabezpieczonych kryptograficznym uwierzytelnianiem. Cokolwiek mniej to tylne drzwi.

2. Trzy warstwy blokady

Nasze blokowanie interfejsów debugowania składa się z trzech niezależnych warstw:

  1. Bezpiecznik sprzętowy — bezpiecznik OTP, który fizycznie wyłącza dostęp JTAG/SWD do logiki debugowania CPU. Po przepaleniu nie może zostać przywrócony; bit bezpiecznika jest odczytywany przez SoC przy resecie i bramkuje logikę debugowania.
  2. Wyłączenie programowe — firmware, który jawnie wyłącza konsolę UART, tryb testowy SPI i tryb USB DFU. Oprogramowanie może zostać pokonane przez atakującego, który może reflashować, dlatego jest warstwowane na szczycie bezpiecznika sprzętowego.
  3. Uwierzytelnianie kryptograficzne — nawet przy przepalonym bezpieczniku sprzętowym i wyłączonym oprogramowaniu, niektóre interfejsy (USB, Wi-Fi) pozostają fizycznie dostępne dla swojej głównej funkcji. Są one zabezpieczone uwierzytelnionym certyfikatem debugowania, który OEM podpisuje wyłącznie do użytku fabrycznego.

Debug Interface Lockdown — Three Layers

3. Procedura przepalania bezpiecznika JTAG/SWD

SoC udostępnia bit bezpiecznika wyłączającego JTAG/SWD w swoim bloku pamięci OTP. Procedura przepalania bezpiecznika jest wykonywana na każdym egzemplarzu w fabryce, na stacji testów końcowych:

  1. Konfiguracja stacji testowej. Pióro jest podłączane do fabrycznego urządzenia testowego przez port USB-C. Urządzenie testowe podaje zasilanie i uruchamia produkcyjny obraz testowy.
  2. Sprawdzenie włączenia JTAG. Urządzenie testowe najpierw próbuje podłączenia JTAG. Udane podłączenie loguje pióro jako wadliwe; linia zostaje zatrzymana, a egzemplarz odrzucony.
  3. Polecenie programowe. Urządzenie testowe wydaje polecenie programowe przez obraz testowy: fuse_blow(jtag_disable). Polecenie zapisuje bit fuse OTP.
  4. Weryfikacja. Fixture ponownie próbuje JTAG. Sonda powinna teraz zgłosić "0x0" na wszystkich rejestrach. Pomyślny odczyt zer jest rejestrowany w bazie danych fabryki.
  5. Blokada trwała. Po przepaleniu fuse nie można przywrócić, nawet przez OEM. Jedynym sposobem ponownego włączenia JTAG jest wymiana SoC.

Przepalanie fuse OTP wykorzystuje wewnętrzną pompę ładunkową SoC; nie jest przykładane napięcie zewnętrzne. Komórka fuse ma strukturę antifuse, która fizycznie przepala metalowe połączenie — widoczne pod mikroskopem jako niewielka pustka.

4. Blokada konsoli UART

UART jest najczęściej pozostawianym otwartym interfejsem w urządzeniach dla dzieci, ponieważ jest przydatny do diagnostyki fabrycznej. Nasza blokada:

  1. Fuse wyłączający konsolę — drugi fuse OTP wyłącza logikę wyświetlania konsoli w bootloaderze ROM.
  2. Niestandardowa kompilacja firmware z flagą -print0 (bez wyjścia UART) — produkcyjny firmware aplikacji jest budowany z flagą usuwającą wszystkie instrukcje print na UART.
  3. Fizyczne usunięcie padów — w SKU Q8 i T2 pady TX/RX UART są fizycznie odcinane laserem fabrycznym po stacji testowej. Cięcie laserowe jest weryfikowane testem ciągłości.
  4. Ponowna autoryzacja UART — jeśli wymagany jest debug UART do legalnej naprawy fabrycznej, OEM musi podpisać jednorazowy certyfikat debugowania, który odblokuje UART na dokładnie 4 godziny, a następnie automatycznie się ponownie zablokuje.

4-godzinny certyfikat debugowania wymaga HSM (Hardware Security Module) OEM i jest rejestrowany w naszej fabrycznej bazie audytowej. Naprawy poza tym oknem wymagają odesłania pena przez klienta do fabryki.

5. Blokada USB DFU

USB Device Firmware Update (DFU) to przydatny interfejs fabryczny, ale niebezpieczna powierzchnia ataku. Nasza blokada:

  1. Fuse wyłączający DFU — trzeci fuse OTP wyłącza tryb DFU w ROM SoC.
  2. Autoryzacja DFU na poziomie aplikacji — jedyną ścieżką aktualizacji firmware jest mechanizm OTA, który wymaga podpisu ECDSA z klucza podpisującego OEM.
  3. Blokada deskryptorów USB — deskryptory USB zgłaszają urządzenie tylko do odczytu typu mass storage lub HID, a nie urządzenie DFU.

Połączenie to uniemożliwia atakującemu wykorzystanie hosta USB do ponownego flashowania pena firmware'em atakującego, nawet jeśli ma fizyczny dostęp do portu USB-C.

6. Blokada HCI Wi-Fi/Bluetooth

Radio Wi-Fi i Bluetooth są interfejsami produkcyjnymi, które muszą pozostać funkcjonalne, ale ich interfejsy Host Controller Interface (HCI) mogą ujawniać logi firmware i komendy AT. Nasza blokada:

  1. Autoryzacja komend HCI — tylko podpisane komendy HCI z procesora aplikacyjnego są akceptowane przez chipset Wi-Fi/BT.
  2. Blokada firmware produkcyjnego — firmware chipsetu Wi-Fi/BT jest zablokowany do konkretnej wersji podpisanej przez OEM; ponowne flashowanie wymaga obrazu podpisanego przez OEM.
  3. Usuwanie logów — produkcyjny firmware usuwa wszystkie instrukcje logów debugowania ze sterownika Wi-Fi/BT.

Jest to część szerszego briefu bezpieczeństwa BLUE/ Wi-Fi , ale blokada debugowania dotyczy konkretnie bramkowania HCI.

7. Certyfikat debugowania do legalnego dostępu fabrycznego

OEM zachowuje certyfikat debugowania , który może odblokować interfejsy debugowania do legalnego użytku fabrycznego. Certyfikat jest certyfikatem X.509 podpisanym przez HSM OEM, o następujących właściwościach:

Właściwość Wartość
Okres ważności 4 godziny od wydania
Dozwolone interfejsy Tylko UART; JTAG/SWD trwale zablokowane
Dozwolone operacje Odczyt pamięci; brak zapisu pamięci
Powiązanie z numerem seryjnym pena Certyfikat jest ważny dokładnie dla jednego numeru seryjnego pena
Rejestrowanie audytu Każde zdarzenie odblokowania jest rejestrowane w HSM OEM

Certyfikat jest dostarczany do pena przez fabryczny fixture testowy i jest jednorazowy (single-use). Drugie odblokowanie wymaga nowego certyfikatu z HSM, co wymaga zatwierdzenia multi-signature 2-of-3 przez inżynierów OEM.

8. Audyt fabryczny 100%

Każdy produkcyjny pen jest testowany na stacji końcowej QC w celu weryfikacji blokady debugowania:

  1. Test sondy JTAG — próba podłączenia JTAG; oczekiwany odczyt "0x0"; rejestracja pass/fail.
  2. Test sondy SWD — próba dołączenia SWD; oczekiwany odczyt "0x0"; logowanie pass/fail.
  3. Test konsoli UART — ustawienie 115200 baud na padach UART; oczekiwany brak wyjścia; logowanie pass/fail.
  4. Test USB DFU — wysłanie polecenia USB DFU; oczekiwana odpowiedź "unauthorized"; logowanie pass/fail.
  5. Test Wi-Fi HCI — wysłanie surowego polecenia HCI; oczekiwane "unsupported"; logowanie pass/fail.

Awaria w którymkolwiek z 5 testów powoduje odrzucenie pióra i skierowanie go do stacji rework. Wskaźnik odrzuceń w produkcji wynosi 0.4% (typowe przyczyny: wada komórki fuse, nieczyste cięcie pada UART, błędnie skonfigurowany deskryptor USB). Wszystkie zdarzenia odrzuceń są rejestrowane w fabrycznym MES i przeglądane co tydzień przez zespół QA.

Wskazówka dla kupującego: Zawsze wymagaj kopii dziennika audytu fabrycznego dla swojej partii produkcyjnej. Dostawca, który nie może okazać dziennika, albo nie przeprowadza audytu, albo ukrywa awarie. W obu przypadkach nie przyjmuj partii.

9. Scenariusz odzyskiwania w terenie

Pióro zwrócone przez klienta z podejrzeniem usterki oprogramowania nie może być debugowane w terenie, ponieważ interfejsy debugowania są zablokowane. Procedura odzyskiwania:

  1. Klient zwraca pióro do centrum serwisowego OEM z opisem usterki.
  2. Centrum serwisowe weryfikuje usterkę jedynie testem włączenia i przycisku.
  3. Jeśli usterka jest odtwarzalna, centrum serwisowe wydaje certyfikat debugowania podpisany przez OEM z HSM, odblokuje UART na 4 godziny i uruchamia diagnostykę.
  4. Jeśli usterka dotyczy firmware, centrum serwisowe ponownie flashuje ścieżką OTA (która działa niezależnie od stanu blokady debugowania) i zwraca pióro.
  5. Jeśli usterka dotyczy sprzętu, centrum serwisowe wymienia moduł PCB w ramach RMA i utylizuje oryginał w bezpiecznym strumieniu e-odpadów.

4-godzinne okno zmusza centrum serwisowe do wykonania diagnostyki w jednej zmianie, zapobiegając nadużywaniu okna w weekendy lub podczas urlopów.

10. Personalizacja OEM i plan rozwoju

Dla klientów hurtowych piór czytających z niestandardowym firmware oferujemy trzy poziomy blokady:

Poziom Co jest zablokowane Zastosowanie NRE
Standard Wszystkie 5 interfejsów trwale zablokowanych Sprzedaż konsumencka $0
Premium Tak samo jak Standard + siatka antytamperowa + zalew ochronny Flota szkolna K-12 $1,20/szt.
Obrona Wszystko powyżej + lista unieważniania certyfikatów debugowania + dziennik audytu przez cały cykl życia Zastosowania rządowe / wrażliwe $4,50/szt.

Roadmapa na rok 2027 dodaje bezpieczniki reagujące na sabotaż: antifuse wykrywający próby fizycznego odsłonięcia układu, który sam się przepala, zerując klucze. Jest to część szerszego strumienia prac dotyczącego bezpiecznego elementu i ochrony przed sabotażem.

Poproś o wycenę — uzyskaj szybką odpowiedź z fabryki

Powiązane lektury

Poproś o wycenę — uzyskaj szybką odpowiedź z fabryki

11. Pokrycie SKU i przepustowość fabryki dla 11-modelowej oferty

Tryb blokady debugowania jest obowiązkowy we wszystkich 11 SKU. Modele z poziomu podstawowego B1, B2, P2 i KF1 są dostarczane ze standardowym poziomem zabezpieczeń ($0 NRE) i wykorzystują tę samą komórkę antifuse, która w ciągu 12 ms rozładowuje ładunek 1,8 V przez metalowe połączenie; współczynnik braków fabrycznych na poziomie standardowym wynosi 0,4%. Modele ze średniego poziomu F8, K7, Q6 i L5 posiadają poziom standardowy oraz dodatkową stację cięcia laserowego UART za dodatkowe $0,06 za sztukę. Modele premium Q8, T2 i Y6 posiadają pełny poziom obronny za $4,50 za sztukę, co dodaje siatkę reagującą na manipulację, która automatycznie zeruje klucze, jeśli obudowa zostanie otwarta o więcej niż 1,2 mm. Oprogramowanie sprzętowe T2 to 2.6.4 z ogniwem Li-ion 18650 o pojemności 2,500 mAh zapewniającym 14 godzin pracy; oprogramowanie sprzętowe Q8 to 3.3.1; oprogramowanie sprzętowe Y6 to 2.6.4 z awaryjnym połączeniem komórkowym 4G do weryfikacji sygnatur oprogramowania OTA. Każda seria produkcyjna posiada unikalny certyfikat na sztukę wypalony w zabezpieczonym elemencie NXP SE050 podczas wytwarzania. Przepustowość na stacji blokady wynosi 320 sztuk na zmianę na linii Q8, 240 sztuk na zmianę na linii T2 oraz 280 sztuk na zmianę na linii Y6. Wszystkie trzy SKU premium są dostarczane z 18 aktywnymi certyfikatami, w tym CE w ramach RED/EMC/LVD, FCC Part 15B, UKCA, EN 71-1/2/3, ASTM F963-17, CPSIA/CPC, RoHS, REACH, PSE, KC, GCC/SFDA, SNI, NOM, INMETRO, RCM, ISED, UN38.3 oraz IEC 62133-2.

12. Warunki handlowe, kody HS oraz warunki płatności dla programów OEM

Długopisy czytające są klasyfikowane kodem HS 8543.70 przy wwoźle jako samodzielne urządzenia elektroniczne lub 9503.00 przy sprzedaży w zestawie prezentowym z dołączoną zabawką. Warunki handlowe to EXW, FOB, CIF, DDP oraz DAP; nabywcy OEM zazwyczaj wybierają FOB Shenzhen dla konsolidacji frachtu lotniczego lub DDP dla dostawy bezpośrednio do magazynu w UE, USA, krajach Zatoki Perskiej oraz rynkach ASEAN. Płatność to T/T 30/70 z 2,4% rabatem za wczesną płatność, gdy saldo jest przelewane w ciągu 14 dni od faktury, L/C za okazaniem dla nowych nabywców powyżej $50,000, OA dla kont ustabilizowanych z dobrą historią kredytową oraz PayPal lub karta kredytowa dla próbek poniżej $1,000. MOQ wynosi 500 sztuk dla neutralnego stanu magazynowego B1/B2/P2/KF1, 1,000 dla niestandardowego koloru oraz od 3,000 do 5,000 dla programów z prywatną formą i private label. Ceny jednostkowe EXW Shenzhen mieszczą się w przedziale od $3,80 do $14,50 w całej linii: Q8 w $14,20 MOQ 1,000, T2 w $14,50 MOQ 500, Y6 w $13,80 MOQ 500, K7 w $9,40, F8 w $8,90, KF1 w $7,20, Q6 w $7,80, L5 w $10,50, B1 w $4,20, B2 w $4,80 oraz P2 w $3,80. Od 2023 roku wysłaliśmy ponad 47,000 sztuk do 47 krajów dla ponad 230 dystrybutorów.

Debug Lockdown Tier Coverage Across 11 Reading Pen SKUs

13. Najczęściej zadawane pytania (logistyka OEM i poziom SKU)

Frequently Asked Questions

Które SKU długopisów czytających są dostarczane z wojskowym poziomem blokady debugowania?
Q8, T2 i Y6 są dostarczane z poziomem wojskowym przy dopłacie NRE w wysokości 4,50 USD za sztukę. Poziom ten dodaje reagującą na manipulację siatkę, która automatycznie zeruje klucze, jeśli obudowa zostanie otwarta ponad 1,2 mm. Firmware Q8 to 3.3.1, firmware T2 to 2.6.4 z ogniwem Li-ion 18650 2500 mAh zapewniającym 14 godzin pracy, firmware Y6 to 2.6.4 z awaryjnym trybem OTA 4G.
Jakie jest MOQ i przedział cenowy dla OEM długopisu czytającego z blokadą debugowania?
MOQ dla neutralnego stanu magazynowego wynosi 500 sztuk dla B1/B2/P2/KF1. MOQ dla niestandardowego koloru wynosi 1000 sztuk. MOQ dla prywatnej formy i etykiety wynosi od 3000 do 5000 sztuk. Przedział cenowy EXW Shenzhen to od 3,80 do 14,50 USD za sztukę. Czas realizacji produkcji wynosi od 18 do 28 dni plus od 18 do 25 dni na fracht morski lub od 4 do 6 dni na fracht lotniczy. Od 2023 roku wysłaliśmy ponad 47 000 sztuk do 47 krajów.
Jakie certyfikaty, kody HS i warunki płatności obowiązują zamówienia OEM na długopisy czytające z blokadą debugowania?
Długopisy czytające są objęte 18 aktywnymi certyfikatami, w tym CE (RED/EMC/LVD), FCC, UKCA, EN 71-1/2/3, ASTM F963, CPSIA, RoHS, REACH, PSE, KC, GCC/SFDA, SNI, NOM, INMETRO, RCM, ISED, UN38.3, IEC 62133. Kod HS to 8543.70 samodzielnie lub 9503.00 z opakowaniem z dołączoną zabawką. Płatność to T/T 30/70 z 2,4% rabatem za wcześniejszą płatność, L/C, OA lub PayPal. Warunki handlowe to EXW, FOB, CIF, DDP, DAP.
Twój koszyk
Ulepsz swoje doświadczenie, pozwalając na cookies. Polityka cookies
Chat on WhatsApp