Crypto Android. Trusted Execution Environment. TrustZone
|
|
|
- Francesca Bono
- 8 anni fa
- Просмотров:
Транскрипт
1 SMix richiede un vettore di lunghezza N. Visto che la memoria è costosa, implementare Scrypt in hardware è costoso [?] Trusted Execution Environment TrustZone I Trusted Execution Environment (TEE) sono ambienti di esecuzione isolati dalle altre applicazioni e sistemi operativi Solitamente implementati come processori separati fisicamente dal processore primario Poichè sono intoccabili dalle applicazioni, si può utilizzare un TEE per operazioni crittografiche isolate persino dal kernel di sistema Spesso includono in hardware chiavi uniche, in modo da garantire che solo un preciso processore possa decifrare i dati TrustZone è l implementazione del concetto di TEE in processori ARM Si definiscono due domini di esecuzione: RichOS, dove viene eseguito il sistema operativo classico TrustOS, dove viene eseguito un firmware sicuro, spesso impresso in hardware TrustZone usa stesso processore fisico, stesso ISA ma due aree di memoria completamente isolate per i due domini
2 Android Disk Encryption Android è una specifica per un sistema operativo pensato per l utilizzo mobile [?] AOSP (Android Open Source Project) è un implementazione di Android rilasciata sotto Apache 2.0 Per questo studio ci siamo concentrati su come Android cifri il disco e gestisca l autentificazione delle applicazioni nella AOSP 6.0.1b Android permette, dalla versione 3.0, la cifratura del disco di sistema Android 5.0 ha modificato alcuni punti dell algoritmo utilizzato Il codice relativo alla cifratura del disco è in singolo file, cryptofs.c Key generation Android opera a livello di blocchi direttamente nel kernel Il device è cifrato al primo avvio di sistema Trasparente alle applicazioni e all utente Non può funzionare su file system che non usano un approccio a blocchi Ufficialmente supporta solo etx4 e f2f [?] Ogni blocco è cifrato in maniera indipendente con la stessa chiave (DEK) [?] AES-CBC a 128 bit IV = AES128 ( SHA256(DEK), SN) Come viene generato DEK? Insieme a DEK viene generato anche un salt (S) Nessun check sulla presenza e sulla qualità di /dev/urandom...
3 Key store Key store algorithm DEK è salvata su disco, ma non in chiaro: è cifrata da una chiave che dipende Dalla password dell utente Questo permette all utente di cambiare periodicamente la propria password senza dover cifrare nuovamente l intero disco Dalla chiave hardware del TEE del processore In questa maniera solo il device che ha cifrato il disco può decifrarlo Viene generata IK1, a 256 bit, come SCRYPT della password utente e di S Se l utente non possiede una password, default password IK1 viene esteso a 256 byte con il formato 00 IK IK1 esteso viene cifrato con la chiave privata del TEE, generando IK2 Genero IK3, a 256 bit, come SCRYPT di IK2 ed S I primi 128 bit di IK3 sono KEK, gli altri 128 bit sono IV Cifro DEK con AES128 CBC, usando KEK ed IV Considerazioni e curiosità Android Application Certificate Durante i test e lo studio del codice son sorti diversi punti e curiosità: Android, per ridurre il tempo di cifratura iniziale, cifra solo i blocchi attivi nella partizione DEK è generata tramite /dev/urandom, ergo viene generata dal kernel linux sottostante Android Visto che DEK è spesso generata al primo boot del sistema, sarebbe interessante studiare come si comporta il generatore su più dispositivi della stessa famiglia Le applicazioni Android son distribuite tramite un file.apk Ogni applicazione Android DEVE possedere un certificato In mancanza di un certificato, non si può installare l applicazione I certificati certificano non solo il codice, ma anche i metadati e tutte le risorse nell apk Android utilizza RSA 2048 e SHA1
4 Fonti note e non note Facendo una rapida ricerca, il flag viene controllato solo in un punto del codice Android presenta un flag che consente di installare applicazioni da fonti non note. Alcune domande sorgono spontanee: Chi sono le fonti note? Come capisce che un applicazione arriva da una fonte nota? Dal codice notiamo che, prima di iniziare l installazione, controlla solo se l applicazione è un applicazione di sistema Questo significa che, in qualche modo, le app di sistema sono le fonti note Solo le app di sistema possono iniziare il processo di installazione. Questo permette ai produttori di costruire un proprio store di applicazioni per i loro utenti Sta poi allo store ed al suo produttore introdurre eventuali controlli sull identità degli sviluppatori Ma allora a cosa serve firmare le applicazioni? E possibile installare un update per un app solo se firmato con la stessa chiave RSA E possibile specificare canali sicuri tra le applicazioni, in cui un app comunica solo con una che possiede una determinata firma Solo app firmate dalla stessa chiave possono essere eseguite dallo stesso processo
5 Giochiamo un po Considerazioni e curiosità Abbiamo provato a giocare con Android ed i suoi certificati E stato estremamente semplice realizzare uno script che rimuovesse la firma originale e firmasse l applicazione con la nostra chiave Abbiamo potuto installare la nostra fakeapp sul sistema Abbiamo poi generato un certificato scaduto e abbiamo firmato l applicazione Android ha installato l applicazione senza dare un avviso del problema Come visto, il sistema di app signing su Android non serve tanto a garantire l identità dello svilluppatore, quanto a garantire che solo lo sviluppatore di un app possa rilasciarne update Approccio totalmente diverso alla concorrenza Il controllo dei certificati è da parte del produttore del dispositivo E estremamente semplice rimuovere la firma di un.apk e firmarlo con un proprio certificato Android accetta anche certificati scaduti senza dare alcun segnale References [1] Colin Percival, Stronger key derivation via sequential memory-hard functions, [2] Google Inc., Android 6.0 Compatibility Definition, 16 ottobre [3] Android Full Disk Encryption, Web. 21 gennaio [4] Android App Signing, Web. 21 gennaio
Esercitazione 2 Certificati
Sommario Esercitazione 2 Certificati Laboratorio di Sicurezza 2016/2017 Andrea Nuzzolese Certificati Descrizione esercitazione Free Secure Email Certificates (con InstantSSL) ALMA MATER STUDIORUM UNIVERSITA
Truecrypt. Alfredo De Santis. Aprile 2014. Dipartimento di Informatica Università di Salerno. [email protected] http://www.dia.unisa.
Truecrypt Alfredo De Santis Dipartimento di Informatica Università di Salerno [email protected] http://www.dia.unisa.it/professori/ads Aprile 2014 TrueCrypt Cifratura di partizioni o intera storage device
Converte una chiave di al più 14 word a 32 bit (K-array) in un array di 18 sottochiavi a 32 bit (P-array) Genera 4 S-box, ognuna con 256 word a 32 bit
% RC2 [1989] IDEA (International Data Encryption Algorithm) [1990] Blowfish [1993]!"###"$ SAFER (Secure And Fast Encryption Routine) SAFER K-64 [1994], SAFER K-128 [1995] cifrario bit chiave bit testo
Sicurezza del File System
Sicurezza del File System Luigi Catuogno [email protected] BARONISSI 30 maggio 2002 Cos è un file system Luigi Catuogno - Sicurezza del File System 2 1 Cos è il filesystem Una parte del sistema operativo
logaritmo discreto come funzione unidirezionale
logaritmo discreto come funzione unidirezionale in generale, lavoreremo con il gruppo U(Z p ) = Z p dati g generatore di Z p e x tale che 1 x p 1, calcolare y = g x è computazionalmente facile (y g x (mod
DESlock+ Crittografia Dati
ESET DESlock+ Suite completa di strumenti di crittografia Piattaforma centralizzata web-based Unico prodotto gestisce FDE (Full disk encryption) e Crittografia dei file e cartelle Gestione centralizzata
Istruzioni per cifrare i file
Istruzioni per cifrare i file Cifratura di un documento La crittografia asimmetrica è un tipo di cifratura che consente lo scambio di informazioni in modo sicuro, evitando i rischi della tradizionale crittografia
Elementi di Sicurezza e Privatezza Lezione 20 PGP cont d - Esercizi
Elementi di Sicurezza e Privatezza Lezione 20 PGP cont d - Esercizi Chiara Braghin [email protected] PGP (1) Software per cifrare la posta elettronica e per la protezione di file di uso personale
GNU Privacy Guard - GnuPG/GPG
GNU Privacy Guard - GnuPG/GPG Guida operativa ad un software libero per la crittografia Matteo Mardegan MontelLUG - Montebelluna Linux User Group 25 marzo 2016 Montebelluna Matteo Mardegan (MontelLUG)
Crittografia per la sicurezza dei dati
Crittografia per la sicurezza dei dati Esigenza di sicurezza in rete significa: -garanzia di riservatezza dei dati in rete (e-mail) -garanzia di transazioni sicure (e-commerce, home banking) La crittografia
FIRMA DIGITALE E CIFRATURA
FIRMA DIGITALE E CIFRATURA Di seguito viene illustrato come firmare digitalmente un file e come crittografarlo (o cifrarlo). Lo scopo può essere raggiunto attraverso una molteplicità di strumenti, sia
Cifrare FileSystem in Linux
ICT Security n. 45, Maggio 2006 p. 1 di 6 Cifrare FileSystem in Linux Nell'articolo precedente abbiamo visto come cifrare lo swap usando cryptsetup in Linux. Vogliamo ora invece cifrare una partizione
AHD DVR. Manuale d uso rapido
AHD DVR Manuale d uso rapido Questa serie è un eccellente apparato digitale di sorveglianza progettato per il settore sicurezza. Il sistema operativo Linux entro contenuto rende il dispositivo più stabile;
Privacy e firma digitale
WORKSHOP Connessione in rete: sicurezza informatica e riservatezza Privacy e firma digitale C. Giustozzi Privacy e firma digitale Corrado Giustozzi ([email protected]) 1 Le comunicazioni elettroniche
Linux la gestione dei dischi
Linux la gestione dei dischi Agenda I nomi delle unità fisiche in ambiente Linux Partizioni e associazione tra file system e unità Amministrare le unità Nomi delle unità In Linux tutto è un file Ogni unità
Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1
SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware
WP5. 9 Settembre Paolo Veronesi (INFN CNAF)
WP5 9 Settembre 2014 Paolo Veronesi (INFN CNAF) Sommario OpenStack e AAI INFN, l esperienza di Padova Come creare immagini per OpenStack (e non solo) Pianificare incontro con sviluppatori 2 OpenStack e
Identificazione, Autenticazione e Firma Digitale. Firma digitale...
Identificazione, Autenticazione e Firma Digitale In origine crittografia = confidenzialità Diffusione delle reti: nuove funzionalità. Identificazione Autenticazione Firma digitale Identificazione: un sistema
Firma Remota Aruba --- Attivazione account di firma remota ed utilizzo ---
Firma Remota Aruba --- Attivazione account di firma remota ed utilizzo --- Sommario 1. Procedura di attivazione della Firma Remota Aruba... 3 2. Utilizzo della firma remota Aruba con File Protector...
I Boot Loader: LiLo & Grub
I Boot Loader: LiLo & Grub Pagina 1 All'avvio del pc Il BIOS inizializza le periferiche hardware da lui gestite (cpu, ram,...) Il BIOS carica il bootloader Il bootloader carica il kernel del sistema o
Firma digitale con RSA
Sicurezza dei Sistemi Informatici Esercitazioni OpenSSL Firma digitale con RSA Roberta Daidone [email protected] 1 Obiettivo Il client invia il proprio certificato al server. Il server verifica
BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1
BASI DI DATI basi di dati - introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale
DikeX IC Lite Manuale Utente InfoCert. Manuale Utente DikeIC InfoCert
DikeX IC Lite Manuale Utente InfoCert Manuale Utente DikeIC InfoCert Indice Sommario 1. DikeX IC Lite... 3 2. Avvio di DikeX IC... 3 2.1 Controllo e download eventuali aggiornamenti... 3 3. Barra degli
Horizone Server IN00B02WEB. Horizone PDK
Horizone Server IN00B02WEB Horizone PDK Prodotto: -- Descrizione: Horizone PDK - Manuale Utente Data: 10/07/2017 Eelectron Spa IN00B02WEBFI00080102_PDK_MANUAL.DOCX 1/12 Qualsiasi informazione all interno
CRITTOGRAFIA 2014/15 Appello del 13 gennaio Nome: Cognome: Matricola:
CRITTOGRAFIA 2014/15 Appello del 13 gennaio 2015 Esercizio 1 Crittografia ellittica [9 punti] 1. Descrivere l algoritmo di Koblitz per trasformare un messaggio m, codificato come numero intero, in un punto
Crittografia a chiave pubblica
Crittografia a chiave pubblica Esercizi con OpenSSL Alfredo De Santis Dipartimento di Informatica Università di Salerno [email protected] http://www.dia.unisa.it/professori/ads Marzo 2017 Cifratura e Decifratura
Il computer P R O F. L O R E N Z O P A R I S I
Il computer P R O F. L O R E N Z O P A R I S I Un po di storia Le prime macchine per il calcolo automatico risalgono al 1940. Il calcolatore più potente di quel periodo era l ENIAC, in grado di svolgere
Sistema operativo. Avere un architettura multi-core è un vantaggio
Sistema operativo Software responsabile del controllo e della gestione dei componenti hardware di un computer mediante interfaccia (driver), e della gestione dei vari programmi del computer. I programmi
Sistema Operativo (Software di base)
Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:
MSAck Hacklab. MSAck is prouds to announce: Metti al sicuro i tuoi dati: cifrali! MSAck::Hacklab C4Occupata WarmUp Hackit 0x0D
MSAck Hacklab MSAck is prouds to announce: Metti al sicuro i tuoi dati: cifrali! Metti al sicuro i tuoi dati Perche': La privacy e' FONDAMENTALE Dove: Email, hard disk, file, swap/paging, etc. Come: Crittografia
Ridimensionare un disco virtuale Come ridimensionare un disco virtuale in parallels senza perdere i dati in esso contenuti.
Ridimensionare un disco virtuale Come ridimensionare un disco virtuale in parallels senza perdere i dati in esso contenuti. 21 Agosto 2007 Autore: Stefano Dindo Ridimensionare un disco virtuale 1 Indice
20/04/2017 MANUALE DI ISTRUZIONI DELL APPLICAZIONE ENTRATEL-MULTIFILE VERSIONE 1.0.6
20/04/2017 MANUALE DI ISTRUZIONI DELL APPLICAZIONE ENTRATEL-MULTIFILE VERSIONE 1.0.6 PAG. 2 DI 33 INDICE 1. PREMESSA 3 2. INSTALLAZIONE 4 3. STRUTTURA DELLE CARTELLE 8 4. CONFIGURAZIONE DELL APPLICAZIONE
Cifratura Simmetrica con OpenSSL
Cifratura Simmetrica con OpenSSL Alfredo De Santis Dipartimento di Informatica Università di Salerno [email protected] http://www.dia.unisa.it/professori/ads Marzo 2017 Cifrari simmetrici Crittosistemi a chiave
Il computer P R O F. L O R E N Z O P A R I S I
Il computer P R O F. L O R E N Z O P A R I S I Un po di storia Le prime macchine per il calcolo automatico risalgono al 1940. Il calcolatore più potente di quel periodo era l ENIAC, in grado di svolgere
Cliens Redigo Versione 2015.1. Aggiornamento al manuale.
Versione 2015.1 Versione 2015.1.47 Notifiche a mezzo PEC La finestra di notifica è stata completamente riorganizzata come percorso guidato. E ora possibile indicare un numero arbitrario di destinatari,
La firma digitale e la posta elettronica certificata
La firma digitale e la posta elettronica certificata Ing. Giulio Borsari Ministero della giustizia Direttore dell Ufficio Coordinamento Tecnologie «Firma analogica» Ciao Autenticità Non ripudio Integrità
Corso di Sistemi Operativi I/II. Introduzione a Linux. Il File System. Ruggero Donida Labati
Corso di Sistemi Operativi I/II Introduzione a Linux Il File System Ruggero Donida Labati Dipartimento di Informatica via Bramante 65, 26013 Crema (CR), Italy http://homes.di.unimi.it/donida [email protected]
Come installare e lanciare il Software di trasmissione (OBS) per trasmettere in HD
Come installare e lanciare il Software di trasmissione (OBS) per trasmettere in HD Passo 1 Andare su https://obsproject.com/download e cliccare l icona del proprio sistema operativo Passo 2 Windows: cliccare
RSA in OpenSSL. Alfredo De Santis. Marzo Dipartimento di Informatica Università di Salerno.
RSA in OpenSSL Alfredo De Santis Dipartimento di Informatica Università di Salerno [email protected] Marzo 2017 http://www.dia.unisa.it/professori/ads Rappresentazione e codifica dei dati Chiavi e parametri
Sistema operativo & file system 1
Il software (sw) Software di sistema e file system Lezione 1b L esecuzione di programmi è lo scopo di un elaboratore I programmi sono algoritmi codificati in un particolare linguaggio di programmazione
XAMPP - Cos'è e installazione in locale
XAMPP - Cos'è e installazione in locale XAMPP è un acronimo che sta per X - Cross-Platform A Apache M MySQL P PHP P Perl E' una semplice e leggera distribuzione Apache che rende estremamente semplice a
Firma Digitale Procedura Rinnovo
Firma Digitale Procedura Rinnovo Versione: 0.01 Aggiornata al: 16.04.2014 Premessa La procedura di rinnovo dei certificati di firma digitale può essere avviata da 6 mesi prima della scandenza, fino ad
La memoria secondaria
La memoria secondaria E di solito un disco rigido che contiene dati e programmi in modo permanente (può essere anche un cd-rom, floppy disk, etc). Tempi di accesso: Floppy: O(100) ms Hard disk: O(10) ms
Il computer P R O F. L O R E N Z O P A R I S I
Il computer U T I L I Z Z O D E L P C E D O F F I C E A U T O M A T I O N P R O F. L O R E N Z O P A R I S I Un po di storia Le prime macchine per il calcolo automatico risalgono al 1940. Il calcolatore
GESTIONE DELLA MEMORIA CENTRALE 6.1 D. - UNICAL
GESTIONE DELLA MEMORIA CENTRALE 6.1 Gestione della Memoria Background Spazio di indirizzi Swapping Allocazione Contigua Paginazione 6.2 Background Per essere eseguito un programma deve trovarsi (almeno
Cifrari a blocchi. Esercizi con OpenSSL. Alfredo De Santis. Marzo Dipartimento di Informatica Università di Salerno
Cifrari a blocchi Esercizi con OpenSSL Alfredo De Santis Dipartimento di Informatica Università di Salerno [email protected] http://www.dia.unisa.it/professori/ads Marzo 2017 Strumenti Necessari Per lo svolgimento
Installazione del driver Custom PostScript o del driver della stampante PCL per Windows
Installazione del driver Custom PostScript o del driver della stampante PCL per Windows Questo file Leggimi contiene le istruzioni per l'installazione del driver Custom PostScript o del driver della stampante
Guida alla stampa e alla scansione per dispositivi mobili per Brother iprint&scan (Android )
Guida alla stampa e alla scansione per dispositivi mobili per Brother iprint&scan (Android ) Prima di utilizzare l apparecchio Brother Definizioni delle note Nella presente Guida dell utente vengono utilizzati
Dal sistema operativo all' hardware
Dal sistema operativo all' hardware Di cosa parleremo? Il computer (processore e memoria principale) Cosa avviene all'avvio del computer? processi Scheda madre Alimentatore Memorie Secondarie (floppy disk,
Dipartimento Affari Interni e Territoriali Direzione Centrale per i Servizi Demografici INA-SAIA. SSLProxy. Manuale Utente. versione 1.
SSLProxy Manuale Utente versione 1.0 Indice 1 Panoramica... 3 2 Installazione...4 2.1 Prerequisiti... 4 2.2 Acquisizione del pacchetto... 4 2.3 Copia dei file sulla postazione client... 4 2.4 Esecuzione
Informatica di base 6/ed
Informatica di base 6/ed Autori: Dennis P. Curtin, Kim Foley, Kunal Sen e Cathleen Morin A cura di: Agostino Marengo e Alessandro Pagano Capitolo 15 La sicurezza informatica: tecniche e legislazione Capitolo
Guida all'installazione di Ubuntu 10.10
Guida all'installazione di Ubuntu 10.10 Introduzione -Questa guida è rivolta agli utenti che desiderano installare il sistema operativo Ubuntu 10.10 su un computer in cui è già presente Win, in una maniera
MODELLO UNICO SOCIETA DI CAPITALI 2010
MODELLO UNICO SOCIETA DI CAPITALI 2010 Note di rilascio Versione 17.9.0 Data 24 giugno 2010 Compatibilità 17.0.0 e successive In sintesi NOVITA DELLA VERSIONE Controlli Unico 2010 e modelli relativi agli
Telematico Digitale. Note di Installazione
Telematico Digitale Note di Installazione Telematico Digitale INTRODUZIONE NOTE DI INSTALLAZIONE Rel. 1.0 Telematico Digitale si installa direttamente dall indirizzo URL della pagina scaricando uno specifico
Sicurezza e Crittografia
Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Copyright 2011, 2016, Moreno Marzolla http://www.moreno.marzolla.name/teaching/finfa/
LA GESTIONE DELLA I/O
LA GESTIONE DELLA I/O Il S.O. È l interfaccia tra l hardware e i programmi che effettuano richieste di I/O Sottosistema di I/O strutturato in moduli chiamati DRIVER uno per ogni dispositivo I Driver rendono
Server LDAP. File Server. Domain Controller. Installazione di una piattaforma Linux Alessandro Brusò 24/05/2012
791522 Alessandro Brusò Installazione di una piattaforma Linux Server LDAP File Server Domain Controller 2 1 1 2 3 Analisi Creazione del server virtuale Installazione e configurazione dei servizi 3 Analisi
Sicurezza nelle applicazioni multimediali: lezione 5, funzioni di hash. Funzioni crittografiche di hash
Funzioni crittografiche di hash Codici di checksum Un codice di checksum è una firma di dimensione fissa (ad es. 32 bit) calcolata a partire da un messaggio (*) di lunghezza variabile. Ogni messaggio ha
IBM SPSS Statistics per Windows - Istruzioni di installazione (Licenza di rete)
IBM SPSS Statistics per Windows - Istruzioni di installazione (Licenza di rete) Le seguenti istruzioni sono relative all installazione di IBM SPSS Statistics versione 19 con licenza di rete. Questo documento
Token USB V1 - Guida rapida
Token USB V1 - Guida rapida 1 Indice Indice... 2 1 Informazioni sul documento... 3 1.1 Scopo del documento... 3 2 Caratteristiche del dispositivo... 4 2.1 Prerequisiti... 4 2.1.1 Software... 4 2.1.2 Rete...
