Académique Documents
Professionnel Documents
Culture Documents
3 FR
3 FR
Introduction
PhD. Mohammed-Amine KOULALI
m.koulali@ump.ac.ma
1 Sécurité de la plate-forme Android
Low-level System Security
Amorçage vérifié & dm-verity
Système de chiffrement
Full Disk Encryption
Sécurité Android
Sandboxing
SELinux
Multi-utilisateur
Chiffrement
1 Sécurité de la plate-forme Android
Low-level System Security
Amorçage vérifié & dm-verity
Système de chiffrement
Full Disk Encryption
Sécurité Android
Sandboxing
SELinux
Multi-utilisateur
Chiffrement
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 3 / 24
mot pass
entrer correct
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 6 / 24
dm-verity un module du noyau dont l'amorcage verifier (le demmarage verifier ) est basée sur
Arbre de Merkel
L1 L2 L3 L4 un ensemble de bloc par exemple du image loader(image android apparutau
amorcage ou au demmarage) qui constitut un sugnature si un hacker va modifier un block
le hach racine va changer
dm-verity
Arbre de Merkel
dm-verity
Limitations
Système de chiffrement
Présentation
● Système de chiffrement
– Naissance avec Android 3.0
– 4.4: Replacement de PBKDF2 avec scrypt
– 5.0: Stockage Hardware pour les clés
– 7.0: Introduction du chiffrement file-based
● Full Disk Encryption
– Utilise dm-crypt
– Opère à l’échelle du bloc
– Génère une clé déchiffrement disc (disk encryption key (DEK)) aléato-
ire de taille 128 bits.
• < 5.0: Le fichier de la clé est protégé uniquement par le mot de passe de
l’écran de verrouillage
• Actuellement: Le fichier de la clé est stocké sur une puce sécurisée
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 10 / 24
FDE
5.0
FDE
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 13 / 24
Architecture Android
les application
qu'on telecharge
nous meme sont
ecrite en
javaseront execute
sur une machine
vertuel appele
dalvik ou android
runtime
L' access des
applicationsinsatelle par
nous memedans le
dalvik au
camerastockage ect
n'est pas codemais fait
par des API des
bibliotaque android
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 15 / 24
Sandboxing
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 18 / 24
Sandboxing
● A l’installation d’une nouvelle application, un nouveau dossier est
crée : /data/data/<Packagename>/
– Exemple :/data/data/com.whatsapp/
● Pour qu’une application puisse accéder au dossier d’une autre ap-
plication elle doivent :
– Avoir le même UID
– Etre signées par le même certificat du développeur
– Explicitement partager l’UID dans AndroidManifest.xml
1 < manifest ⤦
Ç xmlns : android = " http :// schemas . android . com / apk /
res / android "
3 package = " ma . ensao . sse " /data/data/ma.sse
android : sharedUserId = " ma . ensao . sse " >
5 ...
</ manifest >
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 19 / 24
SELinux
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 21 / 24
SELinux
Exemple de règles
● Pas de ptrace
● No device node creation
● Pas d’accès à /data/security et /data/misc/keystore
● Pas d’accès à /dev/mem ou /dev/kmem
● Restrictions sur le montage de systèmes de fichiers
● Pas d’accès aux fichiers GPS
● SELinux ne peut pas être désactivé
ISSIC4-M1 - Sécurité Android M.-A. KOULALI 10/11/2020 22 / 24
Multi-utilisateur
Types d’utilisateurs
Chiffrement
Merci pour votre Attention!