Securing OTA SW Updates in ST MCUs Using ARM TrustZones
Firmware-uppdateringar har en väsentlig roll i moderna inbyggda system, de möjligör ny funktionalitet, sårbarhetsåtgärder och allmänt enhetsunderhåll. Likväl, kan uppdateringsprocesser som saknar säkerhetsåtgärder medföra en rad attackmöjligheter, allt från “main-in-the-middle” attacker till “malicious firmware injections”. STs microcontroller miljöer tillhandahåller stöd för TrustZone-M, vilket möjliggör isolering av säkerhetskritiska moduler genom partioneringar av systemetresurser. Med den här hårdvarustödda säkerhetsfunktionaliteten finns det potential för att utveckla en robust “Over-TheAir” (OTA) mjukvaruuppdateringsprocess som kan motstå både fysiska lokala och nätverksbaserade manipulationsförsök.
Syfte
Syftet med det här projektet är att utveckla en säker OTA mjukvaruuppdateringsprocess riktat mot STs microcontroller miljö genom att isolera säkerhetskritiska delar av uppdateringsprocessen med
ARMs TrustZones. Det innebär, en försäkran av att endast autentiserad, veriferad och icke-manipulerad mjukvara kan installeras på utplacerade enheter. En säker OTA process ska behöver alltså kunna motså manipulationsförsök som riktar sig mot mjukvaruuppdateringsprocessen, exempelvis genom att injecera skadlig kod.
Mål
- Utveckla ett säkert OTA uppdateringsprotokoll för STs MCU miljöer genom att integrera.
- Använd TrustZone secure world för hantering av säkerhetskritiska operationer;
– Hantering av krypteringsnycklar.
– Verifiering av mjukvarusignaturer.
– Andra eventuella operationer som krävs för en säker boot-process. - Utveckla säkerhetsåtgärder för att garantera systemets funktionalitet i händlse av avbruten eller
korrupt OTA uppdatering. - Utvärdera OTA proccessens säkerhetsnivå genom att uföra diverse penstester;
- Undersök OTA processens prestanda påverkan för att bedömma dess lämplighet i resursbegränsade enheter;
Utförande
- Säker partitionering: Konfigurera TrustZone-M för säkra och icke-säkra;
• Minnesareaor.
• Periferienheter
• Interrupt hanterare. - Säker boot-process: Säkerställ att mjukvara verifieras genom assymetriska krypteringsmetoder
innan exekvering.
• RSA.
• ECDSA. - OTA protokoll: Implementera ett krypterat och autentiserat kommunikationsprotkoll för överföring av mjukavaruuppdateringar.
• TLS.
• MQTT.
• CoAP.
• HTTPS. - Implementera en uppdateringshanterare i Secure world;
• Verifikation av mjukvarusignaturer.
• Avkryptering av uppdaterignsmjukvara.
• En säker återställningspunkt för att skydda mot avbrutna eller korrupta uppdateringar.
• Verifiera att muppdateringensmjukvaran har ett högre versionsnummer än befintlig mjukvara. - Utvärdering;
• Funktionella tester;
– Lyckad OTA uppdatering.
– Felhantering vid misslyckad OTA uppdatering.
• Testa säkerheten genom att utsätta uppdateringsprocessen för attacker;
– Replay attacks.
– Injection attacks.
– Downgrade attacks.
• Mät OTA processens prestandapåverkan på typiska parametrar;
– Latens.
– Energikonsumption.
– Minnesanvändning.
Förväntade Resultat
- En hårdvarustödd OTA process specifikt byggd för resursbegränsade enheter som separerar och
isolerar säkerhetskritiska operationer från applikationskod. - En utförlig analys som kan ligga till grund för framtida produktutveckling där prestanda vägs
mot säkerhetsåtgärder. - Väl dokumenterade säkerhetsåtgärder och implementationsmodeller som kan appliceras på
andra MCU miljöer.
Annonsuppgifter
Annonsör: Prevas Development
Ansök senast:
Annonskategori: Examensarbete, praktik, uppsats
Intresseområde: Data och IT, Teknik och matematik
Kontaktperson: Primus Svensson primus.svensson@prevas.se
Webbsida: https://www.prevas.se/