Aktivní neinvazivní útok na mikrokontroler vkládáním poruch
Active non-invasive attack on a microcontroller by fault injection
Typ dokumentu
bakalářská prácebachelor thesis
Autor
Jakub Kučera
Vedoucí práce
Buček Jiří
Oponent práce
Rabas Tomáš
Studijní obor
Informační bezpečnost 2021Studijní program
InformatikaInstituce přidělující hodnost
katedra informační bezpečnostiPráva
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Zobrazit celý záznamAbstrakt
Tato bakalářská práce se zabývá implementací platformy pro vkládání poruch do napájení a do signálu hodin. Platforma slouží pro představení mechanismu vkládání poruch s minimální úrovní abstrakce. Práce obsahuje implementaci hardwaru v jazyce Verilog s firmwarem v C a rozhraním pro ovládání z počítače v programovacím jazyce Python. Dále se s implementovanou platformou provádí útok na šifru AES vkládáním poruch mezi 7. a 8. operací MixColumns a také mezi 8. a 9. Výsledná platforma je schopná vkládat poruchy do napájení i do signálu hodin a také podporuje vkládání více poruch při jednom spouštěcím signálu. Provedené útoky na šifru AES vkládáním poruch s použitím implementované platformy úspěšně odhalily tajný klíč. Přínosem této práce je vývoj nástroje pro vkládání poruch na platformě Cmod S7 a programovacího rozhraní umožňujících uživatelům detailně pochopit mechanismy vkládání poruch. This bachelor's thesis deals with the implementation of a platform for voltage glitching and clock glitching. The platform is used to introduce fault insertion mechanisms with a minimal level of abstraction. The work contains an implementation of hardware in the Verilog language with firmware written in C and an interface in Python for controlling the platform from a computer. Next, an attack on AES is performed with the implemented platform by injecting faults between the 7th and the 8th MixColumns operation and also between the 8th and the 9th. The resulting platform is capable of injecting glitches into the power supply as well as a clock signal and also supports the insertion of multiple glitches after one trigger event. The attacks carried out on the AES cipher via fault injection with the implemented platform successfully recovered the secret key. The contribution of this work is the development of a fault injection tool on the Cmod S7 platform and of a programming interface that enable users to understand the mechanisms of fault injection in detail.