Atak na mikrokontrolery, część 1.PDF

(132 KB) Pobierz
Atak na mikrokontrolery, część 1
T R E N D Y
Opracowuj¹c programy zadawa³em sobie czÍsto pytanie: na ile
bezpieczny jest mÛj program wewn¹trz mikrokontrolera?
W†jakim stopniu urz¹dzenie, na ktÛrego konstrukcjÍ i†rozwÛj
poúwiÍci³em na przyk³ad dwa lata, a†ktÛrego (w wiÍkszoúci
przypadkÛw) g³Ûwn¹ wartoúci¹ jest program, jest trudne do
skopiowania? Na ile pewne jest zabezpieczenie przez ustawienie
bitÛw blokuj¹cych dostÍp do pamiÍci programu? Jak skuteczna
jest blokada dostÍpu do pamiÍci typu Flash przy moøliwoúci jej
wielokrotnego zapisu?
część 1
Od redakcji
Publikuj¹c ten artyku³ zamierzamy
sprowokowaÊ dyskusjÍ na temat zabez-
pieczenia w³asnoúci intelektualnej. Za-
chÍcamy wiÍc do przysy³ania w³asnych
pomys³Ûw ìrozkuwaniaî zabezpieczeÒ.
Nie wszystkie sposoby opisane w†arty-
kule s¹ moøliwe do natychmiastowego
odtworzenia w†warunkach typowego la-
boratorium elektronicznego, ale niektÛ-
re nie wymagaj¹ praktycznie øadnego
wsparcia sprzÍtowego.
Jak pisze Sergiej o†swojej pracy, po-
lega ona na zrozumieniu, jak zabezpie-
czenie moøe zostaÊ z³amane i†udziele-
niu wskazÛwek producentowi, jak ono
powinno byÊ wzmocnione. Badania te,
w†zwi¹zku z†rosn¹cym zastosowaniem
mikrokontrolerÛw - na przyk³ad w†kar-
tach p³atniczych - maj¹ ogromne zna-
czenie.
Dla przeprowadzania eksperymentÛw
dostÍpne s¹ mikrokontrolery wielokrot-
nie programowalne. Do produkcji nie-
wielkiej liczby urz¹dzeÒ przeznaczone
s¹ mikrokontrolery do jednokrotnego za-
programowania (OTP), ktÛre s¹ znacznie
taÒsze od tych do wielokrotnego uøyt-
ku. Dla produkcji wielkonak³adowej
przeznaczone s¹ mikrokontrolery progra-
mowane przez producenta w†procesie
jego produkcji. Tak wytwarzane uk³ady
s¹ bardzo tanie, jednak ze wzglÍdu na
koszt wdroøenia tak zwanej maski, przy
woluminie poniøej 1000 sztuk nie s¹
op³acalne.
WrÛÊmy jednak do najczÍúciej stoso-
wanych mikrokontrolerÛw, ktÛre wypo-
saøone s¹ najczÍúciej w†pamiÍÊ EPROM,
Wprowadzenie
Mikrokontrolery znajduj¹ zastosowa-
nia praktycznie we wszystkich nowo-
czesnych urz¹dzeniach. CzÍsto s¹ takøe
uøywane przez amatorÛw do budowania
niewielkich uk³adÛw ìrozrywkowychî,
inne uøywane s¹ przez firmy do budo-
wania urz¹dzeÒ s³uø¹cych do kontroli,
pomiaru itp. Jeszcze inne stosowane s¹
w†powaønych aplikacjach przez wojsko,
s³uøby bezpieczeÒstwa, banki, s³uøby
medyczne.
Kaødy mikrokontroler wykonuje pro-
gram umieszczony w†jego pamiÍci. Jeúli
opracowujesz programy dla mikrokont-
rolerÛw, jesteú zainteresowany zabezpie-
czeniem wynikÛw swojej pracy przed
nieautoryzowanym dostÍpem czy kopio-
waniem - chcesz mieÊ po prostu kont-
rolÍ na procesem dystrybucji swojego
dzie³a. Z†tak¹ intencj¹ producenci mik-
rokontrolerÛw tworz¹ specjalne zabez-
pieczenia, ktÛre jeúli s¹ w³¹czone, po-
zwalaj¹ autorowi oprogramowania na
zabezpieczenie wynikÛw swojej pracy.
To jest tak zwana opcja copy lock .
Mikrokontroler trzeba zaprogramowaÊ
przed jego dzia³aniem w uk³adzie. S¹
rÛøne sposoby programowania, zaleøne
od producenta i†typu mikrokontrolera.
Pewnego razu zada³em tego rodzaju
pytanie na liúcie dyskusyjnej programis-
tÛw, znajduj¹cej siÍ na stronie http://
www.8052.com . Odpowiedzi, ktÛre uzys-
ka³em lekko mnie zaskoczy³y. By³a miÍ-
dzy nimi na przyk³ad sugestia, øe jeøe-
li program do urz¹dzenia, ktÛre chcÍ
skopiowaÊ, wart jest dla mnie milion
dolarÛw, to taka kwota przes³ana do fir-
my X - notabene producenta miÍdzy in-
nymi mikrokontrolerÛw - spowoduje, øe
udostÍpni mi ona technologiÍ umoøli-
wiaj¹c¹ odczyt pamiÍci programu, mimo
jej blokady. Na poparcie tej tezy autor
przys³a³ mi artyku³ rosyjskiego stypen-
dysty pracuj¹cego na Uniwersytecie
Cambridge w†Wielkiej Brytanii - Sergie-
ja Skorobogatova. Pracuje on w†labora-
torium komputerowym w†grupie praco-
wnikÛw naukowych zajmuj¹cych siÍ za-
bezpieczeniami komputerÛw osobistych
oraz mikrokontrolerÛw. Grupa ta bada,
na ile skuteczne s¹ wszelkiego rodzaju
zabezpieczenia programÛw. Badania te
s¹ najczÍúciej wykonywane na zlecenie
firm-producentÛw sprzÍtu i†oprogramo-
wania.
Elektronika Praktyczna 8/2002
57
32274311.003.png 32274311.004.png 32274311.005.png
T R E N D Y
EEPROM lub Flash. Po tym, jak pro-
gram zosta³ napisany i†skompilowany,
powinien byÊ zapisany w†pamiÍci pro-
gramu mikrokontrolera. Do tego celu s¹
przeznaczone specjalne przyrz¹dy, zwa-
ne programatorami. W†przypadku wiÍk-
szoúci wspÛ³czesnych mikrokontrolerÛw
s¹ to przyrz¹dy proste i†tanie, zawieraj¹-
ce ürÛd³o napiÍcia zasilania, kilka tran-
zystorÛw czy uk³adÛw scalonych i†nieco
innych elementÛw elektronicznych. Dla
niektÛrych mikrokontrolerÛw naleøy uøyÊ
specjalnego programatora rozprowadzane-
go wy³¹cznie przez producenta uk³adu,
ale te mikrokontrolery nie naleø¹ do gru-
py czÍsto stosowanych.
Moøna rozrÛøniÊ cztery zasadnicze
metody ataku:
- Technika mikrosondowania moøe
byÊ uøyta do bezpoúredniego dostÍ-
pu do struktury uk³adu. W†ten spo-
sÛb moøna obserwowaÊ, manipulo-
waÊ i†prowadziÊ interakcjÍ z†uk³ada-
mi znajduj¹cymi siÍ w†strukturze
mikrokontrolera.
- Atak programowy - uøywa siÍ nor-
malnego interfejsu do komunikacji
z†procesorem i†wykorzystuje b³Ídy za-
bezpieczeÒ odnalezione w†protokole
komunikacyjnym, algorytmach krypto-
graficznych lub ich zastosowaniach.
- Technika ìpods³uchiwaniaî polega na
obserwacji charakterystyk analogo-
wych procesora z†bardzo duø¹ roz-
dzielczoúci¹ czasow¹, wszystkich po-
³¹czeÒ zasilaj¹cych i†sygna³Ûw inter-
fejsowych oraz promieniowania elek-
tromagnetycznego podczas normalnej
pracy mikrokontrolera.
- Generowanie stanÛw awaryjnych , to
technika uøywaj¹ca rÛønego rodzaju
stanÛw zabronionych (na przyk³ad
zbyt niskie lub zbyt wysokie napiÍcie
G³Ûwnym problemem przy takiej me-
todzie ataku jest szczegÛ³owa wiedza
na temat procesora i†oprogramowania.
Z†drugiej strony, wiedza potrzebna do
przeprowadzenia ataku inwazyjnego nie
jest aø tak szczegÛ³owa, wymaga jed-
nak orientacji w†zastosowaniu rÛønych
technik dla szerokiej gamy produktÛw.
Atak ten zazwyczaj zaczyna siÍ od od-
tworzenia struktury uk³adu oraz sche-
matu po³¹czeÒ poszczegÛlnych jego
komponentÛw. CzÍsto rezultatem tak
przeprowadzonego szczegÛ³owego roz-
poznania jest rozwiniÍcie metod ataku
nieinwazyjnego.
BezpieczeÒstwo mikrokontrolera lub
karty Smartcard powinno byÊ zapew-
nione w†taki sposÛb, øe tak ma³a - jak
to tylko moøliwe - iloúÊ informacji (na
przyk³ad poprzez kompresjÍ danych),
powinna byÊ moøliwa do odtworzenia,
gdy konieczne jest jej uøycie. Drugim
celem jest utrzymanie tej informacji
nietkniÍtej podczas operacji tak, aby
potencjalny w³amywacz nie mia³ moø-
liwoúci zmiany sekretnego kodu - klu-
cza operacji do znanej sobie wartoúci
lub w†innym przypadku do inter-
akcji oraz rozpoznania sekretnego
algorytmu szyfrowania/deszyfro-
wania.
Obecnie wiÍkszoúÊ atakÛw prze-
prowadzanych przez w³amywaczy
komputerowych, chc¹cych uzyskaÊ
dostÍp do danych zawartych
w†mikrokontrolerze czy Smartcard,
moøna zaklasyfikowaÊ do dwÛch kate-
gorii - inwazyjne i†nieinwazyjne.
Techniki ataku
ZwiÍkszaj¹ca siÍ liczba urz¹dzeÒ
elektronicznych z†mikrokontrolerami
oraz wzrastaj¹ca ich powszechnoúÊ
i†znaczenie - od p³atnej TV, poprzez te-
lefony komÛrkowe GSM, systemy zalicz-
kowych licznikÛw energii elektrycznej
i†gazu, do portfeli elektronicznych i†kart
p³atniczych - wp³ywa na wzrost zainte-
resowania zabezpieczeniem przed moø-
liwoúci¹ duplikacji funkcji mik-
rokontrolerÛw w†celu ochrony
przed moøliwoúci¹ sfa³szowania
na przyk³ad kart Smartcard i†in-
nych s³uø¹cych dokonywaniu
rozliczeÒ finansowych czy teø
bezpieczeÒstwu. Zabezpieczenia
te nie s¹ pewne: specjalista
z†dostÍpem do urz¹dzeÒ s³uø¹-
cych do testowania uk³adÛw scalonych
moøe odtworzyÊ dane kluczowe poprzez
bezpoúredni¹ obserwacjÍ struktury i†ma-
nipulacjÍ elementami mikrokontrolera.
Faktem nie do podwaøenia jest, øe
przeznaczaj¹c na to odpowiednie úrod-
ki finansowe, kaøde urz¹dzenie s³uø¹ce
zabezpieczeniu przed nieautoryzowa-
nym dostÍpem do danych zawartych
w†strukturze mikrokontrolera moøe byÊ
spenetrowane i†rozpoznane. Tak wiÍc
poziom zabezpieczenia oferowanego
przez rÛønorodne produkty moøe byÊ
okreúlony iloúci¹ potrzebnego czasu
i†pieniÍdzy koniecznych na spenetrowa-
nie mechanizmÛw uniemoøliwiaj¹cych
atak.
Przeznaczając odpowiednie środki
finansowe możemy skopiować
konfigurację każdego układu PLD,
oprogramowanie mikrokontrolera czy
pamięć nieulotną oraz program w niej
przechowywany.
zasilania, bardzo wolne zmiany zbo-
czy sygna³Ûw zegarowych itp.) do
spowodowania b³Ídnej pracy mikro-
kontrolera i†w†ten sposÛb uzyskanie
dostÍpu do danych.
Wszystkie techniki zwi¹zane z†mikro-
sondowaniem s¹ inwazyjne. Wymagaj¹
godzin lub tygodni ciÍøkiej pracy
w†specjalistycznym laboratorium oraz
zniszczenia obudowy mikrokontrolera.
Pozosta³e techniki s¹ nieinwazyjne. Ata-
kowana karta czy mikrokontroler nie s¹
fizycznie niszczone, a†oprzyrz¹dowanie
uøywane w†czasie ataku, to czasami
zwyk³y czytnik kart Smartcard, b¹dü teø
nieco zmodyfikowany programator.
Atak nieinwazyjny jest dla uøytkow-
nika bardzo niebezpieczny z†dwÛch po-
wodÛw:
- po pierwsze, w³aúciciel na przyk³ad
karty p³atniczej, moøe nie zauwaøyÊ,
øe zosta³a ona skradziona, a†jej zabez-
pieczenia z³amane - od tego momen-
tu w†obiegu moøe siÍ znajdowaÊ na
przyk³ad jej duplikat.
- po drugie, urz¹dzenia potrzebne do
tak przeprowadzonego z³amania za-
bezpieczeÒ mog¹ byÊ tanio i†³atwo
skopiowane przez inne osoby - moøe
zostaÊ rozwiniÍta ich funkcjonalnoúÊ,
na skutek czego przeprowadzenie po-
dobnych atakÛw w†przysz³oúci bÍdzie
³atwiejsze i†szerzej dostÍpne.
Atak nieinwazyjny
Atak nieinwazyjny odbywa siÍ bez
naruszenia struktury mikrokontrolera,
czy karty Smart. Przeprowadzany jest
najczÍúciej poprzez rozpoznanie i†wszel-
kiego rodzaju sztuczki zwi¹zane z†na-
piÍciem zasilania oraz sygna³em zegaro-
wym. Ataki w†stanach, w†ktÛre wprowa-
dzany jest mikrokontroler obniøeniem
lub podwyøszeniem napiÍcia zasilania,
mog¹ zostaÊ uøyte, aby wy³¹czyÊ obwo-
dy zabezpieczeÒ lub zmusiÊ procesor
do wykonania niew³aúciwych operacji.
Z†tego powodu niektÛre modele mikro-
kontrolerÛw posiadaj¹ wbudowane
w†strukturÍ uk³ady detekcji poziomu na-
piÍcia zasilania, ale w†ich dzia³aniu jest
brak reakcji na bardzo szybkie zmiany
napiÍcia. Dlatego teø szybko zmieniaj¹-
ce siÍ i†w†rÛøny sposÛb napiÍcie zasila-
nia jest w†stanie doprowadziÊ do stanu
wy³¹czenia obwodÛw zabezpieczeÒ, bez
uszkodzenia chronionej informacji.
Zmiany napiÍcia zasilania i†sygna³u
zegarowego mog¹ byÊ rÛwnieø uøyte
w†niektÛrych mikrokontrolerach do spo-
wodowania przyjÍcia i†wykonania nie-
ktÛrych instrukcji. Kaødy bowiem tran-
zystor i†jego po³¹czenie pracuj¹ tak, jak
element RC z†okreúlon¹ charakterystyk¹.
58
Elektronika Praktyczna 8/2002
32274311.006.png
T R E N D Y
Maksymalna czÍstotliwoúÊ zegara proce-
sora okreúlana jest w³aúnie przez opÛü-
nienie sygna³u pomiÍdzy jego elemen-
tami. Podobnie kaødy z†elementÛw, ta-
kich jak przerzutniki, ma swoje charak-
terystyczne ìokienko sygna³oweî (za-
zwyczaj kilka pikosekund), w†czasie
ktÛrego ìprÛbkujeî on napiÍcie wejúcio-
we i†odpowiednio zmienia stan swoich
wyjúÊ. To ìokienkoî moøe byÊ gdzieú
wewn¹trz specyficznego cyklu dla dane-
go przerzutnika, ale jest sta³e dla okreú-
lonego urz¹dzenia, w†okreúlonej tempe-
raturze i†przy okreúlonym napiÍciu za-
silania. Tak wiÍc, jeúli zastosujemy syg-
na³ zegarowy krÛtszy niø normalnie, al-
bo teø napiÍcie zasilania zmieni siÍ
w†sposÛb bardzo gwa³towny, to spowo-
duje zadzia³anie tylko niektÛrych tran-
zystorÛw wewn¹trz struktury uk³adu
mikrokontrolera. Poprzez rÛønicowanie
parametrÛw napiÍcia zasilania i†sygna³u
zegarowego, moøna doprowadziÊ do sytu-
acji, gdy procesor wykona szereg kom-
pletnie rÛønych i†b³Ídnych instrukcji, cza-
sami rÛwnieø takich, ktÛre nie s¹ dozwo-
lone i†obs³ugiwane w†danej strukturze
CPU. Chociaø nie wiemy, ktÛra zmiana
i†w†jaki sposÛb wp³ynie na dzia³anie mik-
rokontrolera, to ca³kiem ³atwo moøna
przeprowadziÊ systematyczne poszukiwa-
nia w³aúciwej sekwencji sygna³Ûw.
Inn¹ moøliwoúÊ daje analiza poboru
mocy przez urz¹dzenie. Uøywaj¹c rezys-
tora o†wartoúci 10..15
wsze generuje bardzo duøy przyrost
wartoúci pobieranego pr¹du. Poprzez
uúrednienie pr¹du mierzonego dla wie-
lu identycznych transakcji moøna ziden-
tyfikowaÊ sygna³y, ktÛre nie s¹ przesy-
³ane poprzez szynÍ danych. Sygna³y ge-
nerowane przez takie operacje, jak usta-
wienie bitu przeniesienia, s¹ szczegÛl-
nie interesuj¹ce poniewaø s¹ one uøy-
wane przez wiele algorytmÛw kryptogra-
ficznych. Chociaø zmiany wartoúci bi-
tÛw statusu nie mog¹ byÊ bezpoúrednio
zmierzone, czÍsto powoduj¹ one zmia-
ny zawartoúci licznika rozkazÛw lub
wykonanie instrukcji tak zwanego mik-
rokodu, ktÛre z†kolei poci¹gaj¹ za sob¹
bardzo wyraüne i†³atwe do zauwaøenia
zmiany poboru pr¹du.
RÛøne instrukcje powoduj¹ rÛwnieø
rÛøn¹ aktywnoúÊ dekodera instrukcji
i†jednostki arytmetyczno - logicznej.
Moøna w†ten sposÛb ³atwo zidentyfiko-
waÊ czÍúÊ kodu programu i†zrekonstru-
owaÊ algorytm. Podobnie rÛøne elemen-
ty procesora powoduj¹ charakterystycz-
ne dla siebie zmiany przep³ywu pr¹du
zasilaj¹cego w†rÛønym czasie, odpo-
wiednio do sygna³u zegarowego, i†ich
stan moøe byÊ rozpoznany poprzez
prÛbkowanie sygna³u zasilaj¹cego z†od-
powiednio duø¹ czÍstotliwoúci¹.
Inn¹ moøliwoúÊ w³amania stwarzaj¹
w³aúciwoúci pamiÍci RAM - utrzymywa-
nie danych przez pewien czasu po wy-
³¹czeniu napiÍcia zasilania. Statyczna
pamiÍÊ RAM potrafi nawet (wskutek
istnienia pojemnoúci) przechowywaÊ
swÛj stan do momentu nastÍpnego za³¹-
czenia napiÍcia zasilaj¹cego. Moøliwe
jest rÛwnieø odtworzenia stanu statycz-
nej pamiÍci RAM przez poddanie jej
dzia³aniu bardzo niskiej temperatury
(oko³o -20 o C) na czas od kilku minut do
kilku godzin.
ry, moøna usun¹Ê za pomoc¹ kwasu
azotowego. Opary podgrzanego kwasu
azotowego maj¹ teø w³aúciwoúÊ rozpusz-
czania plastikowej obudowy. Moøna siÍ
wiÍc jej pozbyÊ bez uszkodzenia struk-
tury uk³adu. Ca³y proces naleøy prze-
prowadziÊ w†warunkach bardzo duøej
czystoúci, z†zachowaniem szczegÛlnej
ostroønoúci, najlepiej pod strumieniem
bieø¹cej wody, poniewaø opary mog¹
spowodowaÊ rÛwnieø uszkodzenie alu-
miniowych doprowadzeÒ uk³adu. Struk-
tura krzemowa powinna byÊ pÛüniej
umyta w†p³uczce ultradüwiÍkowej za
pomoc¹ acetonu. Mycie to moøna po-
przedziÊ krÛtk¹ k¹piel¹ w†wodzie dejo-
nizuj¹cej oraz w†isopropanolu. Po tym
struktura moøe byÊ przyklejona i†pod³¹-
czona rÍcznie do wyprowadzeÒ pakietu
testowego. Metoda ta umoøliwia usuniÍ-
cie izolacji epoksydowej bez uszkodze-
nia po³¹czeÒ struktury i†jej zewnÍtrz-
nych wyprowadzeÒ.
Gdy obudowa uk³adu jest otwarta,
moøliwe jest przeprowadzenie sondowa-
nia lub atak poprzez modyfikacjÍ struk-
tury uk³adu. Bardzo waønym narzÍ-
dziem do przeprowadzenia ataku inwa-
zyjnego jest tak zwana stacja do mikro-
sondowania. Jest to po prostu zespÛ³
mikrosond, ktÛre moøna pod³¹czaÊ do
struktury uk³adu. Jednym z†jej g³Ûwnych
elementÛw jest mikroskop umoøliwiaj¹-
cy ostry obraz z†odleg³oúci oko³o 8†mm
nad powierzchni¹ struktury uk³adu. Na
stabilnej platformie dooko³a z³¹cza pa-
kietu testowego instaluje siÍ kilka mik-
ropozycjonerÛw, ktÛre umoøliwiaj¹ prze-
suwanie ramienia sondy z†bardzo duø¹
precyzj¹ nad powierzchni¹ struktury
uk³adu. Na tym ramieniu instaluje siÍ
ig³Í sondy. Wykonana jest ona z†elas-
tycznego metalu tak, øe umoøliwia kon-
takt z†elementami struktury pÛ³przewod-
nikowej bez ich uszkodzenia.
Oczywiúcie, przed pod³¹czeniem ta-
kiej sondy naleøy usun¹Ê warstwÍ pa-
sywuj¹c¹. Jest to gÛrna warstwa przy-
krywaj¹ca aluminiowe doprowadzenia
do struktury uk³adu (zazwyczaj jest to
tlenek krzemu). Zabezpiecza ona struk-
turÍ uk³adu przed wp³ywem úrodowis-
ka oraz migracj¹ jonÛw. Czasami dodat-
kowo jest ona pokryta warstw¹ poliami-
dÛw, ktÛrej nie usuwa kwas azotowy,
ale moøe ona byÊ rozpuszczona przez
ethylodiaminÍ. Inn¹, trudniejsz¹
w†realizacji metod¹ pozbycia siÍ warst-
wy pasywuj¹cej jest jej usuniÍcie za po-
moc¹ noøa laserowego.
Ultrafioletowy lub zielony laser mo-
cowany jest na uchwycie kamery mik-
roskopu. Jego úwiat³o pada na niewiel-
ki, prostok¹tny obszar z†bardzo duø¹
precyzj¹. W³aúciwe dozowanie b³yskÛw
lasera powoduje wypalenie warstwy pa-
sywuj¹cej. Dodatkow¹ zalet¹ tej metody
jest moøliwoúÊ ods³oniÍcia niewielkiego
obszaru i†odkrycie w†ten sposÛb poje-
Atak inwazyjny
Na przekÛr pozornej z³oøonoúci ataku
inwazyjnego, niektÛre z†jego rodzajÛw
mog¹ byÊ przeprowadzone bez drogiego
osprzÍtu laboratoryjnego. W³amywacze
dysponuj¹cy ma³ym budøetem mog¹ ko-
rzystaÊ z†uøywanego sprzÍtu sprzedawa-
nego przez producentÛw uk³adÛw sca-
lonych do ich testowania. Dysponuj¹c
odpowiedni¹ wiedz¹ oraz uzbrajaj¹c siÍ
w†cierpliwoúÊ, nie jest zbyt trudno zdo-
byÊ odpowiednie narzÍdzia za cenÍ po-
niøej 10 tysiÍcy dolarÛw, kupuj¹c uøy-
wany mikroskop i†konstruuj¹c w³asny
mikropozycjoner. Laser nie jest niezbÍd-
ny do pierwszych prÛb, poniewaø otwo-
ry w†strukturze pÛ³przewodnikowej mo-
g¹ byÊ rÛwnieø wykonywane poprzez
wibracje ig³y mikropozycjonera.
Atak inwazyjny zaczyna siÍ najczÍú-
ciej od zdjÍcia obudowy struktury. Plas-
tykowa czÍúÊ obudowy moøe byÊ zdjÍta
za pomoc¹ na przyk³ad noøa. IzolacjÍ
epoksydow¹ umieszczon¹ wokÛ³ struktu-
60
Elektronika Praktyczna 8/2002
w³¹czonego
szeregowo z†napiÍciem zasilania, moøna
zmierzyÊ za pomoc¹ przetwornika A/D
zmiany pr¹du pobieranego przez zasila-
ny procesor. Wzmacniacze pr¹du sygna-
³Ûw adresowych i†szyny danych s¹ czÍs-
to budowane z†wielu po³¹czonych ze
sob¹ rÛwnolegle inwerterÛw dla kaøde-
go bitu danych czy adresÛw. Kaøda
zmiana stanu takiego bitu poci¹ga za
sob¹ znaczny pobÛr pr¹du zasilania.
Zmiana pojedynczego bitu z†0†na 1†i†od-
wrotnie, poci¹ga czÍsto za sob¹ wzrost
poboru pr¹du zasilaj¹cego o†oko³o 0,5
do 1†mA dla zbocza sygna³u zegarowe-
go. Tak wiÍc stosuj¹c przetwornik A/D
o†rozdzielczoúci 12†bitÛw, moøna stwier-
dziÊ, jaka liczba linii adresowych czy
teø danych, zmieni³a swÛj stan w†da-
nym czasie. Zapis pamiÍci SRAM za-
32274311.001.png
T R E N D Y
dynczej linii danych lub tranzystora.
Zabezpiecza to resztÍ struktury przed
przypadkowymi zwarciami do s¹sied-
nich linii, a†wykonany dodatkowo otwÛr
stabilizuje pozycjÍ sondy i†czyni kon-
takt mniej wraøliwym na wibracje
i†zmiany temperatury. W†ostatecznoúci
warstwÍ pasywuj¹c¹ moøna usun¹Ê
miejscowo poprzez zarysowanie, wier-
cenie lub naciÍcie. PamiÍtajmy jednak,
øe te operacje odbywaj¹ siÍ w†mikro-
skali! Jednak dopiero usuniÍcie wars-
twy pasywuj¹cej gwarantuje, øe sonda
bÍdzie mia³a dobry kontakt ze struktu-
r¹ uk³adu.
Oczywiúcie nie jest praktykowane od-
twarzanie wartoúci klucza kryptograficz-
nego poprzez kontakt sondy do poszcze-
gÛlnych komÛrek pamiÍci i†odczyty sta-
nÛw bitu. ZapamiÍtane dane mog¹ zo-
staÊ odczytane poprzez szynÍ danych
pamiÍci w†miejscu, w ktÛrym wszystkie
dane s¹ dostÍpne w†pojedynczej lokali-
zacji. Mikrosondowanie jest uøywane do
obserwowania stanÛw szyn i ich rejes-
tracji. Jest jednak bardzo trudno obser-
wowaÊ szyny danych i†adresow¹ w†ca-
³oúci. Wymaga to wykonania za-
zwyczaj ponad 20 po³¹czeÒ do
maleÒkiej struktury uk³adu, co
nie jest ³atwe. Stosowane s¹ wiÍc
rÛøne techniki obserwacji. Moøna
na przyk³ad wielokrotnie wykonaÊ
tÍ sam¹ transakcjÍ obserwuj¹c
rÛøne kombinacje bitÛw na szynie
danych i†adresowej, wykorzystuj¹c na
przyk³ad cztery sondy. Tak d³ugo, jak
procesor wykonuje tÍ sam¹ sekwencjÍ
dostÍpu do danych w†pamiÍci, mamy
moøliwoúÊ po³¹czenia obserwowanych
przebiegÛw w†kompletny diagram zaleø-
noúci czasowych oraz informacji poja-
wiaj¹cych siÍ na szynach.
W†przypadku gdy chcemy odczytaÊ
wszystkie komÛrki pamiÍci bez uru-
chamiania oprogramowania mikrokont-
rolera, musimy uzyskaÊ dostÍp do
komponentÛw procesora, takich jak
licznik programu. ZawartoúÊ licznika
rozkazÛw jest automatycznie zwiÍksza-
na podczas kaødego cyklu rozkazowe-
go i†jest on uøywany do odczytu na-
stÍpnego adresu, co powoduje, øe dos-
konale nadaje siÍ do wykorzystania ja-
ko generator sekwencyjny sygna³Ûw
adresowych. Musimy tylko zabezpie-
czyÊ procesor przed wykonywaniem
skokÛw, wywo³aÒ podprogramÛw oraz
instrukcji powrotÛw, ktÛre przeszka-
dzaj¹ w†sekwencyjnej pracy licznika
programu. Niewielkie modyfikacje de-
kodera instrukcji lub licznika progra-
mu, ktÛre mog¹ byÊ ³atwo wykonane
przez rozwarcie odpowiedniego po³¹-
czenia za pomoc¹ lasera zawsze przy-
nosz¹ poø¹dany efekt.
Inn¹ metod¹ poznania dzia³ania da-
nego uk³adu jest tak zwany reverse en-
gineering , to znaczy odtworzenie sche-
matu struktury uk³adu na podstawie
jego topografii i analizy budowy po-
szczegÛlnych elementÛw. Pierwszym
krokiem jest wÛwczas stworzenie mapy
elementÛw procesora. Moøe to byÊ zro-
bione przy uøyciu mikroskopu optycz-
nego z†pod³¹czon¹ kamer¹ CCD umoøli-
wiaj¹c¹ wykonywanie zdjÍÊ struktury
procesora z†duø¹ rozdzielczoúci¹. Proste
elementy architektury, takie jak linie
adresowe czy danych, mog¹ byÊ rozpoz-
nane ca³kiem szybko, bez studiowania
mozaiki po³¹czeÒ, za pomoc¹ úledzenia
przebiegu metalowych linii, ktÛre za-
kreúlaj¹ bardzo widocznie komponenty
struktury uk³adu (ROM, RAM, EEPROM,
ALU, dekoder instrukcji itd.). Wszystkie
wspÛ³pracuj¹ce ze sob¹ modu³y s¹ za-
zwyczaj pod³¹czone do g³Ûwnych szyn
za pomoc¹ ³atwo rozpoznawalnych
przerzutnikÛw typu latch oraz wzmac-
niaczy pr¹dowych. W³amywacz musi
dobrze znaÊ technologiÍ wykonania
uk³adÛw CMOS i†architektury mikrokon-
trolerÛw, ale potrzebne do tego celu
infromacje znajduj¹ siÍ w†praktycznie
kaødej bibliotece akademickiej.
staÊ uøyte do wykonania nowych linii
po³¹czeÒ, a†nawet nowych tranzystorÛw
w†strukturze uk³adu! Stacja FIB zawie-
ra komorÍ prÛøniow¹ z†rodzajem wy-
rzutni, porÛwnywalnej z†uøywan¹
w†mikroskopie elektronowym. Jony s¹
przyspieszane napiÍciem oko³o 30 kV
i†skupiane w†wi¹zkÍ o†úrednicy 5...10
nm i†pr¹dzie strumienia od 1†pA do 10
nA. Poprzez zwiÍkszanie pr¹du stru-
mienia jonÛw materia³ krzemowy moøe
zostaÊ usuniÍty z†rozdzielczoúci¹ 5†nm.
Lepsz¹ rozdzielczoúÊ moøna uzyskaÊ
w†otoczeniu gazu. Stosuj¹c gaz moøna
wykonywaÊ otwory oko³o 12 razy g³Íb-
sze niø szersze i†w†ten sposÛb uzyski-
waÊ dostÍp do znajduj¹cych siÍ pod
spodem warstw metalu. Stosuj¹c gaz,
tak zwany organometaliczny z†zawar-
toúci¹ platyny, moøna tworzyÊ nowe
pola kontaktowe, natomiast stosuj¹c in-
ne dodatki moøna powsta³y w†ten spo-
sÛb kontakt zabezpieczyÊ przed zwar-
ciem z†otaczaj¹cymi go warstwami.
Wprawny operator FIB, pos³uguj¹c siÍ
dodatkowo przyrz¹dami laserowymi,
moøe nawigowaÊ po powierzchni struk-
tury z†rozdzielczoúci¹ nawet
0,15†
Ataki inwazyjne są skomplikowane.
Wymagają wielu godzin pracy,
specjalistycznego laboratorium, wysoko
kwalifikowanych specjalistów oraz dużych
nakładów finansowych.
m. Jest to duøo poniøej
rozmiaru pojedynczego elementu
struktury. Moøna rÛwnieø zdj¹Ê
warstwÍ pod³oøa struktury przez
jej zeszlifowanie. WÛwczas staje
siÍ moøliwe nawet lokalizowanie
pojedynczych tranzystorÛw i†wy-
konywanie pomiÍdzy nimi po³¹czeÒ.
Ta ìodtylnaî technika nie jest
wprawdzie jeszcze stosowana przez
w³amywaczy, ale technologia i†urz¹dze-
nia staj¹ siÍ coraz bardziej dostÍpne
i†kto wie, co przyniesie przysz³oúÊ.
Obecnie wiÍkszoúÊ zastosowaÒ stacji
FIB zmierza do wykonywania dostÍpu
do interesuj¹cych po³¹czeÒ. OtwÛr wy-
konywany jest dla danej úcieøki sygna-
³owej, nastÍpnie jest wype³niany platy-
n¹ tak, aby wyprowadziÊ sygna³ na po-
wierzchniÍ struktury, gdzie ³atwy juø
jest dostÍp do niego za pomoc¹ sondy.
Nowoczesne stacje FIB kosztuj¹ nieco
mniej niø pÛ³ miliona dolarÛw i†s¹ do-
stÍpne w wiÍcej niø setce organizacji.
Mog¹ one byÊ wynajÍte od niektÛrych
z†nich za cenÍ kilkuset dolarÛw za go-
dzinÍ pracy urz¹dzenia.
Wszystkie ataki inwazyjne s¹ skom-
plikowane. Wymagaj¹ wielu godzin pra-
cy specjalistycznego laboratorium i†nie
mog¹ siÍ odbyÊ bez wiedzy w³aúciciela
badanego urz¹dzenia - niszcz¹ bowiem
jego obudowÍ oraz czasami strukturÍ.
Dodatkowo wymagaj¹ wysoko kwalifiko-
wanych specjalistÛw oraz duøych nak³a-
dÛw finansowych. Oczywiúcie nie czy-
ni to ich niemoøliwymi do przeprowa-
dzenia...
Sergiej Skorobogatov
Opracowa³ Jacek Bogusz,
jacek.bogusz@ep.com.pl
Fotografie uzyskane po pierwszym
etapie obserwacji strawienia powierzch-
ni struktury ukazuj¹ gÛrn¹ warstwÍ
metalu, ktÛra nie jest przeüroczysta
i†dlatego teø zas³ania widok wielu
struktur znajduj¹cych siÍ pod ni¹.
StrukturÍ uk³adu moøna co prawda
rozpoznaÊ po jej wysokoúci, jednak nie
jest to metoda zbyt dok³adna. G³Íbsze
warstwy mog¹ byÊ rozpoznane tylko
w†drugiej serii fotografii, po zdjÍciu
gÛrnej warstwy metalu, co moøe byÊ
wykonane na przyk³ad przez jej wytra-
wienie - zanurzenie na kilka sekund
w†kwasie hydrofluorowym (HF)
w†p³uczce ultradüwiÍkowej. HF bardzo
szybko rozpuszcza tlenek krzemu do-
oko³a metalowych po³¹czeÒ i†od³¹cza je
od powierzchni uk³adu.
WiÍkszoúÊ z†aktualnie dostÍpnych
mikrokontrolerÛw i†procesorÛw Smart-
card ma rozmiar pojedynczego elemen-
tu na poziomie 0,5 do 1†
62
Elektronika Praktyczna 8/2002
m i†tylko
dwie warstwy. Mog¹ one byÊ rozpoz-
nane za pomoc¹ mikroskopu i†poprzed-
nio opisywanych technik. Do podgl¹da-
nia uk³adÛw o†wiÍkszej liczbie warstw,
z†elementami o†rozmiarach mniejszych
niø d³ugoúÊ fali úwiat³a widzialnego,
trzeba stosowaÊ znacznie droøsze na-
rzÍdzia.
WiÍkszoúÊ wyrafinowanych narzÍdzi
uøywanych na przyk³ad w†laboratoriach
fizyki, takich jak stacje FIB, mog¹ zo-
32274311.002.png
Zgłoś jeśli naruszono regulamin