Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ss:laboratoare:07 [2025/02/26 00:26]
jan.vaduva
ss:laboratoare:07 [2025/02/26 00:33] (current)
jan.vaduva
Line 1: Line 1:
-====== Laborator 7: Secure Boot și Autentificarea ​Firmware-ului ​======+====== Laborator 7: Secure Boot și Autentificarea ​Codului pentru Aplicații Mobile ​======
  
 ===== Obiective ===== ===== Obiective =====
-* Înțelegerea conceptelor de **Secure Boot** și autentificarea firmware-ului ​  +  ​* Înțelegerea conceptelor de **Secure Boot** și verificarea integrității codului în aplicațiile mobile ​  
-* Implementarea unui mecanism de **Secure Boot** pentru ​dispozitivul hardware utilizat în laboratoarele anterioare ​  +  * Implementarea unui mecanism de **verificare a integrității aplicației** pentru ​a detecta modificări neautorizate ​  
-Verificarea integrității și autenticității firmware-ului utilizând semnături digitale ​  +  Asigurarea protecției împotriva **atacurilor de repackaging** (modificarea ​și redistribuirea aplicației)   
-Protejarea ​procesului de actualizare ​firmware pentru ​preveni atacurile bazate pe firmware compromis ​ +  Implementarea **firmware authentication** și securizarea ​procesului de actualizare a aplicației ​  
 +  * Prevenirea **încărcării codului malițios** și protejarea comunicațiilor dintre aplicație și server ​ 
  
 ===== Cerințe tehnologice ===== ===== Cerințe tehnologice =====
-* **Microcontroler / Platformă hardware**: ESP32STM32, Raspberry Pi, sau alte dispozitive utilizate în laborator ​  +  ​* **Platforme mobile**: Android (Java/​Kotlin)iOS (Swift) ​  
-* **Bootloader securizat**: U-BootMCUboot, Trusted Firmware-M ​(TF-M)   +  * **Mecanisme de protecție**: Play Integrity API (Android)App Attest API (iOS)   
-* **Algoritmi criptografici**: RSA/ECDSA pentru semnătura digitalăSHA-256 pentru integritate ​  +  * **Semnarea aplicației**: APK Signing v3 (Android)Code Signing (iOS)   
-* **Mecanisme de verificare a firmware-ului**: Validare hashsemnătură digitală cu cheie privată ​  +  * **Securizarea update-urilor**: Firebase App DistributionApp Store Connect, criptare firmware pentru OTA   
-* **Tooling**: OpenSSL ​pentru ​generarea cheilor și certificatelor,​ imgtool pentru semnarea firmware-ului  +  * **Tehnologii criptografice**: RSA/​ECDSA ​pentru ​verificarea integrității codului ​  
 +  * **Mecanisme de protecție anti-tampering**:​ Obfuscation,​ Root/​Jailbreak detection ​ 
  
 ===== Funcționalități ===== ===== Funcționalități =====
  
-==== 1. Implementarea Secure Boot pe dispozitivul hardware ​==== +==== 1. Implementarea Secure Boot pentru aplicația mobilă ​==== 
-  * Activarea și configurarea unui bootloader securizat ​  +  * Semnarea digitală a aplicației pentru prevenirea modificărilor neautorizate ​  
-  * Generarea unui hash pentru verificarea ​integrității ​firmware-ului ​  +  * Verificarea ​integrității ​codului la rulare folosind checksums și hashing ​  
-  * Restricționarea execuției doar pentru firmware-ul autentic și semnat ​ +  * Detectarea încercărilor de modificare a aplicației (anti-repackaging) ​ 
  
-==== 2. Semnarea și verificarea ​firmware-ului ==== +==== 2. Protejarea ​firmware-ului ​și a update-urilor aplicației ​==== 
-  * Crearea unei perechi de chei criptografice ​pentru ​semnarea firmware-ului   +  * Semnarea și criptarea actualizărilor ​pentru ​a preveni atacurile de tip man-in-the-middle ​  
-  * Implementarea ​mecanismului de verificare a semnăturii digitale în bootloader ​  +  * Implementarea ​verificării criptografice înainte de instalarea unui update ​  
-  * Testarea procesului de autentificare ​pentru ​a preveni încărcarea ​unui firmware compromis ​ +  * Utilizarea unui canal securizat ​pentru ​descărcarea ​actualizărilor (TLS, certificate valide) ​ 
  
-==== 3. Protejarea procesului ​de actualizare firmware ​==== +==== 3. Prevenirea atacurilor ​de manipulare și încărcare de cod malițios ​==== 
-  * Implementarea unui mecanism de actualizare OTA securizat ​  +  * Detectarea aplicațiilor care rulează pe dispozitive rootate sau jailbreak ​  
-  * Verificarea semnăturii firmware-ului înainte ​de instalare ​  +  * Implementarea protecției împotriva atacurilor prin încărcarea dinamică de cod (Dynamic Code Loading) ​  
-  * Detectarea ​și prevenirea atacurilor prin firmware malițios  +  * Monitorizarea ​și raportarea încercărilor de modificare a aplicației în timp real  
  
 ===== Evaluare ===== ===== Evaluare =====
-Configurarea și activarea Secure Boot (30%)   +  ​Implementarea mecanismului de verificare a integrității codului ​(30%)   
-Implementarea mecanismului ​de semnare ​și verificare a firmware-ului (40%)   +  Protecția procesului ​de update ​și verificarea ​firmware-ului (40%)   
-Protejarea procesului de actualizare firmware ​(30%)  ​+  Detectarea și prevenirea atacurilor asupra aplicației ​(30%)  ​
  
 ===== Resurse suplimentare ===== ===== Resurse suplimentare =====
-* [https://www.trustedfirmware.org Trusted Firmware-M]   +  ​* [https://developer.android.com/​guide/​app-bundle/​app-signing Android APK Signing]   
-* [https://u-boot.readthedocs.io/en/latestU-Boot Secure Boot]   +  * [https://developer.apple.com/documentation/security/app_attest Apple App Attest]   
-* [https://github.com/mcu-tools/mcuboot MCUboot Documentation]   +  * [https://developer.android.com/google/play/​integrity Play Integrity API]   
-* [https://www.openssl.org OpenSSL for Key Generation & Signing]  ​ +* [https://owasp.org/​www-project-mobile-security-testing-guide/​ OWASP Mobile Security Testing Guide]  ​
- +
  
ss/laboratoare/07.1740522407.txt.gz · Last modified: 2025/02/26 00:26 by jan.vaduva
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0