Odszyfrowanie chipa

Deszyfrowanie chipów jest również znane jako deszyfrowanie pojedynczego chipa (IC decryption). Ponieważ pojedyncze chipy mikrokomputera w oficjalnym produkcie są szyfrowane, programu nie można odczytać bezpośrednio za pomocą programatora.

Aby zapobiec nieautoryzowanemu dostępowi lub kopiowaniu programów na chipie mikrokontrolera, większość mikrokontrolerów ma zaszyfrowane bity blokady lub zaszyfrowane bajty w celu ochrony programów na chipie. Jeśli bit blokady szyfrowania jest włączony (zablokowany) podczas programowania, program w mikrokontrolerze nie może być bezpośrednio odczytany przez zwykłego programistę, co nazywa się szyfrowaniem mikrokontrolera lub szyfrowaniem chipa. Atakujący MCU używają specjalnego sprzętu lub sprzętu wykonanego samodzielnie, wykorzystują luki lub wady oprogramowania w konstrukcji chipa MCU i za pomocą różnych środków technicznych mogą wyodrębnić kluczowe informacje z chipa i uzyskać wewnętrzny program MCU. Nazywa się to łamaniem chipa.

Metoda deszyfrowania chipa

1. Atak na oprogramowanie

Ta technika zazwyczaj wykorzystuje interfejsy komunikacyjne procesora i wykorzystuje protokoły, algorytmy szyfrowania lub luki w zabezpieczeniach tych algorytmów do przeprowadzania ataków. Typowym przykładem udanego ataku programowego jest atak na wczesną serię mikrokontrolerów ATMEL AT89C. Atakujący wykorzystał luki w projekcie sekwencji operacji kasowania tej serii mikrokomputerów jednoprocesorowych. Po wymazaniu bitu blokady szyfrowania atakujący zatrzymał następną operację kasowania danych w pamięci programu na chipie, tak że zaszyfrowany mikrokomputer jednoprocesorowy stał się niezaszyfrowanym mikrokomputerem jednoprocesorowym, a następnie użył programatora do odczytania programu na chipie.

Bazując na innych metodach szyfrowania, można opracować urządzenia, które będą współpracować z określonym oprogramowaniem i przeprowadzać ataki programowe.

2. atak z wykrywaniem elektronicznym

Ta technika zazwyczaj monitoruje analogowe charakterystyki wszystkich połączeń zasilania i interfejsu procesora podczas normalnej pracy z wysoką rozdzielczością czasową i wdraża atak poprzez monitorowanie jego charakterystyk promieniowania elektromagnetycznego. Ponieważ mikrokontroler jest aktywnym urządzeniem elektronicznym, gdy wykonuje różne instrukcje, odpowiadające im zużycie energii również ulega zmianie. W ten sposób, poprzez analizę i wykrywanie tych zmian za pomocą specjalnych elektronicznych przyrządów pomiarowych i matematycznych metod statystycznych, można uzyskać określone kluczowe informacje w mikrokontrolerze.

3. technologia generowania błędów

Technika ta wykorzystuje nieprawidłowe warunki pracy, aby podsłuchiwać procesor, a następnie zapewnia dodatkowy dostęp do przeprowadzenia ataku. Najczęściej stosowane ataki generujące błędy obejmują skoki napięcia i skoki zegara. Ataki niskiego i wysokiego napięcia mogą być używane do wyłączania obwodów zabezpieczających lub zmuszania procesora do wykonywania błędnych operacji. Przejściowe zmiany zegara mogą resetować obwód zabezpieczający bez niszczenia chronionych informacji. Przejściowe zmiany zasilania i zegara mogą wpływać na dekodowanie i wykonywanie poszczególnych instrukcji w niektórych procesorach.

4. technologia sondy

Technologia ta polega na bezpośrednim odsłonięciu wewnętrznego okablowania układu scalonego, a następnie obserwacji, manipulowaniu i zakłócaniu działania mikrokontrolera w celu osiągnięcia celu ataku.

Dla wygody ludzie dzielą powyższe cztery techniki ataków na dwie kategorie, jedną z nich jest atak inwazyjny (atak fizyczny), ten typ ataku wymaga zniszczenia pakietu, a następnie użycia sprzętu do testowania półprzewodników, mikroskopów i mikro-pozycjonerów w specjalistycznym laboratorium. Może to potrwać godziny, a nawet tygodnie. Wszystkie techniki mikroprobingu to ataki inwazyjne. Pozostałe trzy metody to ataki nieinwazyjne, a zaatakowany mikrokontroler nie zostanie fizycznie uszkodzony. Ataki nieinwazyjne są szczególnie niebezpieczne w niektórych przypadkach, ponieważ sprzęt wymagany do ataków nieinwazyjnych można często samodzielnie zbudować i ulepszyć, a zatem jest bardzo tani.

Większość ataków nienaruszających wymaga od atakującego dobrej znajomości procesora i oprogramowania. Natomiast ataki sond inwazyjnych nie wymagają dużej początkowej wiedzy, a szeroki zestaw podobnych technik można zazwyczaj stosować przeciwko szerokiej gamie produktów. Dlatego ataki na mikrokontrolery często zaczynają się od intruzywnego inżynierii wstecznej, a zgromadzone doświadczenie pomaga rozwijać tańsze i szybsze techniki ataków nienaruszających.