Towards Securing the FPGA Bitstream: Exploiting Vulnerabilities and Implementing Countermeasures
Tid: On 2024-06-12 kl 09.00
Plats: Ka-Sal C (Sven-Olof Öhrvik), Kistagången 16, Kista
Språk: Engelska
Ämnesområde: Informations- och kommunikationsteknik
Respondent: Michail Moraitis , Elektronik och inbyggda system
Opponent: Tenured Assistant Professor Peeter Ellervee, Tallinn University of Technology, Tallinn, Estonia
Handledare: Elena Dubrova, Elektronik och inbyggda system; Mark T. Smith, Elektronik och inbyggda system
QC 20240522
Abstract
Field-Programmable Gate Arrays (FPGAer) används inom olika branscher på grund av deras höga prestanda, energieffektivitet och omkonfigurerbarhet. Dock är den stora fördelen med omkonfigurerbarhet också en källa till säkerhetsutmaningar.Denna doktorsavhandling undersöker säkerhetsbristerna i FPGA-konfigurationsfilen, d.v.s. bitströmmen, med fokus på utforskning och mildring av riktade bitströmsmodifieringsattacker. Resultaten som redogörs i avhandlingens sju kapitel baseras på en bilagd samling av tolv artiklar. Av dessa artiklar presenterar sju ny forskning om ämnet bitströmsmodifieringsattacker och motåtgärder, med majoriteten av bidragen om attacker. Fyra presenterar ny forskning om ämnet FPGA-baserade motåtgärder mot sidokanalsanalys. Den sista rapporten presenterar en översikt över bitströmsmodifieringsattacker och motåtgärder. Motivationen för rapporterna om sidokanalmotåtgärder är att förbättra FPGA-krypteringsscheman, eftersom stark kryptering kan förhindra riktade bitströmsmodifieringsattacker.
Attackvektorn för riktade bitströmsmodifieringsattacker utforskas genom en serie attacker mot kryptografiska FPGA-implementationer. Målen är populära flödes-chiffer (SNOW 3G, ACORN och Trivium) och kryptografiska primitiv (en arbiter-baserad fysiskt oklonbar funktion och en multi-ring-oscillator-baserad sann slumpmässig nummergenerator). I attackerna på strömkrypteringar modifieras bitströmmen för att introducera fel som försvagar keystreamen genom att linjärisera dess genereringsprocess. En efterföljande analys av den felaktiga keystreamen avslöjar den hemliga nyckeln för implementationerna. I attackerna på kryptografiska primitiv är målet med bitströmsmodi-\\fieringsattacken att sänka ribban eller möjliggöra en sidokanalsanalys. Målet med sidokanalsanalysen är att förutsäga de slumpmässiga utvärdena som produceras av primitiverna. För att underlätta detta identifierar bitströmsmodifieringsattacken komponenter i bitströmmen som producerar utnyttjbar informationsläckage och skapar fler kopior av dem. Kopiorna har samma värden som målen, men deras utgångar är inte anslutna, vilket inte påverkar designens funktionalitet. Studien om bitströmsmodifiering kompletteras med införandet av lågkostnadsförvirringsmotåtgärder och en allmän metodik mot förvirring baserad på konstanter. Metodiken kan besegra alla de motåtgärder vi tidigare definierat, och dess tillämpning sträcker sig till det allmänna området för hårdvarudesignförvirring.
På ämnet motåtgärder mot sidokanalsanalys utvärderas den populära metoden för klockslumpning. Den antagna sidokanalsanalysen syftar till att extrahera den hemliga nyckeln för blockkryptoalgoritmen advanced encryption standard (AES). Utvärderingen visar att klockslumpning inte kan erbjuda skydd när sidokanalsmätningarna samplas med en frekvens som är avsevärt högre än enhetens driftfrekvens. Som svar på detta kombineras tekniken för klockslumpning med duplication av krypteringskärnan för att bilda en ny motåtgärd som kallas CRCD (clock randomization with encryption core duplication). Motåtgärden har visat sig effektivt skydda implementationer av blockkrypteringar som AES och postkvantum nyckelinkapslingsmekanismer som CRYSTALS-Kyber. Ytterligare analys av motåtgärden avslöjar en svaghet som utnyttjas och slutligen åtgärdas i en uppdaterad implementation av CRCD.