Vous êtes sur la page 1sur 78

actu

scu 41

lACTUSCU est un magazine numrique rdig et dit par les consultants du cabinet de conseil XMCO

JUILLET 2015

Tests dintrusion des applications Android


Prsentation de la mthodologie utilise pour ce type daudit

Rinitialisation sous Android

Retour sur les faiblesses de certaines implmentations dAndroid

Confrences
Actualit du moment

Analyse des attaques Macro/Word/Dridex, Redirect to SMB et HSTS-HPKP


Et toujours la revue du web et nos Twitter favoris !
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Alan
ScottBates
Akerman

SSTIC, HIP et HITB

we deliver security expertise

www.xmco.fr
2
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Vous tes concern


par la scurit informatique
de votre entreprise ?
XMCO est un cabinet de conseil dont le mtier est
laudit en scurit informatique.

we deliver security expertise

Fond en 2002 par des experts en scurit et dirig par ses


fondateurs, les consultants de chez XMCO ninterviennent que
sous forme de projets forfaitaires avec engagement de rsultats.
Les tests dintrusion, les audits de scurit, la veille en
vulnrabilit constituent les axes majeurs de dveloppement
de notre cabinet.
Paralllement, nous intervenons auprs de Directions Gnrales
dans le cadre de missions daccompagnement de RSSI,
dlaboration de schma directeur ou encore de sminaires de
sensibilisation auprs de plusieurs grands comptes franais.
Pour contacter le cabinet XMCO et dcouvrir nos prestations :
http://www.xmco.fr

Nos services

Test dintrusion
Mise lpreuve de vos rseaux, systmes et applications web par nos
experts en intrusion. Utilisation des mthodologies OWASP, OSSTMM, CCWAPSS.

Audit de Scurit
Audit technique et organisationnel de la scurit de votre Systme
dInformation. Best Practices ISO 27001, PCI DSS, Sarbanes-Oxley.

Certification PCI DSS


Conseil et audit des environnements ncessitant la certification PCI DSS
Level 1 et 2.

Cert-XMCO : Veille en vulnrabilits et


Cyber-surveillance
Suivi personnalis des vulnrabilits, des menaces et des correctifs affectant
votre Systme dInformation et surveillance de votre primtre expos sur
Internet

Cert-XMCO : Rponse intrusion


Dtection et diagnostic dintrusion, collecte des preuves, tude des logs,
autopsie de malware.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Vous tes passionn par la scurit informatique ?

Nous recrutons !

Indpendamment dune solide exprience dans la scurit informatique, les candidats devront
faire preuve de srieuses qualits relationnelles et dun esprit de synthse. XMCO recherche avant
tout des consultants quilibrs, passionns par leur mtier ainsi que par bien dautres domaines
que linformatique.
Tous nos postes sont bass Paris centre dans nos locaux du 2me arrondissement.
Retrouvez toutes nos annonces ladresse suivante :
http://www.xmco.fr/recrutement.html

Dveloppeur (CERT-XMCO)

Juillet 2015

XMCO recrute un dveloppeur afin de participer aux activits du CERT-XMCO.


En tant que dveloppeur au sein du CERT-XMCO, vous serez charg de :
Raliser les dveloppements internes lis aux projets de Cyber-surveillance ou dextranets
Client
Etre moteur dans la conception et llaboration des projets en cours de rflexion
Participer nos travaux de R&D
Comptences techniques requises :
Matrise du Python et de la Programmation Oriente Objet
Matrise des environnements GNU/Linux
Connaissances des nouvelles technologies Web (Flask/MongoDB/Boostrap/JQuery)
Connaissances en dveloppement scuris
Comptences techniques requises :
Forte capacit danalyse et de synthse
Rigueur
Curiosit
Esprit dinitiative et esprit dquipe
Autonomie
Bonne qualit rdactionnelle
Profil Alternance (bac+4/5) / jeune diplm disposant dune exprience significative en
termes de dveloppement (projet, stage...).

4
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

sommaire
p. 6

p. 6

Tests dintrusion des


applications Android

Prsentation de la mthodologie
XMCO

p. 26

Rinitialisation sous
Android

p. 26
xxx

Retour sur les faiblesses de certaines implmentations dAndroid

p. 31

Confrences

HITB, SSTIC et HIP

p. 31

p. 58

Actualit du moment

p. 58

p. 73

Rinitialisation Android, Attaque


Word/Macro, Redirect to SMB,
HSTS/HPKP

p. 73

La revue du web et
Twitter

Contact Rdaction : actu.secu@xmco.fr - Rdacteur en chef : Adrien GUINAULT - Direction artistique :


Romain MAHIEU - Ralisation : Agence plusdebleu - Contributeurs : Antonin AUROY, Stphane AVI, Etienne
BAUDIN, Simon BUCQUET, Bastien CACACE, Frdric CHARPENTIER, Charles DAGOUAT, Damien GERMONVILLE,
Yannick HAMON, Jean-Yves KRAPF, Marc LEBRUN, Romain LEONARD, Thomas LIAIGRE, Cyril LORENZETTO, Rodolphe NEUVILLE, Julien MEYER, Clment MEZINO, Stphanie RAMOS, Arnaud REYGNAUD, Rgis SENET, Julien
TERRIAC, Pierre TEXIER, Arthur VIEUX, David WEBER.

Conformment aux lois, la reproduction ou la contrefaon des modles, dessins et textes publis dans la publicit et la rdaction de
lActuScu 2015 donnera lieu des poursuites. Tous droits rservs
- Socit XMCO. la rdaction dcline toute responsabilit pour tous les
documents, quel quen soit le support, qui lui serait spontanment
confi. Ces derniers doivent tre joints une enveloppe de rexpdition prpaye. Ralisation, Juillet 2015.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

> Mthodologies et spcificits


Au fil des annes, le systme Android sest impos comme le leader sur les quipements nomades (smartphones, tablettes
et consorts). Aujourdhui, seul Apple semble concurrencer un tant soit peu logre Google, en tout bien tout honneur videmment
Cet effet de mode a engendr le dveloppement tous azimuts dapplications diverses et varies et donc favoris lmergence des audits de code source et des tests dintrusion de ce type dapplications et des infrastructures associes.
Lobjectif de cet article nest pas dincriminer les dveloppeurs ou de chercher des responsables ces failles. Nous allons
uniquement nous atteler la prsentation de la dmarche adopte par nos consultants lors dun Pentest ciblant une
application Android. Nous constaterons que, dans les faits, cet exercice prsente de nombreuses similarits avec les tests
dintrusion Web classiques, tout en prsentant lavantage de pouvoir en gnral accder sans trop de difficults au
pseudo-code source. Les techniques dobfuscation et autres mcanismes anti-rtroingnierie ne sont, en effet, que peu
voire jamais utilises.

Par Marc LEBRUN et Arnaud REYGNAUD

Racchio

Les tests dintrusion


Android

Avec plus de 50% du parc mobile, lexplosion des systmes


Android a engendr plusieurs consquences notables :

Posons donc le cadre de cet article et apportons demble


quelques prcisions :

le dveloppement massif dapplications pour tout et


+
nimporte quoi (de la bote meuh lapplication ban-

Il ne sagit en rien dun dossier prsentant des vulnra+


bilits affectant le systme Android ;
Il ne sagit pas non plus dune tude quant laspect
+
Forensics , donc pas danalyse de la mmoire des appa-

caire);

un fort intrt des entreprises davoir leurs applications


+
afin damliorer laccessibilit leurs produits et bien videmment leur exposition ;

la cration dun nouveau CYBER-terrain de jeu pour les


CYBER-attaquants et CYBER-criminels en tout genre (pourquoi se CYBER-priver ?).

Cette dernire consquence est due au nombre probant de


problmatiques de scurit. On a mme appel Android
le nouveau Windows 98

reils, par exemple ;

Nous cartons galement lapproche analyse de


+
malware , exercice bien diffrent du test dintrusion.
Avant toute chose, reprenons donc lhistorique et quelques
notions techniques prliminaires une bonne comprhension de ce dossier.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

> Notion de bases

Structure du systme Android

Bref historique

Commenons par le composant de plus bas niveau, savoir


le noyau.

Il tait une fois Voil dj plus de 10 ans quAndroid est


n.

Linux Kernel : Le noyau utilis a t spcialement modi+


fi par Google en dehors du cycle de dveloppement clas-

2003 : Android, Inc est fonde par Andy Rubin, Chris


+
White, Nick Sears et Rich Miner dans le but de crer des
appareils mobiles aptes grer les prfrences utilisateurs,
golocalisation, etc., fonctionnalits jusqualors occultes ;

sique pour lenvironnement mobile. Cette base sappuie


actuellement sur les versions 3.4 et 3.10. Les changements
apports concernent essentiellement la scurit, la gestion
dnergie, etc.

2005 : Google entre dans la partie et rachte la firme


+
(dans le doute, a pourrait servir plus tard) ;
2007 : Cration du consortium Open Handset Alliance
+
(OHA). Lobjectif est de construire un partenariat entre les

Hardware Abstraction Layer (HAL) : la couche dabstrac+


tion matrielle reprsente linterface entre le systme et la

2008 : aprs cinq annes, Android est prsent au public


+
dans sa premire mouture.

Android Runtime (ART) : Par dfaut Dalvik tait la ma+


chine virtuelle utilise sur Android (chaque application

acteurs software, hardware et rseau pour dvelopper une


nouvelle exprience mobile ;

Entre 2008 et aujourdhui, 10 versions se sont succd :

partie Hardware cest--dire le matriel. Il sagit ni plus ni


moins dune interface qui fournit des fonctions gnriques
afin dinteragir avec le matriel tout en faisant abstraction
des dtails dimplmentation bas-niveau (audio, stockage,
etc.).

tant lance dans sa machine virtuelle). Ce mcanisme


permet dexcuter le mme programme sur une grande
varit dappareils, quelles que soient leurs caractristiques
techniques.
ART est le mcanisme qui remplace Dalvik depuis fin 2014
avec Android 5 (Lollipop). Les applications sont dornavant
compiles ds leur installation sur le matriel vitant ainsi
la conversion chaque excution. Auparavant le processus
consistait en la traduction du bytecode en langage machine spcifique au processeur physique au moment de son
excution (mcanisme JIT / Just In Time).
Nous dveloppons davantage le sujet dans la prochaine
section.

Avant de satteler la partie purement ddie au Pentest, il


convient de prsenter les bases permettant de comprendre
comment lcosystme Android est structur, mais galement quelles en sont les spcificits.

Dalvik a t cr par Dan Bornstein


afin doffrir une alternative
la machine virtuelle de la technologie Java
tout en conservant la philosophie du Write
once, run anywhere
Native Libraries : un ensemble de bibliothques et res+
sources permettant dinteragir avec le systme : SSL, SQLite,
Webkit, OpenGLsara, etc.

Android Framework : API Android utilise par les dve+


loppeurs dapplications, on y trouve des interfaces et des
classes : ContentProviders, ActivityManager, ViewManager,
etc.

Reprsentation de la pile Android

Applications : elles appartiennent la dernire couche


+
du modle prsent. Il sagit de ce que lon trouve commu-

nment sur tous les appareils (le navigateur, les contacts, la


bote meuh, etc.).

7
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Tests dintrusion Android

Dalvik / ART

ART (Android RunTime)

Dalvik

ART est le mcanisme qui prend le relai de Dalvik. La diffrence majeure concerne le moment o le code est interprt. Dalvik va interprter le bytecode la vole pour
tre excut (JIT). Alors quART va compiler le bytecode
linstallation initiale, Ahead-Of-time (AOT). Cela prend
donc plus de temps linstallation, mais accroit les performances lexcution.

Dalvik est une machine virtuelle destine permettre lexcution simultane de plusieurs applications sur un appareil
disposant de faibles capacits. Mme si cette dsignation
devient de moins en moins vraie aujourdhui, les premires
gnrations dappareils Android disposaient despace mmoire et de puissance de calculs limits. Ces restrictions
techniques imposaient donc des choix de conception particuliers.
Lautre intrt tait dexcuter le mme programme sur
une grande varit dappareils, sans prendre en compte
leur architecture et leurs composants spcifiques, ou du
moins en plaant les mcanismes dinteroprabilit un
niveau moins contraignant.

Ds KitKat (Android 4.4), les dveloppeurs avaient la possibilit de changer le moteur dexcution et de choisir ART
pour leurs tests.
partir de Lollipop (5.0), ART a obtenu les faveurs de Google et se veut donc tre le successeur direct de Dalvik. Lobjectif est ici damliorer les performances des applications
Android (notamment en termes de rapidit dexcution).

Dalvik a t cr par Dan Bornstein afin doffrir une alternative la machine virtuelle de la technologie Java tout en
conservant la philosophie du Write once, run anywhere.
Le bytecode (langage intermdiaire entre le code
source et les instructions-machine) est ainsi transform et
consolid dans un fichier .dex (Dalvik Executable) en vue
de son utilisation par Dalvik. Le code excutable est ensuite
converti la vole en instructions spcifiques lappareil
sur lequel le programme est excut. On parle ici de la fonction de compilation Just-In-Time (JIT).
Dalvik, contrairement la JVM classique, se base sur des
registres et non sur une pile. Cela permet doptimiser le
nombre dinstructions et de rpondre favorablement aux
exigences techniques. Cela induit galement que les fichiers de bytecode Java ne peuvent pas tre excuts tels
quels par Dalvik.

http://www.anandtech.com/show/8231/a-closer-look-atandroid-runtime-art-in-android-l

Prsentation du format de fichiers Android Package


(APK)
Les packages APK sont semblables des archives ZIP. Il
convient cependant dapporter quelques prcisions sur le
sujet afin dviter tout raccourci ou abus de langage.
Les fichiers APK sont bass sur le format ZIP, mais incluent
une structure et des mtadonnes spcifiques (le parallle
peut tre fait avec le JAR).
Cette particularit permet, entre autres, lAndroid Package Manager de valider lintgrit de lAPK et den extraire le contenu (installation de lapplication).

8
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

La structure classique est la suivante :

peuvent galement tre trouves dans les fichiers suivants:

+/data/system/packages.list ;
+/data/system/packages.xml ;
+/data/system/packages-stopped.xml.
Comme nous le verrons plus loin, tous ces emplacements
peuvent contenir des informations importantes ou sensibles et prsentent donc de lintrt pour lauditeur.

> En amont des tests dintrusion


Tests dintrusion ciblant les applications mobiles
On retrouve, dans lordre :
Un fichier AndroidManifest.xml : il dcrit lapplication. Il
+
comporte le nom, la version, les permissions requises, les
diffrents composants (Activity, Service, Receiver, etc.), ainsi que dautres informations parfois bien utiles (intent-filter,
lactivation du debug, etc.) ;

Un fichier classes.dex : il sagit dun binaire au format


+
DEX optimis durant la compilation (ODEX) contenant les
classes Java, les Strings, etc.

Un dossier META-INF est utilis pour vrifier lintgrit


+
de lAPK. Il contient les fichiers :

o CERT.RSA : le certificat de lapplication ;


o CERT.SF : la liste des ressources accompagnes du hash
correspondant (SHA1), li au MANIFEST.MF ;
o MANIFEST.MF : le nom de la classe principale (contenant la mthode main et le CLASSPATH (chemin) menant
dventuelles archives ;
Un dossier res contenant dautres rpertoires propres
+
aux interfaces (composants graphiques et ressources de
lapplication) ;

Un fichier resources.arsc : fichier contenant des res+


sources prcompiles.
Note : dautres fichiers / rpertoires peuvent tre prsents
selon les applications (lib, assets, etc.). Il ne sagit l que de
la structure de base.
Mais revenons-en Android. Les APK sont installs dans 3
rpertoires distincts :
/system/app/ : pour les applications prinstalles
+
(Browser, Camera, etc.) ;
/data/app/ : pour les applications installes par lutili+
sateur ;
/data/data/<nom_du_package/ : pour le stockage des
+
bases de donnes, prfrences, cache, etc. (cr par le Pac-

kage Manager).
Des informations complmentaires sur les APK installs

Les tests dintrusion ciblant les applications mobiles


peuvent tre regroups en deux grandes catgories. Selon
le type de tests, une approche et un outillage diffrents
seront envisags.
Tests dintrusion sur application client lger : il sagit
+
en gnral dapplications ayant pour seul objectif la prsen-

tation des interfaces graphiques, permettant lutilisateur


dinteragir de manire transparente avec des Web Services
distants. Comme nous le verrons plus tard, on retrouve sur
ce type dapplications une mthodologie finalement assez
proche de celle des tests dintrusion Web classiques. Ces applications sont parfois de simples coquilles vides exposant
une WebView (API Android permettant dafficher des
pages web dans une application).
Tests dintrusion sur application client lourd : Nous
+
constatons une recrudescence de ce type dapplications. Ces

applications mobiles ne se contentent pas dappels HTTP


/ Web Services, mais implmentent galement des fonctionnalits ayant un impact uniquement local. Ces applications communiquent gnralement aussi avec un ou plusieurs serveurs distants, mais les modes de communication
peuvent tre diffrents (FTP, SCP, protocoles propritaires,
etc.). Ce type de tests ncessitera une approche plus proche
de celle adopte lors de laudit dun client lourd (coute rseau, rtroingnierie, analyse dynamique, tude de la mmoire, etc.). Ces applications remettent galement au got
du jour des vulnrabilits disparues avec larrive des applications Web : mot de passe en dur, contrle scurit ct
client, utilisation de cookie scurise ou chiffr ...
En termes de mthodologies, les pratiques usuelles sappliquent :
Boite noire : application seule sans compte ;

+
Boite grise : application seule avec un compte utilisa+
teur;
Boite blanche : application fournie avec son code source.
+
Ce dernier cas est frquemment utilis dans le cadre daudit dapplications bancaires ou dans le cadre daudit intrusif
dapplications de jeux en ligne soumises une homologation par lARJEL.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Tests dintrusion Android

Les rfrentiels

La toolbox du pentester Android

Lors de la ralisation daudits techniques et de tests dintrusion, nous basons notre approche sur celles prconises
par des rfrentiels connus et prouvs, auxquels viennent
sajouter les connaissances et le savoir-faire dvelopp en
interne.

Chaque pentester dispose de sa propre bote outils, compose en gnral de ses outils publics prfrs et de scripts
maisons qui lui facilitent la tche lors des audits. Bien
videmment chacun ses prfrences et loutil des uns ne
conviendra pas forcment aux autres. Sans compter que,
contrairement il y a quelques annes seulement, il existe
prsent une plthore doutils destins spcifiquement
auditer le systme ou les applications Android.

Ainsi, lOWASP Testing Guide constitue la base de notre


mthodologie dans le cadre de tests dintrusion Web classiques. De nombreux points de ce rfrentiel restent valides
dans le contexte de laudit dune application mobile. On
peut galement noter que la communaut OWASP tablit
depuis plusieurs annes maintenant un Top 10 des vulnrabilits en environnement mobile, linstar de ce qui tait
dj fait pour les applications Web (voir encart suivant).

Les classiques

> INFO
OWASP Top 10 des risques mobiles 2014

LOWASP propose galement de nombreuses ressources


ddies la scurit des applications mobiles (https://
www.owasp.org/index.php/OWASP_Mobile_Security_
Project) et a notamment tabli la liste des principaux
risques affectant les applications mobiles :
M1: Weak Server Side Controls
M2: Insecure Data Storage
M3: Insufficient Transport Layer Protection
M4: Unintended Data Leakage
M5: Poor Authorization and Authentication
M6: Broken Cryptography
M7: Client Side Injection
M8: Security Decisions Via Untrusted Inputs
M9: Improper Session Handling
M10: Lack of Binary Protections
Parmi les autres mthodologies intressantes, on peut noter linitiative Open Android Security Assessment Methodology (OASAM). Elle prsente lintrt de fournir des listes
de contrle parfois plus prcises que lOWASP, notamment
concernant des spcificits dAndroid (IPC / Intents, Broadcast Injection, etc.).
Google fournit galement des recommandations aux dveloppeurs dapplications pour son systme mobile. Celles-ci
permettent denrichir encore le panel des contrles de scurit effectuer lors de laudit dune application Android.

10

Nous vous prsentons donc ici une courte slection des


outils incontournables, qui constitue le kit de survie du
pentester en milieu hostile Android .

Une grande partie des tches ralises lors dun test dintrusion Android sapparentant celles ralises lors dun
test Web / Web Services classique, on retrouvera naturellement les Usual Suspects :
Le proxy intrusif : Burp Suite ou Zap, en gnral. Cet outil est
indispensable pour intercepter, diter, rejouer les requtes
HTTP. Une fois le certificat CA install au sein de lappareil
Android virtuel (voir Bonus #1), il suffit de lui spcifier loption de dmarrage -http-proxy pour pouvoir commencer
jouer avec le trafic HTTP.
Un navigateur Web : encore une fois, la majorit des oprations dintrusion viseront en gnral linfrastructure Web
Services de lapplication, et une fois la cartographie de ces
services effectue, rien nempche lauditeur de travailler
directement depuis son navigateur. Cela prsente lavantage de pouvoir utiliser ses greffons navigateurs prfrs
(Hackbar, gestionnaires de sessions et de cookies, etc.).
Fuzzers et outillage de post-exploitation : tous les outils habituellement utiliss pour manipuler, exploiter et dcouvrir
des vulnrabilits en environnement Web trouveront galement une utilit. Parmi ceux-ci, les fuzzers dURI (patator,
wfuzz, Burp Intruder, etc.) ainsi que des outils de post-exploitation (sqlmap, metasploit, etc.) resteront incontournables.
Wireshark / tcpdump : bien quil ne soit que rarement ncessaire de dgainer son analyseur de paquets semi-automatique pour auditer une application Android, il arrive
parfois que ce soit ncessaire. Cest surtout vrai dans le cas
de lutilisation de protocoles propritaires. Lmulateur Android supporte par ailleurs loption de dmarrage -tcpdump
permettant de spcifier un fichier de sortie au format PCAP,

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

qui journalisera tous les changes rseau effectus par lappareil.


Sqlite : Sqlite tant le format de stockage de donnes natif prsent sur Android, il convient davoir sous la main un
client SQL capable de se connecter ce type de bases de
donnes. Le binaire sqlite3 ou SQuirel SQL avec le driver
JDBC ad hoc feront laffaire.
Dcompilateur JAVA : les applications Android tant crites
en JAVA, il est parfois bien utile de dcompiler le bytecode
vers un pseudo-code JAVA aisment lisible et comprhensible. JD-GUI, CFR ou jad sont les plus connus et fonctionnent
parfaitement avec le bytecode des applications Android.

Il existe encore bien dautres outils que


nous avons carts, soit parce que nous
navons pas (encore) eu loccasion de les
tester, soit parce quils sont clairement plus
adapts dautres tches qu la ralisation
de tests dintrusion (lanalyse de malware en
particulier).
Outils en ligne de commande classiques : On ne les mentionne pas assez, mais grep, sed, awk, cut, find, unzip, tar,
file, strings, hexdump et tous les autres programmes accessibles depuis la ligne de commande sur les systmes Unix /
Linux nous rendent de fiers services et peuvent faire gagner
beaucoup de temps en tests dintrusion (Android ou autre,
dailleurs).
Les outils spcifiques Android

Il convient galement de rappeler quelques astuces quil est


possible de raliser travers une simple connexion Telnet
vers son mulateur (telnet localhost <console-port>) :

+redimensionnement (window scale <VALEUR>) ;


donnes de golocalisation (geo nmea / geo fix <VA+
LEUR>) ;
mulation dappels, de SMS (sms send <NUMERO>
+
<MESSAGE>), etc. ;
+capture du trafic (network capture start <FICHIER>) ;
+vnements hardware (event <send|types|codes|text>);
et bien dautres disponibles sur : https://developer.an+
droid.com/tools/devices/emulator.html.
Dautres outils ont t spcialement conus pour aider
les auditeurs dans la ralisation de lanalyse dynamique
dapplications Android : Cuckoo-Droid, AndroidHooker,
Droidbox, Drozer.
Le fonctionnement de ces outils est abord plus en dtail
dans la partie Analyse dynamique de cet article.
Il existe encore bien dautres outils que nous avons carts, soit parce que nous navons pas (encore) eu loccasion
de les tester, soit parce quils sont clairement plus adapts dautres tches qu la ralisation de tests dintrusion
(lanalyse de malware en particulier). Dautres sont dsormais obsoltes, et enfin, certains ont tout simplement t
vits par choix.
Lappareil de test

En premier lieu, on trouvera bien videmment lmulateur.


Nous dcrirons plus en dtail son dploiement dans la prochaine partie.
Parmi les outils spcifiques la plateforme Android, on retrouve surtout des outils natifs, fournis avec le SDK dAndroid :
Android Debug Bridge (ADB) : il sagit dun couple client /
serveur natif Android permettant dinteragir directement
avec lappareil. Il permet notamment dobtenir une invite
de commande, de tlcharger des fichiers vers et depuis
lappareil, dinstaller des applications et deffectuer des redirections de ports.
Logcat : le systme Android fournit aux dveloppeurs
dapplications une interface vers ce mcanisme de journalisation. Y apparaissent les informations relatives au
fonctionnement du systme et des applications en cours
dexcution.

Pour raliser des tests dintrusion sur une application Android, il est ncessaire de pouvoir installer lapplication
tester sur un appareil afin den tudier le comportement.
Bien quil soit possible de raliser ces oprations sur un appareil physique, il est en gnral nettement plus pratique
de disposer dun appareil virtuel, mulant toutes les capacits dun vrai terminal.
lorigine, la seule option tait dutiliser lmulateur fourni
par Google avec le SDK Android, mais il existe prsent
dautres alternatives. Parmi celles-ci figure en bonne place
GenyMotion, trs pris par les dveloppeurs, car il est plus
rapide que lmulateur officiel (surtout sil est configur
avec une image ARM). Il permet de crer rapidement des
appareils virtuels calquant des configurations matrielles
existantes (Nexus 5, Samsung Note, etc.).

APKTool : loutil inclut un assembleur / dsassembleur


permettant de manipuler le bytecode des applications
Android. Nous reviendrons dans la suite de cet article sur
lutilisation de cet outil afin de raliser des oprations de
rtroingnierie sur des applications Android.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

11

>>> Bonus #1 : Prparation dun terminal de test


Si lon est amen souvent raliser des tests dintrusion ciblant des applications Android, il peut tre pratique de prparer un
terminal virtuel ddi (Android Virtual Device ou AVD) embarquant les outils ncessaires ou habituels. minima, on souhaitera
intgrer les outils en ligne de commande basiques (grep, sed, awk, cat, etc.) et le certificat CA de notre proxy intrusif.
On commence donc par lancer la commande Android avd, fourni avec le SDK. Cest via cet utilitaire que lon peut crer tout
type de configuration matrielle (taille et rsolution de lcran, prsence ou non dune camra, dun clavier physique, etc.).
Cest ici que lon dfinit galement la version du systme Android que lon souhaite embarquer sur le terminal. Il est recommand de choisir une image disposant du framework Google (Google API), car de nombreuses applications en dpendent.
Enfin, le choix dune image base sur larchitecture x86 permettra de disposer de bien meilleures performances que lors de
lmulation dun terminal ARM.

Si lon souhaite installer nos outils, scripts ou modifier certains aspects du systme sur cet appareil virtuel, on est rapidement
confront au fait que tout changement affectant la partition systme est perdu aprs un redmarrage. En effet, lmulateur
Android charge chaque dmarrage une image standard de la version du systme choisie lors de la cration de lAVD.
Dans cet exemple, nous souhaitons prserver linstallation des outils en ligne de commande classiques et installer de manire
permanente un certificat CA au sein du magasin systme. Il va donc falloir bricoler un petit peu...
Premire tape : Installer la busybox
Busybox est un programme compil statiquement, embarquant des implmentations simples pour de nombreuses commandes frquemment utilises sur les systmes UN*X. Tlchargeons donc la version x86 la plus rcente et connectons-nous
notre appareil laide dadb.
Note : pour pouvoir y appliquer des modifications, il est en gnral ncessaire de remonter la partition system en mode
read-write avec la commande suivante : mount -o rw, remount /system. On constate que la variable PATH inclut le chemin /
vendor/bin, un emplacement idal pour dployer notre busybox. La commande--install cre les liens symboliques permettant
dutiliser facilement les implmentations embarques au sein du binaire busybox.

12
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Deuxime tape : Installer notre certificat CA


Afin de pouvoir intercepter et manipuler le trafic HTTPS, oprations basiques lors dun test dintrusion, il est ncessaire dinstaller le certificat CA de notre proxy intrusif (gnralement Burp Suite ou ZAP).
Il existe pour cela plusieurs mthodes, mais puisque nous crons une image systme modifie, autant inclure manuellement
ce certificat directement dans le magasin de certificats du systme Android.
On rcupre donc le certificat depuis notre proxy intrusif, reste le pousser sur lappareil. Le magasin Android stocke les certificats au sein du rpertoire /system/etc/security/cacerts/ ; cest le hash du Subject Name qui est utilis pour les nommer.

Dernire tape : Rendre ces changements permanents


Afin de stocker ces changements temporaires, lmulateur Android cre une copie temporaire de limage systme utilise au
sein du dossier /tmp/emulator-<username>. Il suffit donc de copier cette image modifie et de la dposer dans le dossier de
notre AVD (~/.Android/avd/<avd name>).

Si on relance lmulateur, on constate quil dtecte automatiquement la prsence de cette image et la charge au dmarrage
de lAVD.

13
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Tests dintrusion Android

Nous disposons alors dun terminal ddi au pentest oprationnel. Il permet dutiliser les commandes UN*X les plus courantes
et de faire de linterception HTTPS.

Il ne sagit bien sr que des prrequis de base et cette mthode peut tre employe pour effectuer toute sorte de modifications
permanentes au systme Android (modification des scripts de dmarrage ou du framework Android, installation dapplications
systme, etc.).

14
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

> Le Pentest : analyse statique


Le code source
Dans le cadre dun test dintrusion, le code source nest habituellement pas fourni. Cependant, la plupart du temps il
est possible dobtenir le code reconstitu en dcompilant
les classes JAVA contenues dans le fichier APK. Le principal problme rside dans le fait que le code gnr par
les outils de dcompilation est parfois difficilement lisible :
noms de variables et de fonctions perdus, structure du code
diffrente de celle dorigine, etc.
Dans le cas des tests dintrusions raliss avec le code
source (par exemple, dans le cadre dun audit intrusif dune
demande dhomologation ARJEL).... On se retrouve alors
dans le contexte dun audit de code Java classique, lexception de quelques spcificits dAndroid.
Il existe des outils danalyse statique automatiss conus
spcialement pour Java, mais ils sont en gnral prvus
pour tre utiliss par les dveloppeurs pour dcouvrir des
bugs, et non pas des failles de scurit. Ces outils produiront donc de nombreux faux positifs et ne remplaceront pas
un humain capable de comprendre le code quil lit, avec
des problmatiques de scurit en tte.

de gnrer facilement des applications pour les diffrentes


plateformes mobiles (Android et iOS principalement).
Le fichier manifest.xml est une source dinformations pouvant galement savrer intressantes dans le contexte
dun test dintrusion. En effet, il dtaille la liste des permissions Android requises par lapplication, donnant lauditeur un aperu des actions susceptibles dtre ralises
par lapplication : WRITE_EXTERNAL_STORAGE, INTERNET,
USE_CREDENTIALS, etc.
De nombreux attributs de lapplication sont dfinis au sein
de ce fichier. Parmi ceux-ci on recherchera la prsence de
lattribut android:debuggable, qui pourra simplifier considrablement la phase danalyse dynamique.

Les fichiers APK pouvant tre


dcompresss, et le pseudo-code source Java
pouvant tre obtenu aisment
laide doutils de dcompilation,
il ny a donc pas de frein utiliser
les bonnes vieilles mthodes de recherche
manuelle.

Le contenu du fichier APK


Les fichiers APK pouvant tre dcompresss, et le pseudo-code source Java pouvant tre obtenu aisment laide
doutils de dcompilation, il ny a donc pas de frein utiliser
les bonnes vieilles mthodes de recherche manuelle.
On peut donc commencer chercher des chanes de caractres prcises au sein du code source, des fichiers de configuration et de tout autre fichier prsent au sein de lapplication laide des commandes grep, sed ou tout autre outil
de recherche. Les exemples suivants sont des classiques,
mais ils peuvent tre adapts et complts en fonction du
contexte de laudit :
Recherche dURI :
grep
-aiRPoH
https?://[a-zA-Z0-9\-\_\.\~\!\*\\
(\)\;\:\@\&\=\+$\, \/\?\#\[\]\%]+|sed s/:/, /
Recherche de mots clefs sensibles :
grep -aiRPoH password=|key=|pass=|secret=
Recherche de condensats cryptographiques MD5 :
egrep
-RHoE

(^|[^a-fA-F0-9])[a-fA-F0-9]{32}
([^a-fA-F0-9]|$)
On peut ainsi sortir de ses tiroirs ses expressions rationnelles prfres et partir la recherche de toute sorte de
donnes intressantes.
Avec un parcours rapide des fichiers contenus dans lapplication, on identifiera rapidement les frameworks de dveloppement tout-en-un (tel quApache Cordova). Ces
outils permettent gnralement de dvelopper avec des
outils Web classiques (HTML, CSS, JavaScript/JQuery) puis

Les donnes prsentes sur le terminal


Une fois lapplication installe, le fichier APK rside dans le
dossier /data/app, et un dossier portant le nom de lapplication est cr dans le rpertoire /data/data/. Ce dernier
contient habituellement les fichiers de configuration, ainsi
que les donnes stockes localement par lapplication. Les
permissions UN*X qui lui sont attribues assurent quune
autre application ne peut y accder.
Il constitue donc un emplacement privilgi pour la recherche didentifiants ou de donnes sensibles ( laide
dadb par exemple). Il est dailleurs important de surveiller
les changements effectus dans ce dossier et au sein des
fichiers quil contient lors de la phase danalyse dynamique.
Il est en effet assez courant de constater que lapplication
audite stocke des identifiants de Web Services et autres
jetons didentification en clair sur le disque, dans une base
de donnes SQLite, voire dans un simple fichier texte
Dans certains cas, lapplication peut aussi crire des donnes sur la carte micro-SD (sil y en a une de prsente).
Le risque est encore plus grand dans ce cas prcis, puisque
le systme de fichiers utilis sur ce support (gnralement
FAT) ne permet pas de faire respecter des permissions
strictes. Ainsi, une application malveillante pourra sans difficult y accder et drober les informations contenues sur
la carte.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

15

Tests dintrusion Android

> Le Pentest : analyse dynamique

Un analyseur rseau : TCPDump / WireShark / ou direc+


tement lmulateur (apportant un complment dinforma-

Dfinition

tion par rapport au simple proxy).

De manire gnrale, lanalyse dynamique dune application vient complter lanalyse statique ralise. Il sagit ici
dtudier le comportement de lapplication AKA monitoring . On sattardera donc sur lanalyse des appels de fonction, les chaines stockes en mmoire, les mcanismes de
dbogage, les injections de code ou encore le trafic gnr.

Sans omettre les outils usuels embarqus pour la plupart


avec le SDK : Android Debug Bridge (ADB), Dalvik Debug
Monitor Server (DDMS) / Android Device Monitor (tools/
monitor), les mcanismes de visualisation de logs (logcat),
etc.

En fonction des contextes, des outils en ligne peuvent tre


utiliss linstar de :

Lanalyse dynamique dune application


vient complter lanalyse statique ralise.
[...] On sattardera donc sur l
analyse des appels de fonction,
les chaines stockes en mmoire, les mcanismes de dbogage, les injections de code
ou encore le trafic gnr.

+Anubis : http://anubis.iseclab.org
+APK Analyzer : http://www.apk-analyzer.net
+ForeSafe : http://www.foresafe.com/list
+SandDroid : http://sanddroid.xjtu.edu.cn
+Tracedroid : http://tracedroid.few.vu.nl
+VirusTotal : https://www.virustotal.com
Cependant, dans le cadre du pentest il est assez peu recommand dexternaliser les donnes de clients vers dautres
plateformes. Ces outils peuvent nanmoins apporter des
ides ou tre utiliss dans le cadre dtudes de malwares
ou encore lors de certaines missions forensic.
On privilgiera donc dautres composants linstar de :
AndroidHooker : projet open source facilitant ltude des
+
appels lAPI ;
Droidbox : outil permettant dobtenir les vnements et
+
interactions de lapplication ;
Drozer /Mercury : framework permettant entre autres
+
dinteragir avec les mcanismes Inter-Process Communication (IPC). Dautres fonctionnalits sont disponibles, mais
elles sortent du contexte prsent ici ;
Un proxy : tel Burp Suite , destin observer le trafic
+
HTTP transitant entre lapplication / lmulateur et un serveur distant) ;

Une sandbox Cuckoo-Droid : extension de Cuckoo per+


mettant dtudier le comportement de lapplication. Lutilisation est ici un peu dtourne, mais lapport dinforma-

16 tions peut savrer bnfique ;

La liste nest bien entendu pas exhaustive et tout comme


pour lanalyse statique, chacun utilisera les outils quil jugera adapts en fonction du temps, des besoins et de lapplication audite.
Sur quoi faut-il se concentrer prcisment ?

+les informations sur les changes rseau raliss ;


+les accs en lecture et criture sur les fichiers ;
+les services dmarrs, les classes charges, etc.
dventuelles fuites dinformations et stockages dinfor+
mations sensibles en clair ;
+les donnes sur les broadcast receivers ;
+les oprations de chiffrement utilisant lAPI Android ;
+les informations sur les appels et SMS ;
+les injections de code ;
+des dfauts de cloisonnement ;
+des erreurs quant la gestion de privilges ;
la mauvaise manipulation de composants ( titre
+
dexemple les intents ) ;
+etc.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

changes rseau
Inutile de sattarder trop en dtail sur cette partie, les mcanismes et tests raliser sont identiques ce que lon
trouve dans des situations de tests dintrusions classiques.
On recherchera la transmission dinformations en clair,
quels sont les serveurs destinataires, les mcanismes de
scurisation et si ces derniers sont correctement dploys
(certificate pinning par exemple), etc.
En bref, sortez votre proxy intrusif et appliquez votre mthodologie Web habituelle !

> INFO
Certificate pinning

Le Certificate Pinning , ou pinglage de certificat en


franais, est une mthode de validation du certificat du
serveur diffrente de celle habituellement utilise dans
le cadre de connexion SSL/TLS. Au lieu de partir du certificat du serveur et de remonter la chane de certification
jusqu un certificat racine de confiance, lapplication ne
contrle que le certificat du serveur. Cette mthode prsente lavantage de ne plus dpendre ni du systme (il
est possible dy ajouter des certificats de confiance), ni
des diteurs de certificats pour sassurer que le certificat
prsent est le bon.

Rien de complexe dans son utilisation ni dans la synthse


des informations rcupres, ce qui permet de gagner un
temps prcieux. Cuckoo et son extension ddie Android
peuvent galement apporter un gain dinformation complmentaire (cf. ActuScu prcdent - Ransomwares).
Mais il est galement possible de crer son propre outil.
Trois tapes suffisent pour se rapprocher de Droidbox :

+rcupration des sources Android ;


ajout de mcanismes de logs et/ou outils danalyse cus+
tom ;
cration de son propre fichier img que lon utilisera lors
+
de lmulation.
Bien que simples sur le papier, ces tapes peuvent paratre
fastidieuses, mais loutil dploy permettra de gagner un
temps prcieux.

Cette mthode de contrle du certificat du serveur peut


tre implmente de plusieurs manires :

+Contrler le certificat lui-mme ;


+Contrler la clef publique du certificat ;
Alternativement, sassurer que le certificat du serveur
+
est bien sign par un certificat donn (dans ce cas, on
pin le certificat signataire).

Comportement de lapplication
Pour cette partie, lutilisation dune sandbox offre une
solution en parfaite adquation avec les besoins du pentest.
Lobjectif est ici de rcuprer le bruit gnr par lapplication audite partir dune image systme modifie. ce
titre, Droidbox savre tre un outil plutt complet.

Lillustration ci-dessus reflte des informations provenant


dune application volontairement vulnrable (GoatDroid/
FourGoats).
On rcuprera donc :
des informations daccs en lecture / criture aux fi+
chiers ;
des informations sur les communications rseau en+
trantes / sortantes ;
+des informations sur les appels / SMS ;
+des informations sur les permissions ;
des informations sur les broadcast receivers , ser+
vices, etc.

Le code en python se veut trs simple. Il est donc ais de le


modifier selon les besoins.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

17

Tests dintrusion Android

Debug / Logging
On profitera de loccasion pour parler de quelques erreurs.
titre dexemple, loubli de certains messages dans les
journaux dvnements des applications (du simple token
de passage dans une fonction, laffichage dun mot de
passe en clair, en passant par la requte SQL ralise). Aucun point nest ngliger, mme ce qui pourrait sembler le
plus logique.
Une coquille peut trs vite simmiscer dans le processus de
dveloppement. En parallle on retrouvera donc ltude /
le suivi des logs renvoys et la vrification de la prsence
ou non du mode debuggable (cf. android:debuggable).
Le prcieux logcat auquel on appliquera des filtres permettra de se focaliser sur lapplication et ses interactions (sans
omettre de conserver loutput, il est parfois utile de raliser
une recherche ultrieure !). On pourra galement rcuprer
les vnements systme et tout ce qui incombe au systme
dexploitation comme aux applications.

Exemple pour rcuprer les logs dune application spcifique :


adb logcat <package name>:<log level> *:S
Si lon complte cette analyse avec les informations de
debug, le comportement de lapplication devrait paraitre
beaucoup plus vident.
Nous pouvons donc voquer Dalvik Debug Monitor Server
(DDMS) / Android Device Monitor qui est linterface de debug et de monitoring incluse avec le SDK. Elle permet dobserver lutilisation du tas, suivre les allocations mmoire,
examiner les diffrents threads, profiler les fonctions / mthodes, suivre le trafic, les logs, etc.
Des fonctions dmulations sont galement prsentes afin
de simuler des appels, SMS, golocalisation, etc. Il sagit
donc dun outil standalone assez complet, MAIS relativement lourd.

Liste des niveaux de logs :

+V Verbose (lowest priority) ;


+D Debug ;
+I Info ;
+W Warning ;
+E Error ;
+F Fatal ;
+S Silent (highest priority).

Une fois encore il sagira dune question de choix, les gots


et les couleurs ne se discutent pas. Mais dans le cadre du
pentest, il est souvent prfrable dutiliser des outils qui
ne font que ce quon leur demande plutt que de sortir un
tank pour tuer une pauvre mouche. Accessoirement il est
bien plus rigolo de jouer avec des lignes de code que de
lourdes IHM !

18
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

>>> Bonus #2 : lanalyse dynamique du pauvre


Il est vrai quil existe prsent des outils plus ou moins performants pour raliser des oprations danalyse dynamique sur les
applications Android. Mais si lon souhaite faire ces oprations manuellement, dans le cas de tests sur un appareil physique
par exemple, il est toujours possible de sen sortir avec un shell et un petit peu dingniosit.
Si lon a suivi les oprations dcrites dans lencart prcdent, (Bonus #1), on dispose dores et dj de busybox, et donc des
outils Unix les plus courants. On commence donc par crer un fichier de rfrence sur la carte SD. Sa date de cration servira
de timestamp de rfrence.

Installons notre application via adb :

Il suffit alors dinvoquer une formule magique shell pour obtenir la liste des fichiers modifis depuis linstant o nous avons
cr notre timestamp (en excluant /proc, /dev et /sys bien sr) :
find / \( -type f -a -newer /mnt/sdcard/timestamp \) -o -type d -a \( -name dev -o -name proc -o -name sys \) -prune
| grep -v -e ^/dev$ -e ^/proc$ -e ^/sys$

On constate que lapplication (fichier APK) a bien t dpose dans /data/app, et divers fichiers systme ont t mis jour.
On peut alors mettre jour notre timestamp (touch /mnt/sdcard/timestamp), jouer un peu avec lapplication, puis relancer
notre incantation. Il est ainsi possible de facilement traquer les oprations effectues par une application sur le systme de
fichiers :

19
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Tests dintrusion Android

Injections de code
Tout comme dans le cadre dune application Web, on sintressera aux lacunes en termes de filtrage des entres.
Le changement de support nempchant pas les classiques,
on se penchera sur les XSS (Cross Site Scripting) ciblant les
composants WebView (permettant dafficher des pages
Web dans une Activity), la gestion du stockage des donnes donc les injections SQL (prfrences, configuration,
donnes applicatives, etc.), etc. Chaque input peut tre un
point dentre pour peu que des impairs aient t commis
durant le dveloppement.
Concernant les injections SQL, il faudra bien distinguer
celles qui impacteront une base de donnes distante, de
celles touchant une base SQLite locale. La criticit sera
pondrer avec limpact mtier occasionn par linjection.
En dehors des inputs, dautres vecteurs peuvent galement
tre utiliss si lapplication en question fait appel des
composants externes et quelle ne vrifie pas les donnes
quelle utilise (fichiers, contacts, SMS, mails, contenu applicatif, RSS, etc.). Le primtre peut donc savrer relativement large et il est parfois complexe dnumrer tous les
vecteurs de compromission.
IPC
Enfin, nous nous intresserons aux IPC non scurises notamment les mcanismes d intents qui permettent aux
applications de communiquer et dchanger des donnes
entre elles. En soi il ne sagit ni plus ni moins que dun
simple message .
Les outils am / Intent Fuzzer / Intent Sniffer / Drozer offriront des solutions en adquation avec la majorit des cas
rencontrs.

Que peut faire concrtement une application malveillante


ou spcialement conue avec les intents dune application dont les permissions sont mal gres ?
Intercepter / rcuprer des messages qui auraient d
+
tre chiffrs et donc qui contiennent des informations
juges sensibles ;

+Altrer le contenu dun message son avantage ;


Envoyer des messages afin de dtourner le fonction+
nement attendu de lapplication et donc de rcuprer des
informations.

Enfin, nous nous intresserons


aux IPC non scurises notamment
les mcanismes d intents
qui permettent aux applications
de communiquer et dchanger des
donnes entre elles...
Il est impossible dtre 100% exhaustif dans le cadre dun
article gnraliste. Mais les contrles raliss sur lensemble des points prcdemment cits permettront davoir
un bon aperu du niveau de scurit global de lapplication
audite.
titre indicatif, dautres outils dont nous avons ici fait abstraction peuvent tre utiliss. Ces derniers permettent de
raliser des tests plus pousss ( hooks , etc.), comme
cydia ou encore xposed. Il peut galement tre intressant
dans certaines circonstances de dbugguer le bytecode
smali.

am est un outil en ligne de commande permettant de diffuser des intents , des services, Activities , etc. On
profitera donc de ce dernier afin de tester et / ou daltrer
le comportement normal de lapplication (si les mcanismes ne sont pas bien implments). Afin de comprendre
son utilisation, il est conseill de bien regarder ce qui se
passe dans les journaux dvnements et de vrifier les
informations renseignes dans le fichier manifest.xml de
lapplication.

20

Intent Fuzzer et Intent Sniffer sont des outils qui commencent dater. On pourra nanmoins sinspirer de leurs
concepts afin de tester les Broadcast Receivers , Services et autres Activities .
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

>Rtroingnierie
tests dintrusion

applique

aux

Appliquer ct serveur les mmes contrles que pour


+
une application Web classique (injection SQL, CSRF, scurisation des fonctions dupload, etc.) ;

Lors de la ralisation dun test dintrusion sur une application Android, il arrive que des mcanismes applicatifs perturbent ou empchent certains tests :

+Contrles SSL stricts / Certificate pinning ;


+Contrles de scurit client ;
+Oprations intraables dynamiquement ;
+etc.
Dans ces situations, il peut tre intressant deffectuer des
oprations de rtroingnierie sur les applications pour comprendre le fonctionnement de ces mcanismes, voire de les
patcher afin de contourner un blocage ou insrer des
fonctions permettant de tracer les actions effectues.
La procdure mettre en uvre est relativement triviale :
Dfinir lopration raliser (patcher un contrle, ins+
rer un morceau de code, etc.) ;
Dcompiler le code JAVA afin dobtenir une bonne visi+
bilit sur lendroit o appliquer cette modification du code ;
+Dsassembler lapplication vers son bytecode smali ;
+Insrer le code smali ;
+Recompiler et re-signer lapplication ;
+Profit.

Obfusquer le code Android avec des outils tels que Pro+


guard, intgr au sein du SDK Android.

Rfrences
https://www.owasp.org/index.php/OWASP_Mobile_Se+
curity_Project
+http://oasam.org/
https://developer.android.com/google/play/billing/bil+
ling_best_practices.html
https://developer.android.com/about/dashboards/in+
dex.html
+https://github.com/pxb1988/dex2jar
http://www.netmite.com/android/mydroid/dalvik/
+
docs/dexopt.html
https://www.quora.com/What-are-the-technical-de+
tails-of-the-Android-ART-runtime-introduced-in-Android-4-4
+http://varaneckas.com/jad/
+http://jd.benow.ca/

Lencart (Bonus #3) prsente un exemple de patching


dun contrle de scurit. Mais il est tout fait possible de
raliser des oprations similaires pour afficher au sein du
journal dvnements (logcat) toute criture ou ouverture
de fichiers sur le systme de fichier, rediriger des flux ou
supprimer la vrification des certificats SSL par exemple.

> Recommandations
la suite dun test dintrusion Android, ce sont souvent les
mmes points faibles qui sont points du doigt, alors que
des actions peu complexes permettraient dassurer un niveau minimum. Nous vous proposons donc quelques Quick
Wins, la fois simples mettre en uvre et relevant le
niveau de scurit de faon notable :
Assurer le chiffrement des communications (SSL/TLS,
+
certificate-pinning ) et des donnes stockes localement;

Ne jamais effectuer de contrle client lorsquils peuvent


+
tre effectus par le serveur ;
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

21

>>> Bonus #3 : exemple de contournement de contrle local


Dans le cas prsent ici, lapplication audite permet ses utilisateurs de tlcharger des donnes distantes, de les diter puis
de synchroniser les changements avec le serveur.
Lors de sa premire authentification auprs du serveur, lapplication demande
lutilisateur de dfinir un code PIN distant. Ainsi lutilisateur na pas fournir
ses identifiants chaque fois quil dsire utiliser lapplication. Ce mcanisme
prsente galement lavantage de permettre ldition des donnes en mode
hors connexion puis de les synchroniser.
Ainsi, lors des phases dauthentification suivantes, lapplication rclame ce PIN
avant toute interaction (on pourrait dailleurs se pencher sur la manire dont
celui-ci est stock sur le terminal...).
Par nature, ce contrle de mot de passe est effectu localement par lapplication
et peut donc tre contourn de deux manires :

+En modifiant dynamiquement le comportement de lapplication (complexe) ;


+En patchant ce contrle dans le code de lapplication (facile).
Cest cette deuxime mthode que nous avons privilgie, car elle nous semblait la plus simple et la plus rapide mettre en uvre.
La premire tape consiste rechercher lemplacement dans le code o est effectu ce contrle. Pour cela, avant de se plonger
dans le bytecode qui sera plus difficile analyser et interprter, on peut procder la dcompilation de lapplication. Cette
opration permettra dobtenir un pseudo-code Java facile lire, nous permettant de prendre note des noms des classes, fonctions ou mthodes patcher .
On commence donc par transformer notre application au format APK en un fichier JAR laide de la suite de script dex2jar.
Cette archive JAR peut alors tre dcompile, avec jd-gui par exemple, mais jad ou un autre dcompilateur fiable ferait laffaire:

En effectuant une recherche dans le code, la chane de caractres correspondant au message derreur, on retrouve en quelques
secondes la mthode appele lors de la saisie du code PIN (clicSurBoutonGauche). Ici, la chane en question nest pas dfinie
comme ressource externe, ce qui permettrait de fournir des versions diffrentes en fonction de la langue du systme par
exemple, ce qui faciliterait la tche.
Le cas chant, il suffirait de rechercher cette chane dans les ressources, puis de chercher les mthodes y faisant appel.

22
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

On constate que la fonction assurant le contrle du PIN est particulirement triviale :

+La mthode clicSurBoutonGauche rcupre le PIN saisi par lutilisateur ;


+Il est compar avec la valeur stocke au sein dune base SQLite (accessoirement, en clair) ;
+Si celui-ci est valide, lapplication prsente la fentre du menu principal (mWD_MenuP2) ;
+Sil nest pas valide, on affiche un message derreur : Le mot de passe saisi nest pas correct .
Il suffirait donc de supprimer le saut conditionnel et de sassurer que lapplication ouvre toujours la fentre du menu principal
pour dfaire ce contrle de scurit.
ce stade, il est (quasiment) impossible de modifier directement le code Java et de recompiler lapplication pour en
obtenir une nouvelle fonctionnelle. En effet, il est trs rare que le dcompilateur parvienne dcompiler la totalit du
code, et encore plus rare que le code dcompil soit recompilable sans problme. On passera donc par le bytecode
smali.
Pour cela, dsassemblons lapplication vers le bytecode smali avec loutil apktool et cherchons notre mthode :

Dans ce cas prcis, le patch est excessivement simple : il suffit de supprimer purement et simplement le saut conditionnel pour
excuter le code prvu en cas de succs. La prsence dune instruction return la fin de ces instructions assure que le code
prvu en cas dchec ne sera, lui, jamais appel.

23
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Tests dintrusion Android

On peut alors recompiler lapplication avec apktool :

Lapplication doit cependant tre signe pour que le systme Android accepte de linstaller, mme si lon utilise un terminal
virtuel (mulateur). Si vous ne disposez pas encore dune clef ddie, cest le moment de la crer :

Les deux outils utiliss pour ces oprations, keytool et jarsigner, sont fournis avec le JDK.

24
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

On dploie lapplication sur notre terminal laide dadb. La saisie de nimporte quel code PIN permet alors daccder sans
restriction au menu de lapplication !

25
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

> Factory Reset sous Android...


Sans tonnement, nos tlphones contiennent aujourdhui une multitude de donnes sensibles : e-mails, comptes de rseaux sociaux, SMS, MMS, accs VPN, applications mtiers et voire mme nos comptes bancaires.
Dans de nombreux cas, vous ferez appel la rinitialisation de votre appareil pour viter que ces donnes ne puissent tre
rcupres. On peut imaginer que cela se produise lorsquun terminal sapprte tre revendu ou encore lors de sa perte
ou vol. Mais lheure o de plus en plus dentreprises prennent conscience de limportance de leurs donnes et de lintrt
de les protger, des chercheurs de lUniversit de Cambridge se sont rendu compte que la suppression des donnes propose sur les terminaux Android savrait parfois inefficace.
Dans cet article, nous testerons la fonction de rinitialisation propose au sein des systmes dexploitation Android Jelly
Bean (4.1.2) et Lollipop (5.1.1) afin de valider si les donnes peuvent tre rcupres ou non par un individu ayant un accs
physique au terminal.

Par Simon BUCQUET

Krlis Dambrns

Rinitialisation sous
Android

26

Fonctionnement de la rinitialisation dun terminal

tions de donnes dans les versions 2.3.x dAndroid ;

Afin de mieux comprendre comment fonctionne la rinitialisation du tlphone, nous allons ici prsenter une partie
des recherches [PAPERS] effectues par des doctorants de
lUniversit de Cambridge et de lU.S. Naval Postgraduate
School sur leffacement des donnes sous Android.

Labsence de pilote pour une suppression scurise sur


+
les nouvelles partitions jusqu la version 4.3 dAndroid ;
Les pilotes fournis par les fabricants lors de mises jour
+
systme nimplmentent pas rigoureusement cette fonc-

Leur tude rvle cinq points reprsentant aujourdhui les


vulnrabilits majeures qui permettent la rcupration de
donnes sur ces appareils :

Labsence de fonctionnalit assurant une suppression


+
totale la fois des donnes de la carte SD interne ainsi

Labsence de la fonctionnalit de suppression des parti-

tion deffacement scuris (voir plus bas) ;

que celles de la carte externe pour toutes les versions du


systme dexploitation ;

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Mthodologie

Pour comprendre comment ces vulnrabilits impactent


leffacement de nos donnes, faisons un retour en arrire
depuis les premires versions du systme dexploitation.

+Un Nexus S (Android 4.1.2) ;


+Un Nexus 5 (Android 5.1.1).

Une faiblesse est prsente dans le chiffrement du tlphone jusqu la version 4.4 (KitKat) dAndroid.

La mmoire non volatile depuis les dbuts dAndroid utilise une mmoire Flash dont la gestion tait assure par
le systme de fichiers yaffs2 jusqu Gingerbread (version
2.3.x), elle intgrait directement la correction derreurs et
luniformisation dusure ncessaire au bon fonctionnement
de ce type de mmoire.

Nous avons pu exprimenter la rcupration de donnes


sur deux tlphones :

Prrequis :
Afin de pouvoir rcuprer lintgralit de la mmoire interne des tlphones, il est impratif que lon puisse obtenir les droits administrateur sur ces derniers. Il ne serait pas
possible daccder directement aux blocs de donnes du
tlphone dans le cas contraire.
Cependant, il ne sagit pas l dune tape bloquante pour
lattaquant. En effet, il est simple de trouver une documentation adapte chaque tlphone pour dbloquer ces
droits (jailbreak) :

Fig 1 Liaison des blocs logiques avec yaffs2


Mais depuis larrive de Gingerbread, la majorit des
quipements dispose de cartes multimdia embarques
(eMMC). La gestion de la mmoire flash est gre par la
puce elle-mme. LOS dispose alors directement dun priphrique de type bloc o il peut mettre en place tout autre
systme de fichiers tel que Ext4, sans que ce dernier ne
doive grer luniformisation dusure et la correction derreurs.
Un premier problme avec ce type de carte est que, dans
un souci de performance, lorsque des donnes sont modifies, elles sont enregistres dans de nouveaux blocs. Les
anciennes donnes peuvent tre simplement ajoutes
une liste de blocs effacer , autrement dit pouvant tre
rcris de la mme faon.

Les puces peuvent avoir t conues


avant la norme eMMC ou
encore leur implmentation peut varier
dune version une autre et dun
constructeur un autre
Pour supprimer un bloc de donnes de faon scurise, rappelons quil est impratif que chaque bit reprsentant ce
bloc soit modifi et quil nen existe pas de copie (luniformisation de lusure cause ce type de cas).
La norme eMMC depuis sa version 4.4 propose une instruction permettant cette suppression scurise : BLKSECDISCARD[2]. Cependant des puces peuvent avoir t conues
avant cette norme ou encore leur implmentation peut
varier dune version une autre et dun constructeur un
autre. Cest cause de ces manquements quil a t possible dexploiter les donnes de nombreux terminaux Android.

lutilitaire adb et les pilotes permettant la communica+


tion avec le priphrique sont tous deux inclus dans le SDK
dAndroid ;

lutilitaire dd et nc pour copier directement les don+


nes au travers dadb sont tous deux disponibles au sein
de busybox (une version est disponible pour arm : http://
www.busybox.net/downloads/binaries/latest/).

Aprs avoir root le tlphone, nous avons suivi la mthodologie suivante pour les deux systmes dexploitation
cibls :

+Une premire rinitialisation du tlphone ;


La mise en place des donnes rcuprer (email,
+
SMS, Whatsapp, etc.) ;
+La ralisation dune premire image de rfrence ;
La rinitialisation de lappareil (avec, si disponible, lop+
tion effacement de la carte SD) ;
+La ralisation de la seconde image.
Lappareil est rinitialis dans un premier temps pour permettre linstallation dun nouvel environnement dont on
cherchera par la suite rcuprer les informations.
Sont alors installes les applications suivantes : Facebook et
Whatsapp. Des comptes sont crs pour chacune des applications ainsi quun compte Google, associ au tlphone.
Des donnes sont ensuite ajoutes au tlphone :

+Une vido ;
+Des photos ;
+Des changes par SMS, Facebook, Whatsapp, Gmail.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

27

Rinitialisation sous Android

En analysant la table de montage et le script dinitialisation


init.rc prsent la racine du tlphone, il est possible de
comprendre comment est partitionne et monte la mmoire du tlphone.

Le systme de fichiers de la partition userdata tant en


Ext4, on peut facilement monter limage (Fig 4) dans un
systme Linux et consulter ses donnes (Fig 5).

Fig 4 Montage de la partition userdata


Fig 2 Les partitions et points de montage associs trouvs sur le Nexus S
Le bloc, ici : mmcblk0 (Fig 2), contient les autres partitions listes et nous permet de rcuprer lensemble des
donnes souhaites. savoir : la partition userdata, qui
contient les donnes des applications et sdcard contenant
les donnes de lutilisateur.
On procde alors la ralisation de la premire image qui
nous servira de point de rfrence pour ltape suivante.
Pour effectuer une image, nous obtenons les donnes du
terminal Android laide de lutilitaire dd. Ces donnes sont
ensuite transfres sur notre poste au travers dun pont TCP
sur le port 7623 dont la communication est assure par
lutilitaire netcat.

Le rsultat pour le Nexus S


est sans appel : lintgralit
des donnes que lon souhaitait
rcuprer a pu tre retrouve

Fig 5 Accs direct la base de donnes des SMS et MMS


depuis limage
Aprs avoir vrifi la prsence des donnes, on se lance
alors dans la rinitialisation complte du tlphone. Cette
opration peut tre ralise partir des Paramtres du
tlphone (Ici : Paramtres/Sauvegarde et rinitialiser/
Rtablir param. par dfaut et cliquez sur Rinitialiser le
tlphone puis Supprimer tout ).

Ainsi (Fig 3), une premire commande permet de crer


sur le tlphone une socket en coute sur le port 7623 en
attente dune connexion afin de transfrer la sortie de la
commande dd.
Lutilitaire adb nous permet de rediriger un port local vers le
terminal, il nous suffira alors, avec une dernire commande,
de se connecter sur ce port et de rcuprer le flux entrant
qui contiendra les donnes extraites de notre tlphone.

28

Fig 3 Ralisation de limage du bloc mmcblk0

Fig 6 Rinitialisation du tlphone

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Recherche des donnes : Nexus S

Ainsi nous avons pu rcuprer :

Ds lors que la rinitialisation a t effectue, nous pouvons alors tenter de rcuprer les donnes effaces. Des
outils comme scalpel ou encore Photorec permettent de
rechercher un format de fichiers spcifique et de retrouver
son contenu mme en partie fragment. Nous utiliserons
ici Photorec pour sa simplicit dutilisation et son nombre
important de dfinitions de formats de fichiers [3].

Les changes qui ont pu tre raliss avec les diffrentes


+
applications (SMS, email, chat Facebook et Whatsapp) ;
Les photos et vidos prisent avant notre dernire rini+
tialisation ;
+Des jetons dauthentification de diffrents services.

Les types de fichiers que lon recherche principalement ici


sont : SQLite, XML, JPG, PNG.

Il est noter que dans ce cas le nombre de rinitialisations


importe peu, seule une petite partie de la mmoire est rcrite, le reste de la mmoire nest pas purg. Il nous a ainsi
t possible de retrouver de nombreuses donnes provenant mme danciens propritaires du tlphone !
Recherche des donnes : Nexus 5

Fig 7 Analyse de lintgralit de limage


Le rsultat pour le Nexus S est sans appel : lintgralit des
donnes que lon souhaitait rcuprer a pu tre retrouve.

Lopration a t rpte dans les mmes conditions avec


le second tlphone, plus rcent : un Nexus 5 utilisant la
version 5.1.1 dAndroid.
Le rsultat est bien diffrent de celui obtenu prcdemment, aucune donne na pu tre rcupre.
Pour tre sr que ce rsultat ntait pas li une erreur de
notre part ou dun dfaut dans notre mthodologie, lopration a t rpte en plaant dans les partitions data et
sdcard un motif binaire rpt, occupant la quasi-totalit de
lespace disponible.
Et comme nous lattendions, aucune trace de ce motif
mme fragment ou partiel ne ft retrouve sur la seconde
image de ce Nexus 5.
On peut donc penser que le pilote de la carte multimdia
est jour et implmente rigoureusement BLKSECDISCARD.

Fig 8 Exemple de rsultats avec Photorec sur limage du


Nexus S

> INFO
Le chiffrement par dfaut, abandonn par Google

Lanne dernire, Google annonait avec larrive de Lollipop [4], le chiffrement par dfaut des terminaux Android
pour faire suite lannonce dApple dans la mme voie.
Cependant, pour des raisons de performances, seule une
recommandation a t faite aux constructeurs.

Fig 9 Rcupration de la base accounts.db dAndroid

Car, si depuis des annes les produits iPhone possdent


un coprocesseur supportant lacclration de chiffrement
et dchiffrement AES, les terminaux fonctionnant sous Android ne possdent pas tous ce type dacclration. Dans
certains cas, alors mme que la puce supporterait une
acclration matrielle, les pilotes dAndroid ne permettaient pas cette fonctionnalit et utilisaient un chiffrement
logiciel qui, tant excessivement lent, forait lutilisateur
finalement dsactiver cette option (sil en avait la possibilit [5]).

Fig 10 Des jetons dauthentification Facebook sont aussi


retrouvs
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

29

Rinitialisation sous Android

Conclusion
Notre panel de tests ayant t assez restreint pour cet
article, nous navons pas pu tester sur dautres matriels
rcents si des problmes dimplmentation et de pilotes
taient encore prsents. Google a clairement annonc faire
un effort pour contrer cela et la recommandation faite aux
constructeurs de chiffrer par dfaut les terminaux va en ce
sens. Car mme sil avait t possible de rcuprer partiellement des donnes chiffres, si la cl de chiffrement
a elle, t correctement efface, obtenir des rsultats ne
serait quhypothtique.

http://www.ru.nl/publish/pages/578936/scriptie_tim_
+
cooijmans.pdf
Security Analysis of Android Factory Resets
+
http://www.cl.cam.ac.uk/~rja14/Papers/fr_most15.pdf
Effects of the factory reset on mobile devices
+
http://ojs.jdfsl.org/index.php/jdfsl/article/view/280/225

Il est donc prfrable dactiver le chiffrement des terminaux avec un mot de passe fort, comme le proposent aussi
certains MDM. Le simple chiffrement du terminal sans mot
de passe ou encore avec un simple code PIN annule tout
intrt du chiffrement puisque la cl peut tre retrouve
au sein de la mmoire de lappareil [6] ou le code PIN facilement devin. Mais comme nous avons pu le montrer,
tous les terminaux ont des comportements diffrents en
fonction du constructeur et de la version dAndroid utilise.
Ces donnes (accs VPN, accs la messagerie, applications mtier) sont par nature des ressources sensibles, et
les fournir sans distinction tous les profils dutilisateurs
augmente en effet le risque de les voir compromises. Il
convient donc didentifier les populations ncessitant ce
type daccs et de sassurer que seules celles-ci y ont accs.
Enfin, il faut sassurer de faire les bons choix en terme de
matriel. Les terminaux mobiles et leur systme dexploitation doivent tre suffisamment rcents pour supporter les
mthodes deffacement scuris recommandes par Google [2].
Rfrences

30

https://android.googlesource.com/platform/system/
+
extras/+/master/ext4_utils/wipe.c
https://source.android.com/devices/tech/security/im+
plement.html
http://www.cgsecurity.org/wiki/File_Formats_Recove+
red_By_PhotoRec
http://www.theregister.co.uk/2015/03/02/google_
+
encrypted_by_default/
https://source.android.com/devices/tech/security/
+
encryption/
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

> Confrence : SSTIC 2015

SSTIC 2015
par David WEBER et Thomas LIAIGRE

> Jour 1

Les techniques de fuzzing ralises par Google lors des


+
phases de tests afin didentifier le plus grand nombre de

Opening Keynote
Julien Tinns

vulnrabilits mmoires avant release ;

Slides
+
h t t p s : // w w w. s s t i c . o r g / m e d i a / S S T I C 2 0 1 5 / S S TIC-actes/2015-ouverture/SSTIC2015-Slides-2015-ouverture-tinnes.pdf
Julien Tinns est ingnieur chez Google et travaille sur le
navigateur Google Chromium.
Il dtaille dans cette prsentation les choix technologiques
raliss par les quipes de Chromium afin de scuriser le
navigateur. Il a par exemple expliqu et dtaill les choix
suivants :

Le programme de Bug Bounty afin dobtenir des retours


+
de chercheurs aprs la publication du navigateur ;
Le mthodes de mises jour optimises afin de d+
ployer rapidement et de manire lgre les fichiers du
programme.

Lobjectif, dmontr par Julien, est de multiplier les mesures prises afin daugmenter le niveau de scurit gnral. Il dmontre de plus, tout au long de la confrence, que
les mesures prises permettent dallier scurit et qualit
dans le cadre du dveloppement du navigateur.

Lisolation des processus et des threads au sein de


+
chaque onglet afin de restreindre les impacts en cas de
compromission dun lment du navigateur ;

+La communication des lments isols via IPC ;


Les mthodes de sandboxing du navigateur sur les dif+
frents systmes ;
Le renforcement des mcanismes de gestion de la m+
moire classique (ASLR, NX, stack cookies) par lutilisation
dun allocateur mmoire strict (chaque partition mmoire
est ddie un objet de type fixe) ;

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

31

PICON : Control Flow Integrity on LLVM IR


Arnaud Fontaine, Pierre Chifflier, Thomas Coudray

Triton Framework dexcution concolique


Florent Saudel, Jonathan Salwan

Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/tri-

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/tri-

Depuis les annes 90, de nombreuses vulnrabilits exploitent les techniques de manipulation de la mmoire
dun programme (les fameux buffer-overflow ). Cellesci permettent un attaquant de modifier le droulement
normal dun programme afin de lui faire excuter un
comportement divergent (excution dun Shell, ouverture
de connexion vers lextrieur, etc.).

On reste dans le domaine de lanalyse mmoire des applications avec Florent et Jonathan.
Triton est un framework dexcution concolique permettant
aux chercheurs de raliser des oprations de surveillance et
de manipulation sur la mmoire RAM dun processus.

control_flow_integrity_on_llvm_ir/SSTIC2015-Slidescontrol_flow_integrity_on_llvm_ir-fontaine_chifflier_coudray.pdf

control_flow_integrity_on_llvm_ir/SSTIC2015-Article-control_flow_integrity_on_llvm_ir-fontaine_chifflier_
coudray_esfrDAl.pdf

Arnaud, Pierre et Thomas ont donc mis en uvre un outil


permettant la vrification de lintgrit du graphe de flot
de contrle dun programme. Sous ces termes un peu abstraits se cache un concept simple : sassurer que les actions ralises par un programme sont celles dfinies par
le dveloppeur, et non pas le rsultat dune injection par
un attaquant.
Techniquement, cela se fait par lajout dinstructions au sein
du code du programme. Par exemple, lorsque la fonction
main appelle la fonction foo , PICON ajoute des instructions au sein de :
La fonction main pour dire quon va appeler foo
+
(avant lappel classique la fonction) ;
La fonction foo pour indiquer quon va revenir dans la
+
main (avant le retour classique).

ton_dynamic_symbolic_execution_and_runtime_anal/SSTIC2015-Slides-triton_dynamic_symbolic_execution_and_
runtime_analysis-saudel_salwan.pdf

ton_dynamic_symbolic_execution_and_runtime_anal/SSTIC2015-Article-triton_dynamic_symbolic_execution_and_
runtime_analysis-saudel_salwan.pdf

Ces fonctionnalits permettent ainsi de surveiller comment


une variable dfinie par un utilisateur se propage au sein
dun programme et comment elle va influencer le fonctionnement de lapplication (dcision dun saut ou non). Cela
permet aux chercheurs de comprendre comment atteindre
un tat spcifique du programme, notamment afin dexploiter certaines vulnrabilits ne se produisant que dans
des cas prcis.

Triton est un framework


dexcution concolique permettant
aux chercheurs de raliser
des oprations de surveillance
et de manipulation sur la mmoire RAM dun
processus.
Par ailleurs, un systme de snapshot permet de revenir
un tat prcdent dans lexcution dun programme, par
exemple pour essayer dinjecter des valeurs diffrentes et
constater les diffrences de comportement.
REbus : un bus de communication facilitant la coopration entre outils danalyse de scurit
Philippe Biondi, Sarah Zennou, Xavier Mehrenberger
Tout consultant en scurit a dj t confront des
tches consquentes et rbarbatives. REbus se veut un couteau suisse permettant lautomatisation de ces tches.

Cette surcharge permet de surveiller que le droulement


du programme est conforme celui attendu par le dveloppeur (si une des tapes attendues, notamment dans la
phase de retour, ne se droule pas, le programme est tu).

32

Il sagit concrtement dun bus de communication entre diffrents outils (nomms agents). laide dune smantique
propre REbus, lauditeur peut automatiser une tche ou
une suite de tches au travers de ces agents.
Des dmonstrations de cette smantique ont t ralises
par les speakers sur des cas concrets (extraction darchives
suivie du calcul du condensat des fichiers extraits, corrlation des imports entre diffrents excutables).

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

SSTIC

Airbus a dj implment un bon nombre dagents (analyse de fichiers, dcouverte de services rseau, etc.). Par
ailleurs, larchitecture se veut modulaire afin que des
agents supplmentaires puissent tre intgrs facilement
lorsquun nouveau besoin se prsente.
Stratgies de dfense et dattaque : le cas des consoles
de jeux
Mathieu Renard, Ryad Benadjila
Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
stratgies_de_dfense_et_dattaque__le_cas_des_consol/
SSTIC2015-Article-stratgies_de_dfense_et_dattaque__le_
cas_des_consoles_de_jeux-renard_benadjila.pdf
Depuis plusieurs annes, la scurit est devenue un enjeu
conomique pour les diteurs de consoles de jeux. Cette
guerre entre diteurs de consoles et pirates a rellement
commenc avec larrive de la PlayStation 1. Durant cette
prsentation, les orateurs ont abord les architectures des
consoles, diffrentes techniques dattaque menes lencontre de ces dernires et les mcanismes de scurit et de
contre-mesures implments, en prenant lexemple de 4
consoles de jeux vido, savoir la PlayStation 1, la Xbox, la
XBox 360 et la PlayStation 3.

Les mcanismes de scurit de la Xbox 360


sont un tout autre niveau : hyperviseur de
confiance, contrle de lintgrit et chiffrement de la RAM, mcanisme anti-downgrade
et signature du code.
Cas de la PlayStation 1 : La premire dition de cette console
de jeux sortie en 1994, nimplmentait aucun mcanisme
de scurit proprement parler. Seul un mcanisme de zonage avait t implment afin de limiter la diffusion des
jeux vido des zones gographiques. En plus de limiter
un jeu vido une zone , cette technique empchait la
copie des jeux. En effet, lID de la zone, grave sur le bord
du CD, tait illisible par les lecteurs de disque classiques et
donc impossible copier. Cest alors que des pirates ont
appliqu lattaque dite de modchip afin de contourner
cette restriction.
La XBox est ne avec de vritables mcanismes de scurit tels que la signature des binaires, la restriction daccs
aux donnes du disque dur lorsque la console est teinte,
le contrle de la chaine de dmarrage, etc. Cependant, les
mcanismes de scurit mis en place ntaient qu leur

balbutiement. Nous retiendrons (par exemple) que pour


des raisons conomiques, Microsoft a choisi de ne pas chiffrer une partie du code excut au dmarrage rendant caduque toute la chaine de confiance de la procdure de boot.
Les mcanismes de scurit de la Xbox 360 sont un tout
autre niveau : hyperviseur de confiance, contrle de lintgrit et chiffrement de la RAM, mcanisme anti-downgrade
et signature du code en sont quelques exemples. Malgr
tous ces efforts, les dfauts qui affectaient la console ont
suffi aux attaquants. Parmi toutes les attaques qui ont t
perptres lencontre de cette dernire, nous noterons
les faiblesses face aux attaques DMA et par faute (cf. Glitch
Attack).
Pour finir, la PlayStation 3 prsente un niveau de scurit
gnral plus faible que celui de la Xbox 360, et ce, malgr le fait quaucune attaque nait t recense au cours
de ses 4 premires annes dexistence. Nous retiendrons
le fait que Sony a pris des risques en choisissant de permettre lutilisation dun OS alternatif avant de supprimer
cette fonctionnalit, ainsi quen choisissant de se reposer
sur des mcanismes cryptographiques mal implments.
La cryptographie est un outil, pas une finalit la scurit.
Abyme : un voyage au cur des hyperviseurs rcursifs
Benot Morgan, Eric Alata, Guillaume Averlant, Vincent Nicomette
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

abyme__un_voyage_au_coeur_des_hyperviseurs_recursi/
SSTIC2015-Slides-abyme__un_voyage_au_coeur_des_hyperviseurs_recursifs-morgan_alata_averlant_nicomette.pdf
Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

abyme__un_voyage_au_coeur_des_hyperviseurs_recursi/
SSTIC2015-Article-abyme__un_voyage_au_coeur_des_hyperviseurs_recursifs-morgan_alata_averlant_nicomette.pdf
Durant cette confrence, Benoit Morgan et Guillaume Averlant se sont attaqus au problme suivant des Hyperviseurs
monolithiques : toutes les fonctions noyaux dun hyperviseur (gestion des priphriques, scheduling, etc.) sexcutent avec le mme niveau de privilges. En outre, la prsence dune faille de scurit au sein dune de ces fonctions
peut mener la compromission du systme maitre . Et
pour cause, puisque cette confrence intervient seulement
quelques semaines aprs la publication de la vulnrabilit
baptise VENOM (CVE-2015-3456).
Cest dans ce contexte que les orateurs ont prsent un

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

33

hyperviseur rcursif baptis Abyme, qui offre la possibilit de sparer les fonctions de scurit par couche de
virtualisation. Dans le modle darchitecture prsent, lhyperviseur virtualis avait des privilges rduits par rapport
celui du niveau infrieur. Cette tude intervient dans le
cadre dun projet dinfrastructure cloud scurise.
Les principales limitations lorsquon parle de virtualisation,
ce sont les performances. Afin de pallier cette problmatique, Benoit Morgan et Guillaume Averlant ont cr un
hyperviseur lger qui permet dobtenir des performances
avoisinant celles dun systme non virtualis.

+Comment les cls de chiffrement sont-elles gnres ?


+O sont-elles stockes et sous quelle forme ?
+Est-il possible de bruteforcer le PIN ?
+Quest-ce qui est crit sur le disque par le boitier ?
Quelles informations sont changes entre les micro+
contrleurs du boitier ?
+Peut-on extraire le firmware du boitier ?
Lanalyse du boitier a dmontr que :
Le chiffrement du disque tait indpendant du boitier
+
en lui-mme. En outre, aucun secret dtenu par boitier
nest ncessaire pour (d)chiffrer un disque ;

+Le firwmare du boitier est chiffr ;


Il semblerait que des cls de chiffrement soient crites
+
sur une mmoire flash au moment o le PIN est entr.
Malgr cela, elles restent toujours le facteur limitant. En
effet, bien que les performances soient acceptables pour
quelques niveaux de rcursion, ces dernires se dgradent
exponentiellement lorsque les couches de virtualisation
saccumulent.
Rtroingnierie matrielle pour les reversers logiciels: cas dun disque dur externe chiffr
Joffrey Czarny, Raphal Rigo

Slides
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/hardware_re_for_software_reversers/SSTIC2015-Slides-hardware_re_for_software_reversers-czarny_rigo.pdf

En sappuyant sur ce dernier fait, les orateurs ont russi


obtenir cette donne illgitimement. Cependant, ils nont
malgr tout pas russi dchiffrer le disque.

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/hardware_re_for_software_reversers/SSTIC2015-Article-hardware_re_for_software_reversers-czarny_rigo.pdf
Lobjectif de cette prsentation tait de dmystifier lanalyse matrielle en prsentant la dmarche suivie pour tudier les mcanismes de scurit dun disque dur chiffr.
Afin dillustrer leurs propos par un exemple concret, Joffrey
et Raphal ont choisi de sattaquer au Zalman VE-400 .
Pour rsumer la dmarche prsente, voici les questions
auxquelles les orateurs ont tent de rpondre durant leur
tude :

34

+Les donnes du disque sont-elles bien chiffres ?


Les mcanismes de chiffrement sont-ils correctement
+
implments ?
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

SSTIC

Injection de commandes vocales sur ordiphone


Chaouki Kasmi, Jos Lopes Esteves

RowHammer
Nicolas RUFF

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/injec-

Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

Cette prsentation a galement t prsente lors de HITB


(voir page p51).

La mmoire vive de type DRAM quipe la majorit des machines actuellement sur le march. Ce type de mmoire
allie un prix bon march une conomie dencombrement
physique.

tion_commandes_vocales_ordiphone/SSTIC2015-Article-injection_commandes_vocales_ordiphone-kasmi_lopes-esteves_9giaJ0T.pdf

rowhammer/SSTIC2015-Slides-rowhammer-ruff.pdf

CLIP : une approche pragmatique pour la conception


dun OS scuris
Vincent Strubel
Au cours de cette prsentation, Vincent Strubel, sous-directeur Expertise lAgence nationale de la scurit
des systmes dinformation (ANSSI), a prsent le systme
dexploitation scuris de lANSSI baptis CLIP.

Les rcents travaux de chercheurs


Google parviennent cibler des emplacements de la mmoire pour faire flipper
ce bit
En plus doffrir un socle Linux durci, CLIP permet de travailler
sur deux environnements de travail isols lun de lautre ;
lun des environnements tant plus scuris que lautre.
Lobjectif de cette architecture est de ddier lenvironnement scuris la manipulation de donnes sensibles
et la ralisation de tches dadministration.

Vincent Strubel a conclu cette prsentation en rappelant


que CLIP na pas pour vocation devenir une distribution
scurise du systme Linux. CLIP a pour vocation dtre utilis dans des contextes spcifiques (ex: poste dun administrateur). Nous rappelons que ce systme dexploitation
nest pas disponible publiquement.

Son principal dfaut rside dans la perte de linformation


stocke : chaque bit dinformation est conserv au sein dun
unique condensateur et des effets de bords (courant de
fuite, vnements lectromagntiques) affectent lexactitude de linformation stocke. Ces modifications au sein de
la RAM ntaient jusqualors pas matrises : la perte dun
bit dinformation au sein dun condensateur provenait donc
dun effet de fuite accidentel et ntait pas matrisable par
un attaquant.

Les rcents travaux de chercheurs Google parviennent


cibler des emplacements de la mmoire pour faire flipper ce bit. Il est donc dsormais possible dexcuter des
programmes permettant de modifier la valeur de bits des
endroits cibls de la RAM.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

35

Cela peut ainsi entraner, dans des attaques exploitables,


une lvation de privilges ou des contournements de mcanismes de scurit.
FlexTLS : des prototypes lexploitation de vulnrabilits dans TLS
Benjamin Beurdouche, Jean Karim Zinzindohoue

Alors, comment expliquer la recrudescence de toutes ces


erreurs de dveloppement ? La conception du protocole
nest peut-tre pas la seule source du problme, mais son
manque de clart est certainement un facteur aggravant.
cela viennent sajouter des mauvaises pratiques de dveloppement telles que labsence de tests de non-rgression.

Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/flextls/SSTIC2015-Slides-flextls-beurdouche_zinzindohoue.pdf

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/flextls/SSTIC2015-Article-flextls-beurdouche_zinzindohoue.pdf

Le protocole TLS (Transport Layer Security) est le protocole


le plus utilis pour scuriser les communications travers
internet. Pour autant, les outils qui permettent de manipuler des changes TLS sont rares sur le march.
Cest dans ce contexte que les orateurs ont dvelopp loutil
FlexTLS. Dvelopp en F#, ce dernier permet de raliser et
de manipuler des changes TLS. FlexTLS apparait comme un
couteau suisse pour tester tous les niveaux le protocole
TLS.

Les rcents travaux


de chercheurs Google parviennent
cibler des emplacements de la mmoire
pour faire flipper ce bit. Il est donc dsormais possible dexcuter des programmes
permettant de modifier la valeur de bits
des endroits cibls de la RAM.

Cest dans ce contexte que la version 1.3 du protocole TLS


verra le jour. Toujours en cours de formalisation, cette nouvelle version devrait tirer parti des erreurs passes afin de
proposer une nouvelle version du protocole plus rsistante
face aux attaques (Forward Secrecy, nettoyage de la phase
de ngociation, etc.). Vous noterez lutilisation de la forme
conditionnelle. En effet, le protocole est toujours en cours
de conception et des choix restent faire notamment sur
des problmatiques lies la performance ( 0-RTT ).
Les risques dOpenFlow et du SDN
Maxence Tury
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
risques_openflow_et_sdn/SSTIC2015-Slides-risques_openflow_et_sdn-tury.pdf

> Jour 2

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

SSL/TLS, 3 ans plus tard


Olivier Levillain
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/ssltls_soa_reloaded/SSTIC2015-Slides-ssltls_soa_reloaded-levillain_tvSdxVi.pdf
Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/ssltls_soa_reloaded/SSTIC2015-Article-ssltls_soa_reloaded-levillain_cObDbqp.pdf

36

Depuis les annes 2000, des failles sont rgulirement dcouvertes sur SSL/TLS. Ce constat a t particulirement vrifi ces dernires annes. Toutes les versions du protocole
SSL/TLS ont t impactes par une vulnrabilit. Pire, nous
observons des vulnrabilits du pass rapparaitre. Cest
par exemple le cas de la vulnrabilit GoTo Fail qui avait
dj t mise en vidence en 2008.

risques_openflow_et_sdn/SSTIC2015-Article-risques_openflow_et_sdn-tury.pdf

Le SDN (Software-Defined networking) est un paradigme


de routage. Initialement, dans la construction dune architecture rseau, chaque routeur est autonome et possde
sa propre table de routage. Lutilisation du SDN consiste
centraliser le plan de contrle (informations de routage) au
sein dun contrleur ddi qui propagera le plan de routage
aux diffrents quipements rseau.
Openflow est un protocole de routage utilisant ce paradigme. Apparu en 2009, ce protocole en est aujourdhui
sa version 1.4. La prsentation de Maxence expliquait les
faiblesses de ce protocole.
Le premier problme concerne la confidentialit des
changes, que ce soit entre le contrleur et les quipements de routage ou entre ladministrateur et le contrleur. Les standards prconisent un chiffrement TLS qui nest

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

SSTIC

pas toujours implment dans les conditions relles, ce qui


permet lcoute des identifiants dadministration ou la modification dinformations de routage propages par le point
central.
Dans un second temps, Maxence a nonc diverses possibilits permettant de provoquer un dni de service sur
le contrleur et/ou les quipements de routage. Il est par
exemple possible de saturer le rseau de paquets IP afin de
saturer les capacits de calcul du contrleur ou ses tables
de routages. Par ailleurs, un attaquant peut, dans certaines
conditions, installer un contrleur frauduleux et empcher
la propagation des routes.
Enfin, Maxence a mis en vidence un traitement erratique
des rgles de routage se superposant et pouvant provoquer
des comportements de routage imprvisibles.
Analyse de scurit de technologies propritaires SCADA
Alexandre Gazet, Florent Monjalet, Jean-Baptiste Bdrune
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
analyse_de_scurite_de_technologies_propritaires_sc/SSTIC2015-Slides-analyse_de_scurite_de_technologies_propritaires_scada-gazet_monjalet_bedrune.pdf

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
analyse_de_scurite_de_technologies_propritaires_sc/SSTIC2015-Article-analyse_de_scurite_de_technologies_propritaires_scada-gazet_monjalet_bedrune.pdf

Les 3 orateurs ont ralis une analyse dun systme industriel (PLC) rcent. Durant cette confrence, ils ont prsent
la dmarche suivie et les rsultats obtenus.

Ltude a commenc par une analyse en bote noire du protocole de communication propritaire employ par le PLC.
Trs vite, il est apparu que les donnes changes taient
chiffres. Lanalyse dun client de supervision disponible
sur les systmes Windows a permis de rvler lutilisation
du protocole HMAC SHA-256 . Lanalyse approfondie des
changes ainsi que le dbogage du client de supervision
ont permis de mettre en vidence un dfaut dans le gnrateur de nombres pseudo-alatoires (PRNG).
En effet, ce dernier tait inutilis avec une graine statique.
Ainsi, il tait possible de prdire les valeurs de cl HMAC. En
menant une attaque de bruteforce avec les valeurs des cls
HMAC gnres, les orateurs ont t en mesure de mener
une attaque de MitM. Notons quune fois signale, cette
erreur a rapidement t corrige par lquipementier.
Durant cette tude, une analyse du firmware du PLC a galement t mene. Ce dernier a t rcupr sur le site du
constructeur. Cette dmarche na pour le moment rvl
aucune vulnrabilit.
VLC, les DRM des Bluray et HADOPI
Jean-Baptiste Kempf
Jean-Baptiste est prsident de lassociation VideoLan et
lead-dveloppeur du clbre lecteur multimdia VLC media
player (aussi connu sous le nom du cne-qui-lit-des-vidos ).
Ce lecteur est reconnu pour supporter un grand nombre
de formats de fichiers et embarquer nativement tous ses
codecs ncessaires la lecture de ces fichiers. Afin de permettre la lecture des Blu-Ray et DVD au sein de VideoLan,
lquipe de VLC a du comprendre et contourner les protections DRM implmentes par les ayant-droits.
Jean-Baptiste dtaille ainsi deux mcanismes de DRM bass sur cl (DVDCSS, AACS) et explique comment la gestion
de ces mcanismes est implmente au sein de VLC.
Les DVD utilisant une protection DRM via cl DVDCSS se
basent sur des cls de trs courte longueur (standard datant de 1995). Lquipe de VLC se base donc sur une bibliothque nomme libdvdcss qui va permettre la rcupration ou le brute-force de cette cl par VLC afin de lancer
la lecture du film.
Lors de la sortie des Blu-Ray, les ayant-droits nont pas commis la mme erreur et ont mis au point des algorithmes
de chiffrement beaucoup plus efficaces. Cest notamment
le mcanisme par algorithme AACS qui utilise des cls de
constructeurs. Ce mcanisme na toujours pas t cass
lheure actuelle. VLC utilise donc une bibliothque nomme

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

37

libaacs permettant la lecture de Blu-ray si on parvient


lui transmettre des cls de constructeurs valides. Ces cls ne
sont videmment pas intgres au projet VideoLan, mais
peuvent tre rcupres part sur Internet grce au travail
de quelques gnreux donateurs anonymes ( fichierkeydb.cfg ).

Protocole HbbTV et scurit : quelques exprimentations


Eric Alata, Jean-Christophe Courrege, Mohammed Kaaniche,
pierre lukjanenko, VincentNicomette, Yann Bachy

Jean-Baptiste a regrett lobligation de cette mthode de


fonctionnement et a fustig les institutions dtat (ARMT et
Hadopi) qui nont jamais t capables de dmler les flous
juridiques autour de ce sujet afin de permettre une implmentation plus propre des spcifications AACS dans VLC.

tocole_hbbtv_et_securite/SSTIC2015-Slides-protocole_hbbtv_et_securite-alata_courrege_kaaniche_lukjanenko_nicomette_bachy.pdf

Quatre millions dchanges de cls par seconde


Adrien Guinet, CarlosAguilar, Serge Guelton, Tancrde Lepoint

Whitepaper
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/4M_
kx_per_sec/SSTIC2015-Article-4M_kx_per_sec-guinet_
aguilar_guelton_lepoint.pdf
linstar du fait que la scurit un prix financier, le chiffrement un prix qui se paie en cycles CPU. Les surcots des
calculs cryptographiques ont un impact significatif sur les
performances des systmes.
Le sujet dtude des confrenciers est au cur de ce problme. Leur objectif, rduire limpact qua le chiffrement
sur la performance, et ce, via des techniques doptimisation. En aucun cas il nest question de modifier ou dinventer de nouveaux algorithmes de chiffrement.

Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/pro-

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/protocole_hbbtv_et_securite/SSTIC2015-Article-protocole_hbbtv_et_securite-alata_courrege_kaaniche_lukjanenko_nicomette_bachy.pdf
Des travaux intressants dune quipe du CNRS, reprsente par Yann Bachy, montrent comment compromettre le
LAN dun particulier partir de vulnrabilits au sein des
tlvisions connectes.
Les tlvisions connectes implmentent le standard HbbTV
(HybridBroadcast Broadband TV). Ce standard permet aux
diteurs denrichir leur contenu avec la diffusion avec des
services annexes (contenu interactif, proposition de vidos
en replay, liste de programmes, etc.). Concrtement, les
ondes hertziennes transmettent une URL quun navigateur
intgr au sein du tlviseur rcupre et interprte. Nous
parlons ici de technologies web habituelles (HTML, CSS, JavaScript, AJAX, etc.) qui sont affiches en mme temps que
la vido regarde par lutilisateur (overlay).
Dans un premier temps, les chercheurs placent une antenne proximit de la tlvision connecte cible. Ils vont
surcharger le flux hertzien reu par le tlviseur afin dy
diffuser un contenu diffrent. Ce contenu utilise le standard
HbbTV afin de forcer la tlvision victime se connecter
un serveur malveillant quils contrlent.

Dans cette optique, les confrenciers ont prsent la bibliothque de chiffrement baptis NFLlib. Cette dernire
offre des rsultats significativement meilleurs que ceux
offerts par les autres bibliothques de chiffrement telles
quOpenSSL. Les techniques doptimisation appliques
passent par lutilisation des fonctionnalits de calcul vectoriel des processeurs Intel (jeux dinstructions SSE et/ou
AVX2), lanalyse et loptimisation de code cryptographique,
la simplification de code de manire permettre des optimisations par le compilateur et pour finir, des optimisations
manuelles lorsque le compilateur choue dans cette tche.
Bien quun long chemin reste encore parcourir avant de
voir cette bibliothque devenir un standard , les rsultats
exposs lors de cette confrence taient trs prometteurs.

Le navigateur de la tlvision ne vrifie pas toujours la


Same-Origin-Policy. Profitant de cette faiblesse, le serveur
malveillant expose du code JavaScript qui va demander
la tlvision de raliser des actions sur le rseau local. Les
chercheurs du CNRS utilisaient ces instructions JavaScript
pour demander la box du rseau local douvrir des ports
sur Internet via requte UPNP. Lattaquant pirate ainsi le tlviseur localement et peut essayer den prendre le contrle
afin de rebondir sur le rseau local.

38
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

SSTIC

Compromission de carte puce via la couche protocolaire ISO 7816-3


Guillaume Vinet
Les attaques sur les cartes puce se sont multiplies ces
dernires annes. Ces dernires ciblent les socles applicatifs
ou les terminaux. Cependant, aucune attaque na encore
t mene sur le protocole de communication des cartes
avec contact rfrenc ISO 7816-3. Pourtant cette approche
prsente lavantage dtre indpendante de la carte ou du
terminal avec lequel elle va communiquer.
Dans un contexte o le budget allou cette tude tait
limit, lorateur a prsent les moyens matriels mis en
oeuvre pour raliser cette tude. Et cest laide dun simple
Arduino quil a pu mener des tests laide de loutil de fuzzing Sulley, sur la couche protocolaire ISO 7816-3. Cest ainsi quil a dcouvert un dbordement de mmoire tampon
au sein de certaines cartes. Malgr cela, la conception des
cartes puce est bien faite de par le niveau de rsistance
constat face aux attaques menes au cours de cette tude.
Fuddly : un frameworkde fuzzing et de manipulation
de donnes
Eric Lacombe

Lautomatisation du fuzzing sur un format de donnes est


ralise par un disrupteur . Les disrupteurs peuvent tre
gnriques et sappliquer plusieurs types de format de
donnes ou spcifiques un format de donnes en particulier. Afin de fuzzer un format de donnes en profondeur,
il est donc ncessaire de formaliser ledit format laide
dun graphe, puis de dvelopper un ou plusieurs disrupteurs
associs.
Mais le framework ne sarrte pas l. Ce dernier permet de
combiner des formats de donnes entre eux, de chainer
des disrupteurs, etc. Daprs lorateur, Fuddly serait utilis
afin de tester des quipements anioniques.
Avatar: A Framework to Support Dynamic Security
Analysis of Embedded Systems Firmwares
Jonas Zaddach
Durant cette confrence, Jonas Zaddach a prsent un
framework danalyse des firmwares et autres couches logicielles quil est possible de retrouver au sein de systmes
embarqus. Lobjectif de ce framework est de pouvoir utiliser les mmes outils utiliss lors danalyse de binaires
classiques (i.e. IDA, GDB, etc.).

Afin de remplir cet objectif, Avatar mule le systme embarqu, mais pas seulement. Il transmet galement les requtes normalement effectues par le systme embarqu,
aux priphriques connects au dit systme.

De mme, Avatar est galement en mesure de transmettre


les interruptions gnres par les priphriques lmulateur.

Slides
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
fuddly_fuzzer/SSTIC2015-Slides-fuddly_fuzzer-lacombe_
nzK9QBG.pdf
Whitepaper
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
fuddly_fuzzer/SSTIC2015-Article-fuddly_fuzzer-lacombe_2.
pdf
Fuddly est un framework de fuzzing dvelopp en python.
Ce dernier, encore ltat exprimental, permet de dfinir
des formats de donnes laide de graphe orient acyclique. Brivement, les terminaisons du graphe correspondent
au format de la donne et les arcs dcrivent sa structure.

A Large-ScaleAnalysis of the Security of Embedded Firmwares


Andrei Costin
Pour cette dernire confrence courte de la journe, Andrei
Costin nous a prsent un projet danalyse de firmware
de masse, disponible ladresse suivante http://www.firmware.re. Ce dernier, dj prsent la BlackHat par le
prcdent orateur Jonas Zaddach, permet de raliser une
analyse grande chelle de firmwares, et ce, via diffrentes techniques :

+Analyse statique simpliste ;


Analyse de la configuration des diffrents composants
+
(serveurs web, identifiants parfois crits en durs, repositories, etc.) ;

39
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Corrlations dinformations entre les firmwares (certifi+


cats SSL par exemple) ;
+Fuzzing.
Parmi les diffrentes problmatiques rencontres, Andrei
Costin sest attard sur la difficult obtenir un large panel
de firmwares. Ces derniers ne sont pas toujours disponibles
sur internet. De plus, les firmwares ne sont pas toujours
au mme format (bin, zip, voire pdf). Pour cette raison, il
a t ncessaire dappliquer des techniques afin dobtenir
des donnes analysables ( file carving ou de bruteforce
des firmwares avec diffrents unpackers).
Rumps
Les rumps sont des petites prsentations de 3 minutes. Un
cru 2015 charg puisque 2 heures durant, nous avons eu
loccasion dassister 32 prsentations :
Donjons, Dragons et Scurit (Tiphaine Romand-Lata+
pie)
WebSite SSTIC (Kevin Denis)
+
De reBUS Parsifal (Olivier Levillain)
+
Pshitt et les bruteforces SSH (Eric Leblond)
+
Bote noire, par serge-sans-paille (Serge Guelton)
+
Le vrai cot de la scurit (Philippe Biondi)
+
Evasion HQL vers SQL (Renaud Dubourguais)
+
Factorisation de clefs RSA grande chelle (Etienne Mil+
lon)
MISC: redac en chef factieux recherche auteurs mali+
cieux (Cdric Foll)
s(4)u for Windows (Aurlien Bordes) slides
+
BREIZHCTF (Clment Domingo)
+
Dot not fear, FIR is IR (Thibaud Bintruy)
+
Faut-il acheter un outil de File Carving ? (Christophe Gre+
nier)
Analyse forensique du Nexus 4 avec DFF (Frdric Ba+
guelin)
Quelques heuriSSTIC sur les repo git (Charles Prost)
+
tcp2pipe (Fabien Kraemer)
+
f*** me, Im famous (Nicolas Ruff)
+
Youkeepass (Romain Gayon)
+
Rump @str4k3 @wlgz @RageYL
+
IVRE, il scanne Internet (Pierre Lalet)
+
Miasm (Fabrice Desclaux)
+
Sybil (Camille Mougey)
+
ISO 14001 Cloud - Take 3 (Arnaud Ebalard)
+
Une rump phmre et (im)pitoyable (Guillaume
+
Delugr)
jardin-entropique.eu.org (Mathieu Goessens)
+
Du pare-feu au SIEM (Thomas Andrejak)
+
Du reverse au fuzzing de protocoles avec Netzob
+
(Georges Bossert - Frdric Guihry)
CSV (Yoann Guillot)
+
MITM USB (Benot Camredon)
+
Les objets connects cest nul (Eloi Vanderbeken)
+
GreHack (Josselin Feist)
+
+BotConf (Frdric Baguelin)

40

> Jour 3
Utilisation du framework PyCAF pour laudit de configuration
Maxime Olivier
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/utilisation_du_framework_pycaf_pour_laudit_de_conf/SSTIC2015-Slides-utilisation_du_framework_pycaf_pour_laudit_de_configuration-olivier.pdf
Aprs avoir rappel les objectifs dun audit de configuration, Maxime Olivier a illustr les contraintes bien connues
des auditeurs lors de ces audits. Lextraction des informations techniques ncessaires un audit de configuration
requiert systmatiquement des privilges levs, ce qui
pose dj un problme. cela vient sajouter la diversit
des systmes pouvant en faire lobjet : serveur Linux, poste
Windows, Firewall, Switch, etc.

Cest dans ce contexte que Maxime Olivier prsent loutil


PyCAF, disponible sur GitHub. Dvelopp en Python, ce dernier a pour objectif daider un auditeur dans les 2 phases
dun audit de configuration, savoir : lextraction des donnes et leur analyse a posteriori.
Analyse de documents MS Office et macros malveillantes
Philippe Lagadec
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
analyse_office_macros/SSTIC2015-Slides-analyse_office_
macros-lagadec.pdf
Lexcution de code malveillant prsent au sein de macros
de document Microsoft Office est un vecteur dattaque qui a
longtemps t dlaiss. Depuis 2010, Microsoft a choisi de
modifier le mcanisme de gestion des Macros qui peuvent
tre actives par un simple click. Ds lors, la popularit de
ce vecteur dattaque a drastiquement augment.
Pour commencer sa prsentation, Philippe Lagadec a rappel les impacts que pouvaient avoir lexcution dune
macro sur un systme, savoir, les mmes quune application malveillante. En effet, avec une macro, il est possible

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

SSTIC

(par exemple) de tlcharger et dexcuter un programme


sur le systme (a.k.a Dropper). Avec le temps, les macros
malveillantes se sont complexifies avec des techniques
dobfuscation et danti-sandboxing, linstar des malwares
classiques.
Puis, lorateur a rapidement voqu les outils disponibles
pour effectuer une analyse dun document contenant une
macro malveillante (Oledump, Olevba, officeparser, OfficeMalScanner, etc.), en prcisant les limitations de ces derniers face des techniques dobfuscation. Cest alors quil
a prsent loutil ViperMonkey, qui en plus dintgrer un
parseur VBA, permet de faire de lexcution symbolique du
code potentiellement malveillant.
StemJail : Cloisonnement dynamique dactivits pour
la protection des donnes utilisateur
Mickal Salan
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

stemjail_cloisonnement_dynamique_d_activites_pour_/
SSTIC2015-Slides-stemjail_cloisonnement_dynamique_d_
activites_pour_la_protection_des_donnees_utilisateur-salaun.pdf
Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

stemjail_cloisonnement_dynamique_d_activites_pour_/
SSTIC2015-Article-stemjail_cloisonnement_dynamique_d_
activites_pour_la_protection_des_donnees_utilisateur-salaun.pdf
Durant cette prsentation, lorateur nous a prsent loutil
StemJail. Ce dernier a pour objectif de rpondre aux limites
du systme de restriction des processus des systmes Linux
qui peut se rsumer de la manire suivante : le processus
a les privilges du compte qui la excut .
StemJail est un outil qui restreint dynamiquement les accs dun processus en fonction de son comportement. Par
exemple, si une application ABC manipule vos photos de
vacances qui se trouvent dans le dossier photo , elle na
srement pas besoin daccder vos relevs de comptes
qui sont dans le dossier documents . Ainsi, lorsque ladite
application ABC accdera au dossier photo , laccs au
dossier documents lui sera dynamiquement restreint
par loutil StemJail.
En rsum, loutil StemJail permet aux utilisateurs de limiter
les accs des applications aux donnes, et fonction de leur
activit. Cet outil est encore en cours de dveloppement.
En outre, il ne tient pas encore compte des accs aux ressources du systme (ex. accs rseau).

Hack yourself defense


Eric Detoisien
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
hack-yourself-defense/SSTIC2015-Slides-hack-yourself-defense-detoisien.pdf

Durant cette confrence, Eric Detoisien est revenu sur une


problmatique qui est commune toutes les entreprises :
le contexte des attaquants est diffrent de celui des entreprises.
Ces derniers ne sont pas soumis aux mmes contraintes :
Pas de limites aux problmatiques RH (procdure de re+
crutement, rmunration, contrle des comptences, etc.) ;
Possibilit de se former et de squiper en ligne (kit
+
dexploitation, outil, voire 0day, etc..) ;
Pas de contrainte mtier (horaire, disponibilit des
+
quipes techniques, contrats, etc.).

IRMA propose de soumettre un fichier ou un


programme suspect une batterie de solution antivirale, comparable au clbre outil
en ligne virustotal
Ces contraintes font quil est parfois difficile pour une entreprise de se dfendre efficacement. De plus, les tests dintrusion sont limits par les comptences de lauditeur, le
temps, le primtre et le budget de lentreprise. Les scanneurs de vulnrabilits automatiques sont limits et remontent beaucoup dinformations peu pertinentes. Obtenir
une vision globale du niveau de scurit de son SI face de
vrais attaquants est donc difficile.
Selon lorateur, la solution face ces problmatiques serait
de crer une Socit Militaire Prive Virtuelle qui mnerait des attaques telles que le feraient des pirates sans les
contraintes rencontres par les auditeurs en scurit.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

41

Entre urgence et exhaustivit : de quelles techniques


dispose lanalyste pendant linvestigation?
Amaury Leroy
Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

gramme suspect une batterie de solution antivirale. Comparable au clbre outil en ligne virustotal , IRMA permet de garder une maitrise des fichiers qui sont analyss et
des rsultats danalyse.

entre_urgence_et_exhaustivite_de_quelles_technique/
SSTIC2015-Article-entre_urgence_et_exhaustivite_de_
quelles_techniques_dispose_lanalyste_pendant_linvestigation-leroy.pdf
Un retour dexprience dAmaury Leroy, expert en rponse
incident chez Airbus, qui nous explique sa mthodologie
dans le traitement des APT.
La situation dun expert en rponse incident arrivant chez
un nouveau client est compliqu : celui-ci doit identifier des
compromissions pointues, au sein dun rseau trs vaste
avec lequel il nest pas familier.
Selon le prsentateur, lapproche permettant de grer cette
situation complique tout en tant exhaustive est la suivante :
Commencer par les actions rentables et simples permet+
tant de grer lurgence : rcuprer les indices de compro-

mission (IOC), les dgrossir et les classer. Afin de les trouver,


lauditeur peut essayer didentifier les machines ayant des
comportements extrmes (ex : beaucoup trop de donnes
envoyes sur Internet par rapport au reste du rseau). Ces
IOC constituent les lments auxquels lauditeur doit se raccrocher pour viter de partir dans de mauvaises directions ;

Crack me, Im famous! : Cracking weak passphrases


using freely available sources
Hugo Labrande
Slides
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
crack_me_im_famous_cracking_weak_passphrases_
using/SSTIC2015-Slides-crack_me_im_famous_cracking_
weak_passphrases_using_freely_available_sources-labrande.pdf

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/

Une fois ces informations obtenues, les utiliser pour r+


pondre aux questions relatives la compromission : laudi-

crack_me_im_famous_cracking_weak_passphrases_
using/SSTIC2015-Article-crack_me_im_famous_cracking_
weak_passphrases_using_freely_available_sources-labrande.pdf

Enfin, largir le champ du problme pour sassurer que


+
rien na t oubli : cette phase a pour objectif de vrifier

Durant cette prsentation, Hugo Labrande nous a prsent


comment il a t en mesure de casser les condensats MD5
de mots de passe forts via une attaque par dictionnaire.
Vous laurez compris, le coeur de cette prsentation rsidait
dans la rponse cette question : Comment a-t-il gnr
ledit dictionnaire ?

teur largit linvestigation en observant les actions de lattaquant sur les machines prcdemment identifies afin de
comprendre le mode opratoire et rpondre aux grandes
questions relatives lattaque ;

quaucun lment na t oubli en ralisant des analyses


plus complexes sur les IOC (corrlations mathmatiques).
IRMA : Incident Response and Malware Analysis
Alexandre Quint, Fernand Lone Sang, Guillaume Dedrie

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/irma_
incident_response_and_malware_analysis/SSTIC2015-Article-irma_incident_response_and_malware_analysis-quint_lone-sang_dedrie.pdf

Au cours de cette prsentation, les orateurs ont prsent


IRMA, un framework danalyse de malware. Une solution
antivirale offre rarement une protection, ou du moins un
mcanisme de dtection exhaustif face un code ou un
programme malveillant.

42 cela, IRMA propose de soumettre un fichier ou un pro-

Hugo Labrande a agrg plusieurs milliards de phrases et


de citation connues, et ce, via diffrentes sources telles que
Wikipedia, Wikiquote, RapDict, FOLDOC, Urban Dictionary,
IMDB, Twitter, projet Gutenberg (15, 000 livres), Facebook,
etc. Via cette mthode, ce jeune thsard a cr un dictionnaire denviron 1, 3 milliard de phrases quil a utilis pour
retrouver les mots de passe des condensats MD5 de la base
KoreLogic. Ce dernier lui a permis de retrouver des mots

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

de passe composs de plusieurs dizaines de caractres tels


que Ghost in the Shell : S.A.C. Solid State Society .

Snowden, NSA : au secours, les journalistes sintressent la scurit informatique !


Martin Untersinger

Contextualised and actionable information sharing


within the cyber-security community
Frederic Garnier

Martin est journaliste au monde dans le domaine du numrique et de la scurit (scurit, vie prive, surveillance,
etc.).

Whitepaper
+
https://www.sstic.org/media/SSTIC2015/SSTIC-actes/
contextualised_and_actionable_information_sharing_/
SSTIC2015-Article-contextualised_and_actionable_information_sharing_within_the_cyber-security_community-garnier.pdf

Il est actuellement beaucoup question de partage dinformations entre les diffrents CERT et quipes de rponse
incident. Quelles sont les informations partager, comment
les partager, comment organiser une collaboration entre
socits concurrentes, etc . ?
Frderic est venu prsenter un modle dchange de
Threat Intelligence entre les diffrents acteurs.
Pour les informations changer, Frderic propose de se
baser sur le modle de cyber-threat STIX, en le modifiant
un petit peu. Les donnes changer sont les suivantes :

+
Lobjet Indicateurs : en regroupant plusieurs ob+
servables , on contextualise lattaque (une campagne de
Lobjet Observables (IOC) contenant les lments
techniques (IP, e-mails, cls de registres, etc.) ;

Martin a travaill sur les documents fournis par Edward


Snowden en 2013. A partir de cette exprience, il relate
la difficult des journalistes traiter des sujets de scurit
informatique. Ces sujets fortement techniques ne sont pas
facilement explicables au grand public.
Le journaliste a pour fonction de vulgariser le sujet afin de
lexpliquer aux lecteurs, mais celui-ci nest pas suffisamment arm techniquement afin de comprendre les sujets
les plus pointus pour pouvoir les expliquer. Martin en appelait donc aux experts prsents au SSTIC pour les encourager
discuter et collaborer avec les journalistes pour communiquer sur les problmes de socit impacts par la scurit
informatique (surveillance, espionnage, etc.)
Rfrences

+https://www.sstic.org/2015/

phishing basique depuis le mois dernier, une attaque cible


apparue il y a deux ans, etc.) ;

Lobjet Campagnes : en corrlant les lments de


+
diffrents Indicateurs (date, techniques, secteurs cibls,
IOC similaires) on peut caractriser des campagnes pour attribuer un groupe prcis des lments spars ;

Lobjet TTP corrlant des objets Observables ,


+
Indicateurs et Campagnes permettant de caractriser
les techniques, tactiques et procdures des groupes dattaquants ;

Lobjet Acteur de la menace : cest la fameuse phase


+
dattribution. En fonction des lments prcdemment observs, on caractrise le groupe dattaquant (nationalit,
niveau de comptence, motivations, etc.).

Selon Frderic, la mutualisation des informations recueillies par les CERT et leur classification selon le modle STIX
permettrait aux acteurs de la rponse incident de communiquer

43
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

> Confrence : Hack In The Box Amsterdam 2015

HITB 2015
par Stphane AVI et Charles DAGOUAT

Cette anne encore, XMCO tait partenaire de la confrence


Hack In The Box. Retour sur ldition 2015 qui sest droule
il y a peu.
Nous dcrirons ici le dtail des prsentations suivies par nos
consultants.
Oracle PeopleSoft applications are under attacks!
Alexey Tyurin (@antyurin)

Une fois ce tour dhorizon termin, le chercheur nous a


prsent les diffrentes attaques pouvant tre menes
lencontre du logiciel : dun point de vue interne et externe,
en attaquant la base de donnes, les flux rseau ou directement lapplication.
Cette prsentation fut un bon retour dexprience sur la scurit du logiciel PeopleSoft.

Slides
+
http://conference.hitb.org/hitbsecconf2015ams/materials/D1T2%20-%20Alexey%20Tiurin%20-%20Oracle%20
Peoplesoft%20Applications%20are%20Under%20Attack.
pdf

Nous voil installs dans la salle 2 afin de suivre la confrence sur PeopleSoft. Le speaker a commenc sa prsentation en faisant un rapide rappel sur le logiciel : par qui il est
utilis, dans quel secteur dactivit, dans quel but ainsi que
son architecture technique.

44
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

The Savage Curtain: Mobile SSL Failures


Tony Trummer (@secbro1) et Tushar Dalvi (@tushardalvi)
Slides
+
http://conference.hitb.org/hitbsecconf2015ams/materials/
D1T2%20-%20Tony%20Trummer%20and%20Tushar%20
Dalvi%20-%20Mobile%20SSL%20Failures.pdf

Dernire confrence de la journe, deux ingnieurs en scurit de la socit LinkedIn nous ont prsent leur retour
dexprience sur la scurit SSL des applications mobiles.

Mozilla InvestiGator: Distributed and Real-Time Digital


Forensics at the Speed of the Cloud
Julien Vehent (@jvehent)
Slides
+
http://conference.hitb.org/hitbsecconf2015ams/wp-

content/uploads/2015/02/D2T2-Julien-Vehent-Mozilla-InvestiGator.pdf
Julien Vehent travaille pour la Fondation Mozilla au sein
de lquipe OpSec (Operational Security). Cette quipe est,
entre autres, en charge de la rponse aux nombreux incidents de scurit qui leur sont remonts quotidiennement.
Dans la philosophie de Mozilla, comme aucun produit disponible sur le march ne rpondait rellement leur besoin en terme de recherche dartfact sur un large parc informatique de serveurs, Julien et son quipe ont dvelopp
leur propre outil : MIG.
Concrtement, MIG se dcompose en deux volets : un agent
est install sur lensemble des postes du parc devant tre
placs sous surveillance dialoguant avec un serveur central.
Le serveur central quant lui est compos de plusieurs lments :

Aprs un rapide retour sur les dernires actualits autour


de SSL, les prsentateurs ont rappel le fonctionnement de
la validation des certificats. Ils se sont rendu compte que la
plupart des applications contrlaient uniquement le fait que
le certificat soit issu dune autorit valide. Ainsi, un attaquant disposant dun certificat valide pouvait effectuer des
attaques de type MITM lencontre dapplications mobiles
sans que lutilisateur nen soit inform.

Jos A. Guasch chercheur sest rendu


compte que les systmes des parkings
taient connects Internet et quils taient
vulnrables comme nimporte quelle autre
application
Ensuite, ils nous ont prsent diffrentes attaques, dont
une sur le cache de session SSL. En effet durant la phase de
ngociation, lapplication peut mettre en cache le certificat
pour ne plus le valider ultrieurement.

un serveur frontal, exposant un webservice permettant


+
denregistrer les actions dispatcher aux agents ;
un ordonnanceur, charg de transmettre les actions aux
+
agents concerns ;
et enfin un relais RabbitMQ, charg de communiquer les
+
actions aux agents.
Le principal avantage de cette architecture est de permettre
aux investigateurs dobtenir des rsultats pertinents dans
des dlais relativement raisonnables, et ce quelque soit le
nombre dagents dploys dans le parc.
Par ailleurs, cette solution a t pense pour garantir un niveau de scurit lev. Les actions doivent tre signes par
un ou plusieurs investigateurs laide de leur clef GPG (en
fonction de la sensibilit des actions devant tre effectues
par les agents distants). Cette signature est vrifie localement par chacun des agents avant mme dexcuter une
quelconque commande. De mme, MIG est conu pour protger la vie prive des utilisateurs des systmes disposant
dun agent. Les investigateurs ne seront pas en mesure, par
exemple, de rcuprer un fichier localement et de le copier sur un serveur distant. MIG permet surtout didentifier
les systmes compromis en recherchant des indicateurs de
compromission, afin que, le cas chant, les investigateurs
puissent contacter le responsable du systme pour approfondir leur analyse en rcuprant les traces ncessaires localement.
noter, MIG est galement conu pour tre multi-plateforme. Lagent prend la forme dun binaire statique disponible aussi bien pour Windows, que Mac OS ou encore
Linux. MIG semble tre un concurrent srieux des solutions
de type GRR (Google) visant simplifier la surveillance dun
parc informatique des fins de rponse incident.

45
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Hack In The Box

Remotely Owning Secure Parking Systems


Jos A. Guasch

How Many Million BIOSes Would You Like To Infect?


Corey Kallenberg (@coreykal) et Xeno Kovah (@XenoKovah)

Slides
+
http://conference.hitb.org/hitbsecconf2015ams/materials/

Slides
+
http://conference.hitb.org/hitbsecconf2015ams/wp-

D2T1%20-%20Jose%20Guasch%20-%20Remotely%20
Owning%20Secure%20Parking%20Systems.pdf
La prsentation de Jose Antion Guasch concernait les infrastructures des systmes de parking.

content/uploads/2015/02/D1T1-Xeno-Kovah-and-CoreyKallenberg-How-Many-Million-BIOSes-Would-You-Like-toInfect.pdf

Le chercheur sest rendu compte que les systmes des parkings taient connects Internet et quils taient vulnrables comme nimporte quelle autre application (mot de
passe faible, backups exposes, etc.). Lors de cette prsentation, aucune vulnrabilit complexe na t prsente.

Xeno Kovah et Corey Kallenberg, deux anciens chercheurs


travaillant pour le MITRE, ont mont leur propre structure
il y a quelques mois. Baptise LegbaCore, la socit est
spcialise dans lanalyse bas niveau des systmes, et en
particulier des BIOS et autres UEFI. Xeno Kovah, qui tait
seul sur scne, a effectu plusieurs dmonstrations de ces
attaques en direct.

Concrtement, les chercheurs ont montr


comment manipuler le comportement
du SMM (System Management Mode) en
exploitant les failles identifies au sein des
BIOS

Cette prsentation a t loccasion de montrer que le niveau


de scurit des BIOS et autres UEFI est particulirement mdiocre. Lintgrit de ces composants est pourtant primordiale, puisquils sont responsables de la configuration de
la plateforme matrielle afin de permettre au systme de
dmarrer dans de bonnes conditions et de fonctionner dans
son tat nominal, considr comme tant sr dutilisation.

Pour conclure, le chercheur explique quil a essay de


contacter les personnes en charge des parkings pour leur
fournir le rsultat de ses recherches, mais ce sans succs.

Au travers de cette prsentation, les deux chercheurs ont


souhait mettre en avant deux points :
les utilisateurs ne mettant pas leur BIOS jour, la trs
+
grande majorit des systmes peuvent tre compromis
grce lexploitation dau moins une faille de scurit ;

la rutilisation de code vulnrable au sein des BIOS par


+
les diffrents diteurs permettrait dautomatiser des attaques grande chelle.

Concrtement, les chercheurs ont montr comment, en exploitant les failles identifies au sein des BIOS, manipuler le
comportement du SMM (System Management Mode), un
mode de fonctionnement des processeurs x86 disposant
des privilges les plus levs sur le systme. En effet, ce
mode de fonctionnement une particularit intressante :
le code excut dispose de privilges dexcution particulirement levs, et est en mesure daccder lensemble
de lespace mmoire manipul par le systme dexploitation, et donc par le processeur. Cependant, le reste du systme est dans lincapacit daccder cet espace. Il sagit
en quelque sorte dun trou noir : le SMM voit tout le
systme ; sans que le systme ne soit en mesure de le voir
ou de lobserver.

46

Aprs cette introduction, Xeno a prsent une premire


analyse faite sur les BIOS. Les deux chercheurs ont en effet
t en mesure didentifier de manire simple des failles
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

de scurit. Le chercheur a ensuite ralis une premire


dmonstration afin dillustrer lexploitation de ce type de
faille, de corrompre le SMM, et ainsi de dtourner le fonctionnement du systme. Pour cela, aprs avoir infect le
BIOS, il a dmarr son ordinateur portable sur la distribution
TAILS, chre Snowden. Celle-ci est cense protger ses
utilisateurs contre les coutes gouvernementales . Aprs
avoir lanc le systme, le chercheur a montr quil tait en
mesure de rcuprer des informations personnelles particulirement sensibles telles quun email chiffr, ou encore
une clef secrte GPG.
Le chercheur a poursuivi sa prsentation en dtaillant le
fonctionnement de lUEFI, et les diffrentes techniques pouvant tre exploites par un attaquant pour arriver ses fins,
savoir, contrler le fonctionnement de nimporte quel systme dexploitation sain.
Enfin, en tudiant le code source de certaines implmentations Open-Source de lUEFI, le chercheur a dmontr
comment il tait possible didentifier des failles au sein de
la trs grande majorit des ordinateurs actuellement commercialiss.
Xeno et Corey nen sont pas rests l. Ils travaillent en effet
de concert avec certains vendeurs afin de faire corriger les
failles de scurit identifies, ainsi quavec Intel pour concevoir un mcanisme plus sr que limplmentation actuelle.
Exploiting Browsers the Logical Way
Bas Venis (@bugroast)
Slides
+
http://conference.hitb.org/hitbsecconf2015ams/wp-

Supervising the Supervisor: Reversing Proprietary SCADA Tech


Jean-Baptiste Bedrune, Alexandre Gazet et Florent Monjalet
Slides
+
http://conference.hitb.org/hitbsecconf2015ams/wp-

content/uploads/2015/02/D2T2-JB-Bedrune-A .-Gazet-F.-Monjalet-Reversing-Proprietary-SCADA-Tech.pdf
Florent Monjalet et Jean-Baptiste Bedrune (Quarkslab) sont
venus prsenter une mission sur laquelle ils ont rcemment
t amens travailler avec Alexandre Gazet. Plus prcisment, les trois chercheurs de Quarkslab ont prsent un
retour dexprience sur lanalyse dun environnement de
type SCADA.
Les chercheurs ont ainsi prsent le cheminement leur
ayant permis in fine de reverser le protocole de communication implment par le fabricant afin de permettre
ses quipements de dialoguer avec lIHM de supervision,
et ainsi contourner les diffrentes mesures de protection
ainsi mises en place (telles que lusage de la cryptographie
plusieurs niveaux). Les chercheurs ont ainsi dmontr leur
capacit contrler le PLC (Programmable Logic Controler).
noter, le retour des chercheurs tait plutt positif. En effet,
la version du produit tudi avait dj t analyse par le
pass par dautres chercheurs, qui avait mis en avant de
nombreux problmes de scurit. Bien que toujours vulnrable certaines failles de scurit, la version qui a t
tudie a t notablement revue par le fabricant, qui a pris
en compte les prcdentes remarques afin de relever le
niveau de scurit de son produit.

content/uploads/2015/02/D1T2-Bas-Venis-Exploiting-Browsers-the-Logical-Way.pdf
Bas, un jeune tudiant de 18 ans, a prsent son travail
de recherche sur les failles affectant les navigateurs web,
et plus prcisment Google Chrome et Flash Player. Ses recherches taient intressantes, car il ne sagissait pas de
failles complexes, identifies grce du fuzzing. En effet, il
a prsent la progression de sa rflexion et de sa dmarche
qui, terme, lont conduit identifier un ensemble de
techniques lui permettant de contourner les mcanismes
de SOP (Same Origin Policy) et de bac sable (sandbox).
Au final, le jeune chercheur a t en mesure de prsenter
un scnario dattaque complexe, lui permettant de drober
des informations sensibles lies un site, depuis un autre
site, et de les renvoyer vers un troisime autre site.

Enfin, et toujours selon les chercheurs, le fabricant serait


lcoute des retours faits par Quarkslab, et aurait dj corrig certains problmes identifis au cours de cette mission.

47
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Hack In The Box

What You Always Wanted and Now Can: Hacking Chemical Processes
Marina Krotofil et Jason Larsen
Slides
+
http://conference.hitb.org/hitbsecconf2015ams/materials/
D2T1%20-%20Marina%20Krotofil%20and%20Jason%20
Larsen%20-%20Hacking%20Chemical%20Processes.pdf

La prsentation de Marina Krotofil et Jason Larson a abord


les systmes de contrle industriels.
Les recommandations techniques mettre en place dans
les systmes industriels nont rien voir avec celles que
lon pourrait prodiguer sur un Systme dinformations
standard . En effet, en cas dattaque, il nest pas possible
de dsactiver le systme afin de restreindre la progression
dun attaquant. Il y a trop de facteurs prendre en compte.
Si lon coupe un thermomtre que se passe-t-il ? Un dni de
service sur ce type dquipement na pas du tout le mme
impact que sur un serveur Web...
Aprs cette mise en jambe, les chercheurs sont ensuite revenus sur les diffrents travaux de Jason Larson prsents
la Black-Hat ainsi que sur la manire de sen prmunir.

48

Non-Hidden Hidden Services Considered Harmful: Attacks and Detection


Filippo Valsorda (@FiloSottile) et George Tankersley (@_
gtank)
Slides
+
http ://conference.hitb.org/hitbsecconf2015ams/

wp-content/uploads/2015/02/D2T2-Filippo-Valsorda-and-George-Tankersly-Non-Hidden-Hidden-Services-Considered-Harmful.pdf
Filippo et George, deux jeunes chercheurs, sont venus nous
prsenter leur travail sur le fonctionnement interne du rseau TOR. Ils se sont plus particulirement intresss au
hidden services , des services exposs et accessibles uniquement au travers du rseau. Outre la proprit de garantir lanonymat (au niveau IP) du serveur exposant le
service, les Hidden Services sont galement censs garantir
lanonymat de leur visiteur. Cependant, en dtournant leur
fonctionnement nominal, les chercheurs ont russi dtourner cette proprit.
En effet, sous certaines conditions particulires, un acteur
malveillant disposant dune vision sur la boucle rseau
locale (un FAI par exemple) serait en mesure de se
substituer dautres serveurs TOR et de prendre la place
des 3 rfrents capables didentifier le chemin daccs un
service cach donn. Pour cela, les chercheurs exploitent
une proprit lie au fonctionnement des rseaux dcentraliss, de type DHT. De cette manire, en tant en mesure
de voir lorigine dune requte et sa destination, un acteur
malveillant est en mesure de savoir quun internaute spcifique visite le service cach cibl. En effet, avant de pouvoir contacter ce type de service, linternaute est oblig de
contacter lun des trois serveurs rfrents que lattaquant
contrle. Les chercheurs ont dmontr cette attaque par
la pratique, en contrlant lespace dune journe les 3 serveurs identifiants le service cach Facebook.
Que les internautes se rassurent. Les chercheurs ne disposant pas dun accs la boucle locale, leur identit na pas
pu tre dvoile au cours de cette attaque. Ce problme
de scurit identifi au sein du fonctionnement de TOR
est connu des dveloppeurs, qui travaillent actuellement
une refonte majeure de ces services (cf proposition #224
- Next-Generation Hidden Services).
En attendant la mise en production de cette volution, les
deux chercheurs recommandent aux internautes daccder
aux sites tels que Facebook au travers du rseau Tor de manire standard, en passant par lURL officielle : https://facebook.com ; sans utiliser le service cach facebookcorewwwi.
onion. En effet, cette approche limite les attaques par corrlation telles que celle qui a pu tre dmontre lors de cette
prsentation.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

CLOSING KEYNOTE: Bringing Security and Privacy to


Where the Wild Things Are
Runa A. Sandvik (@runasand)
Slides
+
http://conference.hitb.org/hitbsecconf2015ams/wp-

content/uploads/2014/12/KEYNOTE-CLOSING-Runa-Sandvik-Bringing-Security-and-Privacy-to-Where-the-WildThings-Are.pdf
La HITB sest conclue par une prsentation de Runa Sandvik, une ex-pentesteuse, reconvertie dans la protection de
la vie prive. La Scandinave a rappel, pour les professionnels de la scurit, limportance de ce sujet dactualit, qui
fait pourtant peu lobjet de prestation par les entreprises.
Selon elle, il est important de sensibiliser les internautes
aux risques existants et de les aider faire les bons choix
lorsque cela est ncessaire.

Rfrences
http://conference.hitb.org/hitbsecconf2015ams/wp+
content/uploads/2015/02/
http://photos.hitb.org/index.php/2015-AMS-GSEC/HIT+
B2015AMS

49
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

> Confrences scurit

Hack In Paris
par Romain LEONARD, Damien GERMONVILLE
et Clment MEZINO

> Jour 1
Keynote : analogue network security
Winn Schwartau
Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/

Pourtant des solutions pourraient tre mises en place pour


mesurer la scurit et ainsi la matriser. La scurit dun
coffre fort est value en fonction de la dure ncessaire
pour y pntrer (Pt). Les banques mettent en suite en place
un systme permettant la dtection dincidents (Dt) et la
raction (Rt) face eux en un temps infrieur cette dure.
La formule de la scurit est donc : Dt + Rt > Pt.

winn_schwartau_analogue_network_security.pdf

Cette confrence douverture a dbut par une introduction


de la confrence et des nouveaux locaux. Winn Schwartau
en a profit galement pour remercier les sponsors sans qui
une telle confrence ne serait pas possible.
Pour sa prsentation, Winn Schwartau nous a prsent un
nouveau point de vue sur la scurit des Systmes dInformation, la scurit analogique. Il a partag avec nous les
axes majeurs de son livre du mme nom.
Ce point de vue provient de la constatation que la scurit
nest pas un lment binaire, en opposition un lment
analogique. En effet, on ne peut pas aisment quantifi la
scurit et celle-ci nest pas prsente ou non, elle est uniquement une dfense que lon espre/suppose suprieure
aux attaques.

50

Winn Schwartau en a profit pour rappeler que la scurit,


telle que nous la connaissons actuellement, est un chec.
En effet, la majeure partie de nos SI sappuient sur TCP/IP
qui ntait lorigine quune exprience et qui noffre aucune scurit, depuis les annes 80 on cre des systmes et
attend quil soit scuris par la suite. Cest encore une fois
sur ce modle bancal ou la scurit nest pas introduite ds
lorigine que sont dvelopps les objets connects (IoT).

Pourquoi ne pas appliquer cette mthode nos SI? Dans


ltat actuel, ce nest pas possible car on ne connait pas la
dure ncessaire pour raliser les actions dangereuses, ou
bien celle-ci est trop courte. Pour pouvoir mettre en place
cette mthode, il faut introduire une notion de temps dans
les actions sensibles du SI.
Pour mettre en place une dfense en profondeur il suffirait
alors daugmenter les dures quand lutilisateur est connect depuis une zone non scurise.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

You dont hear me but your phones voice interface


does
Jose Lopes Esteves et Chaouki Kasmi

Copy & pest : a case-study on the clipboard, blind trust


and invisible cross-application XSS
Mario Heiderich

Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/

Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/

lopes_esteves_kasmi_you_dont_hear_me.pdf

Jose Lopes Esteves et Chaouki Kasmi de lANSSI ont prsent une confrence originale sur les dangers des commandes
vocales utilises sur la plupart des systmes dexploitation
daujourdhui et proposs par Google, Apple ou Microsoft,
via leur environnement de bureau ou smartphones.
Le but de leur attaque tait de faire effectuer des actions
un utilisateur de manire silencieuse. Les bnfices sont
multiples : escroquerie, manipulation dinformations, usurpation didentit, etc.

mario_heiderich_copy_and_peste.pdf
http://fr.slideshare.net/x00mario/copypest

Mario Heiderich sest intress au fonctionnement du


presse-papier de nos OS prfrs. Pour ceux qui ne le
savent pas dj, le presse-papier, sous Windows comme
sous Linux, ne contient pas que du texte, mais des objets,
comme le dfinit le dfinit le brevet dpos par Microsoft
pour Windows 3.1.
En effet, lors de la copie, les programmes insrent la donne slectionne sous plusieurs formes : texte, rtf, html,
images, objets MS Office... De la mme faon lorsquune
donne est colle, le programme de destination choisit la
forme quil souhaite dans le presse-papier.
Mario a dcouvert que cette mcanique pouvait tre utilise
pour dclencher des XSS lors de la copie de donnes vers
un navigateur Web. Pour ce faire, il a amlior lancienne
technique qui consistait mettre des XSS dans du texte en
taille 0, lpoque des premiers forums. Il a dcid dutiliser les noms des polices et pour tre encore plus discret,
il utilise les polices rgionales. Leurs noms ne sont jamais
affichs, mais elles sont transmises lors du copi-coll.

Le principe de lattaque rside dans le fait dinjecter des


commandes dans les rcepteurs FM prsents au sein des
kits mains libres des tlphones afin que celles-ci soient
transmises linterface de commande vocale (souvent active par dfaut).

Lors de ces analyses, il sest heurt des protections mises


en place dans les navigateurs, mais il a t capable de les
contourner. Il a par exemple t capable dutiliser les formats : OpenOffice, MS Office, PDF et XPS pour dclencher
une XSS dans lditeur de Gmail.
En allant plus loin il a t capable dutiliser Flash, qui permet de modifier manuellement le contenu du presse-papier, pour infecter celui-ci.

Via une antenne, ils ont russi recrer les signaux correspondant certaines commandes vocales permettant
deffectuer des actions sur un smartphone, de manire silencieuse et quasi invisible. Les commandes vocales tant
implmentes tous les niveaux des systmes dexploitation, laccs aux SMS, Internet et aux applications est
possible par ce biais.
Un systme de modulation AM muni dun amplificateur de
signal permet ainsi dinjecter des commandes sur tous les
tlphones prsents dans un rayon de 2m. Il est possible,
selon la taille de lantenne et sa puissance, dtendre ce
rayon environ 11m.
Les chercheurs conseillent ainsi de dsactiver linterprteur
de commande vocale par dfaut (ce qui en plus, conomisera la batterie de lappareil). Il est plus difficile pour les
fabricants dendiguer cette attaque, si ce nest en proposant un systme de reconnaissance vocale, ou de limiter le
rayon dactions possibles par ce biais

Les contournements quil a utiliss sont pour la plupart


corrigs. Cependant, il reste plus sage dutiliser le raccourci Ctrl-Shift-V, de toujours copier les textes vers un blocnote avant de les coller et bien entendu de naviguer avec
lextension NoScript.

51
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

HIP

Backdooring X11 with much class and no privileges


Matias Katz
Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/
matias_katz_backdooring_x11.pdf

Matias Katz, un pentesteur spcialis dans la scurit


oriente Web a prsent un concept de backdoor sur les
systmes utilisant nativement lenvironnement graphique
X11.
Sa backdoor est base sur le logiciel de communication
interprocessus D-BUS. Ce logiciel a la particularit dtre
install par dfaut sous forme dun paquet disposant de
nombreux modules interagissant avec les divers lments
graphiques dun systme. Ce dernier est notamment utilis
pour afficher linterface de connexion au systme.
Puisque les divers modules de D-BUS ne peuvent exister
lun sans lautre, il est possible de lancer un programme,
mme lorsque linterface de connexion est prsente. Il suffit ainsi de choisir la fonction de dblocage (unlock) pour
contourner linterface de connexion. Seulement, lorsque
linterface est prsente, seules quelques actions sont possibles au niveau hardware : la prise Jack est utilisable,
lcran et le clavier.

travers deux dmonstrations, le pentesteur a russi


contourner linterface de connexion (lockscreen) simplement en branchant un couteur sur la prise Jack, ou en
abaissant et relevant a plusieurs reprises lcran.
Ces vnements sont couts par la backdoor prsente
sur le systme et permettent ainsi dutiliser un ordinateur
en laissant trs peu de traces de compromission, sans avoir
entrer de mot de passe pour se connecter la session
dun utilisateur.

Breaking in bad (im the one who doesnt knock)


Jayson E. Street
Jason commence par se prsenter, mais surtout par rappeler quil est quelquun de trs gentil et adorable, il appuie
bien sr le fait quil faudra sen souvenir pour le reste de la
prsentation. Lobjectif de cette prsentation est de prsenter trois cas dintrusion Redteam par Social Engineering quil
a raliss. Ces dmonstrations, vido lappui, nont pas
pour but de montrer quel point il utilise des techniques
avances, mais quel point il est simple de sintroduire sur
un SI. Il martle quil ne sert rien de se proccuper des
APT tant quil sera aussi facile daccder physiquement
nos SI.
Ces mthodes dattaques sont des plus classiques :
Le technicien rparateur, le livreur ou le candidat lem+
bauche ;
Lauditeur ou le directeur presser, avec une mission de
+
la plus haute importance ;
Lexcentrique qui na aucune chance de rentrer, tel
+
quune personne avec un dguisement de tortue Ninja.
Il ajoute que toutes ces techniques fonctionnent encore
mieux si lon est en pleine conversation tlphonique.
La plus amusante de ses missions est certainement celle
quil a ralise pour le trsor public amricain. Il lui avait
pourtant assur que leur scurit tait impntrable. Avec
quelques recherches sur Internet, il a russi dcouvrir une
filiale implante dans une zone commerciale. Aprs un appelle son client, bien embarrass, on lui a confirm que
cette filiale tait connecte au SI, par contre on lui a interdit de parler quiconque de la socit, demand de rester
dans les zones accessibles au public. Il pouvait uniquement
parler au personnel de mnage, mais pas lui mentir. Qu
cela ne tiennent. Il est entr lheure de fermeture des bureaux laide de son tlphone portable, viss son oreille.
Il na parl quau personnel de mnage : Jaimerai entrer
dans cette pice. , Je nai pas la cl , Je suis press .
Tout tait vrai, il navait plus de batterie sur son tlphone...
Pour se prmunir contre ce type dattaque, il faut duquer
le personnel des entreprises, pas le fliquer. Il faut leur faire
comprendre quils font partie de la solution. Pour cela, il faut
commencer lducation par des choses qui les touchent,
comme leur apprendre scuriser leur rseau WiFi personnel et le Facebook de leur enfant. Il faut quil comprenne
quun G33k avec une cl USB est un vrai danger.

52
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Bootkit via SMS: 4G access level security assessment


Timur Yusinov
Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/
timur_yusinov_root_via_sms.pdf

Cette confrence prsentait un ventail plutt complet de la


scurit des divers quipements matriels et logiciels touchant la technologie 4G, aujourdhui largement utilise
dans nos contres. Le principe tant de dcouvrir quel
point il est scuris pour un utilisateur lambda dutiliser
son tlphone afin de naviguer via la 4G. Plusieurs quipements ont ainsi t tests : Carte SIM, modem 4G, quipement radio/ telecom/ Internet (IP).
Aprs avoir fait un tour rapide de la situation en Russie sur
les quipements IP utiliss, la situation tait sans appel. La
plupart des quipements permettaient, une fois linterface
dadministration passe, de raliser de nombreuses actions
distance, sans que lutilisateur final ne sen aperoive.
Selon les cas, les chercheurs taient en mesure de forcer la
mise jour dun modem 4G, de modifier le mot de passe
dun portail daccs via un simple SMS, ou encore daccder
au rseau interne dun oprateur mobile.

damplification : Rseau, CPU, RAM, ROM), ce dernier a prsent plusieurs cas dans lesquels les entreprises ont tent,
en vain, de se protger dune attaque
Parmi le top 5 des pires mthodes de mitigation rencontres, nous avons :
5. Lutilisation dun systme de log afin de bannir les
adresses qui effectuent trop de requtes. Le problme tant
que chaque requte est ainsi loggue, ce qui finit par remplir la mmoire du systme vitesse grand V, jusqu ne
plus fonctionner.
4. Le trafic la demande , qui consiste absorber tout
le trafic passant en dterminant quel est le trafic rel
et le trafic utilis pour le DDoS. Cependant, cette technique
accepte souvent tout le trafic qui est considr comme lgitime et ne protge finalement de rien.

Selon les cas, les chercheurs


taient en mesure de forcer la mise jour
dun modem 4G, de modifier le mot de passe
dun portail daccs via un simple SMS, ou
encore daccder au rseau interne dun oprateur mobile.
3. Lutilisation dun CDN (content delivery network). Cependant, sil na pas t activ avant, les nombreuses requtes
sur les rpliques vont tout de mme atteindre le serveur
central, pour obtenir les donnes prsentes en cache.
2. Lutilisation dun CDN avec des noms de domaine complexes, afin que lattaque ne devine jamais quel est le vrai
serveur attaquer. Mais encore une fois, des services tels
que viewdns.info, gardant en mmoire les associations
dadresse IP avec un domaine, peuvent djouer ce plan.

Le but ultime des chercheurs tant de pouvoir installer un


bootkit distance via un simple SMS. Cela est encore en
cours.

1. Le blocage des IP au fil de leau. Comme on peut sy attendre, cette solution peut convenir contre un DDoS lger.
Cependant, cest le meilleur moyen de saturer la RAM qui
doit traiter le blocage de milliers dIP en mme temps.

DDOS mitigations epic fail collection


Moshi Zioni
Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/
moshe_sioni_ddos_mitigation_epic_fail_collection.pdf

Cette confrence tait un retour dexpriences reprenant


des cas rels de DDoS vcus par les clients de Moshi Zioni,
confrencier, consultant pour de nombreuses entreprises.
Aprs une brve explication sur le principe des botnets (rseaux dordinateurs contrls par un attaquant) et des diffrentes mthodes de DDoS utilises (DDoSaaS par un thier,
attaque du back-end plutt que le front-end, mthodes

La conclusion du chercheur est quil faut savoir investir du


temps et de largent avant dtre victime dune attaque de
DDoS. La prparation est le meilleur moyen, la formule magique nexiste pas

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

53

HIP

Debate : the right to self defense in cyberspace


Jeroen van der Vlies, Don Eijndhoven et Bob Ayers
La premire journe sest termine par un dbat sur un
sujet dactualit : Le droit la lgitime dfense au sein
du cyberespace . Celui-ci fut anim par trois experts, tout
dabord Jeroen van der Vlies, expert en cyber-scurit depuis plus de dix ans, qui dispose de nombreuses certifications autant techniques que managriales. Ensuite, Don Eijndhoven, CEO dune socit spcialise en cyber-securit,
consultant pour de nombreux blogs et magazines dans le
domaine, cest aussi un habitu des confrences. Et enfin,
Bob Ayers, fort de 30 ans dexprience dans larme amricaine, maintenant charg damliorer la scurit du Departement Of Defense amricaine.
En tant que modrateur, Winn Shwartau - le premier confrencier de la journe - tait prsent. Dans un dbat anim
denviron 1h30, ils ont expos leur point de vue sous lil
du public de lacadmie Fratellini. La plupart des figurants
considraient ainsi quune lgislation autorisant dans certains cas la self-dfense tait ncessaire. Le dbat portait
ainsi sur les diffrentes rgles que pourrait porter cette lgislation afin dviter les abus.

> Jour 2
Keynote: attacking secure communication: the (sad)
state of encrypted messaging
Thomas Roth
Thomas Roth, nous a prsent le rsultat de 12 mois danalyse et de tentative pour casser des messageries dites scurises . Elles permettent le chiffrement des messages en
promettant une confidentialit totale des communications.
Cependant le prsentateur nous dmontrera plusieurs reprises comment il a t possible de rcuprer ces messages
censs tre scuriss .
Depuis les rvlations dEdward Snowden, les internautes
ont commenc prendre conscience que leur vie prive
pouvait tre trs facilement espionne. Ont alors t proposes des solutions telles que spiderOak , qui a fait lobjet
dune recommandation de la part du lanceur dalerte, protonMail, Tutanota
Cependant, voici une liste de vulnrabilits qua pu trouver
lexpert, permettant de mettre en dfaut ces efforts mis en
uvre pour rendre confidentiels les changes :

54

Sur les solutions comme ProtonMail et Tutanota, des vulnrabilits de types XSS, CSRF permettaient par exemple en

rcuprant la cl prive afin de dchiffrer le contenu des


mails.
De plus une multitude de services potentiellement vulnrables taient ouverts (FTP, SVN, SSH ) sur les serveurs de
ProtonMail.
Une autre solution comme SilentCircle, cofond par le pre
de PGP, est prsente par Thomas Roth. Il y a cependant relev des dfauts, comme un mauvais suivi du versionning,
la difficult compiler soi-mme le projet.
Il recommande toutefois les projets ports par la EFF et
ceux dOpen Whisper pour terminaux mobiles tels que :
Textsecure, RedPhone.
Server-side browsing considered harmful (SSRF)
Nicolas Grgoire
Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/
nicolas_gregoire_server_side_browsing.pdf

Nicolas Grgoire a prsent diffrentes vulnrabilits SSRF


qui lui ont permis de gagner aux environs de 50000$ sur
des Bugs Bounty.
Il a commenc par nous prsenter son approche du bug
Bounty. Son but tait de trouver des vulnrabilits sexy ,
qui ont un impact important sur la cible, pas de XSS. Et des
cibles qui en imposent et qui ont de vraies quipes scurit,
telles que Yahoo ou Facebook, et si possible qui rapportent.
Ensuite, il a prsent les vecteurs de vulnrabilits quil recherche habituellement : Upload depuis URL, import de flux
RSS, OAUTH, SAML, les proxys pour contenu mixte, les codes
hbergs.
Pour lexploitation des vulnrabilits, il faut utiliser les gestionnaires dURL file://, php://, mais surtout les plus couramment utiliss http:// et https://. Avec ces deux derniers,
les objectifs sont les suivants, par ordre dcroissant dimportance : la boucle locale, le multicast, le LAN, Internet.
Pour ces objectifs, il a dtaill les cibles recherches : monitoring, interface dadministration bloque pour laccs par
Internet, mais pas sur la boucle locale...
Une fois ces mthodes de recherches expliques, Nicolas a prsent des mthodes de contournement de liste
noire. Pour contourner une liste nautorisant pas les IP
internes, il est par exemple possible dutiliser un enregistrement DNS que lon contrle ou un service tel que xip.
io. Pour contourner un blocage de 127.0.0.1, il est possible
daccder 127.0.1.1. Mais la mthode la plus amusante

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

prsente est celle des rcritures dIP. Cette mthode permet par exemple dcrire 169.254.169.254 sous la forme
425.254.0xa9.0376, voir http://www.pc-help.org/obscure.
htm.

tme de plug-ins du systme est un de ces points forts de


par les horizons quasi illimits quil propose, mais aussi sa
plus grande faiblesse, puisque le code propos par des tiers
nest pas forcment contrl.
Plusieurs dmonstrations ont ainsi prouv quavec des
droits suffisants, il tait trs facile pour un attaquant de
modifier le mot de passe dun administrateur de lapplication, voire de modifier le destinataire dune transaction. Via
son logiciel spcialis nomm SAPSucker , lexpert en
scurit a prouv quil tait trs simple de rcuprer des
fichiers sensibles de lapplication et daccder certaines
tables contenant des donnes critiques.

Il a enchain avec sa liste de trophes, parmi lesquels celui


de Yahoo avait t class comme feature : Thank you
for your submission to Yahoo! We are aware of this functionality on our site and it is working as designed. Please
continue to send us vulnerability reports!.
Un peu agac, il a donc creus. Il a dcouvert un WebService sur le port 9466 avec le namespace ymon. Une recherche Google lui a permis dobtenir, via le seul rsultat, le
fichier WSDL. Celui-ci contenait une mthode exec() limite
des plugins Nagios, mais aprs un peu de bidouille, il a
obtenu une RCE et la coquette somme de 15k$. Pour finir,
il est repass aprs la correction, a contourner les filtres et
empoch 6600$.
Pour conclure sa prsentation, il a rappel les bonnes pratiques en matire darchitecture rseau. Un serveur qui na
pas besoin daccs au SI, ne doit pas avoir accs au SI.
SAP security: real-life attacks to business processes
Arsal Ertunga
Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/
arsal_ertunga_sap.pdf

La conclusion principale du confrencier est que le systme


doit renforcer sa scurit via des contrles plus profonds
et des restrictions plus drastiques. Malheureusement, les
diteurs de composants ne semblent pas sen proccuper,
comme la prouv Arsal Ertunga, en prsentant et en dtournant lutilisation dun composant permettant de communiquer via les rseaux sociaux. Une ouverture vers le
monde simplifie dont se passerait pourtant bien le progiciel le plus utilis au monde
Fitness tracker: hack in progress
Axelle Apvrille
Axelle Apvrille a pu nous prsenter ltat de ses recherches
sur le traqueur Fitbit, un objet connect permettant danalyser lactivit de son porteur.
Elle a pu nous prsenter les vulnrabilits maintenant corriges que pouvait prsenter ce systme : divulgation des
activits des utilisateurs sur internet, traabilit du porteur.

SAP est un progiciel de gestion intgr dvelopp par la socit ponyme. Trs connu dans le monde de lentreprise,
il est utilis par 87% des membres du classement Forbes
2000. lheure actuelle, 74% des transactions bancaires
mondiales passent par des systmes SAP. La scurit du
progiciel intresse ds lors de nombreux acteurs du march, tout comme les pirates.
travers une confrence mene par Arsal Ertunga, fondateur dune entreprise spcialise dans les produits SAP,
nous avons pu voir que la scurit de ce systme reste
complexe et, par consquent, est difficile matriser par
les entreprises lutilisant. De nombreux vecteurs dattaques
diffrents sont possibles, le plus critique pour le systme
provenant des composants installs par des tiers. Le sysCe document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

55

HIP

Dans le but dexploiter le traqueur, elle a cherch comprendre comment fonctionne la communication entre le
bracelet et les serveurs Fitbit. En utilisant du Fuzzing, il a t
possible trouver les commandes permettant la transmission
des donnes entre ces derniers.
Cependant les donnes sont chiffres par le traqueur et
dchiffres par les serveurs de Fitbitt, il na donc pas t
possible de rcuprer, daltrer et dexploiter ces changes
en ltat actuel des recherches.
Oracle peoplesoft applications are under attack!
Alexey GreenDog Tyurin
Alexey GreenDog Tyurin a pu nous prsenter un outil de
sa propre ralisation permettant entre autres dlever ses
privilges sur les interfaces dOracle PeopleSoft.
Les applications dOracle PeopleSoft sont prsentes dans de
nombreuses grandes entreprises et permettent la gestion
du personnel, de la comptabilit, des relations entreprises,
des chaines de productions, et mme dans de nombreux
tablissements scolaires amricains les notes des tudiants.
Il a dcouvert que si une interface venait tre accessible
sur internet, des attaques de type brute force ne seraient
aujourdhui pas contres.

PeopleSoft, de nombreux comptes possdent des mots de


passe par dfaut qui permettent facilement un attaquant
de sauthentifier.
Aujourdhui une technique apporte par Alexey GreenDog
Tyurin permet dexploiter la valeur du cookie dauthentification nomm PS_TOKEN pour lever ses privilges.
Ce dernier peut tre obtenu sans tre authentifi lors de la
simple consultation dun formulaire pour une candidature
ou de rcupration de mot de passe. La valeur de ce Cookie
peut tre modifi de sorte changer did utilisateur et ainsi
lever ses privilges. Loutil prsent tockenchpoken
analyse la valeur du Cookie, et en utilisant du brute-force,
retrouver la valeur du Node Password . Il est alors possible de recrer un Cookie pour pouvoir sauthentifier avec
lutilisateur de son choix.
Exploiting tcp timestamps
Veit Hailperin
Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/
veit_hailperin_still_exploiting_tcp_timestamps.pdf

La prsentation dbute par la prsentation de lorigine


des TCP Timestamps. Ils ont t introduits en 1992 par la
RFC1323 pour rsoudre de problmes doverflow sur les ID
de paquets, ou PAWS.
La suite de la prsentation consiste expliquer les diffrents vecteurs dattaques introduits par les TCP Timestamps
et limpossibilit de correction sans rintroduire PAWS ou
empcher la protection contre le SYN Flood. La chronologie
prsente est la suivante :

56

De plus sur les plateformes Weblogic, un utilisateur nayant


pas les droits pour dployer une application peut en ralis utiliser la fonction toujours prsente mme si le bouton lappelant nest pas disponible pour ce dernier. Dans
le cas dun environnement Windows il est mme possible
duploader larchive de lapplication distance (en spcifiant une URL du type : \\evilserver\shell.jar), dans le
cas dun Linux, seules des archives dj prsentes sur la
plateforme peuvent tre dployes. Sur les plateformes de

+1) 2001 : Calcul de luptime ;


2) 2005 : Identification dhtes accessibles depuis plu+
sieurs IP ;
3) 2005 : Variation des attaques en utilisant le dfaut
+
physique des horloges ;
4) 2006 : Identification dhte public exposant des ser+
vices sur TOR ;
+5) 2015 : Rvlation des load-balancing actif-actif ;
+6) 2015 : Identification de typologie rseau ;
7) 2015 : Amlioration des dtections dOS des machines
+
NATes en ciblant une une les machines identifies.

Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Bien que la chronologie des points 5 et 6 soit errone, ces


techniques taient dj utilises depuis longtemps quand
jai dbut en 2011, le 7e point est trs simple, mais introduit pour moi une mthode laquelle il aurait fallu penser
plus tt.

+Information de connexion Active Directory ;


+Journaux dauthentification.
Comme toujours, les outils quils ont labors sont accessibles publiquement sur Github.
Pour conclure, les constructeurs doivent arrter dexposer
des donnes sensibles en SNMP et les clients doivent utiliser des noms de communauts srs.
Revisiting ATM vulnerabilities for our fun and vendors
profit
Alexey Osipov et Olga Kochetova

Pour conclure, la seule solution fiable lheure actuelle est


de bloquer la propagation des TCP Timestamps au niveau
des pare-feu.

Alexey Osipov & Olga Kochetova ont pu nous prsenter


comment ils ont pu, en accdant toutefois la partie suprieure dun distributeur de billets et en y connectant un
rasberry Pi, rcuprer le code PIN dun utilisateur et dclencher lextraction de billets depuis les cassettes.

Simple network management pwnd: information data


leakage attacks against snmp enabled embedded devices
Deral Heiland et Mathew Kienow
Slides
+
https://www.hackinparis.com/sites/hackinparis.com/files/
deral_heiland_simple_network_management_pwnd.pdf
https://github.com/dheiland-r7/snmp

Le SNMP, ou Simple Network Management Protocol, est


galement connu sous la forme Security is Not My Problem.
En effet, ce protocole est trs utilis sur les rseaux dentreprise pour la surveillance et la gestion des quipements,
notamment les quipements rseau et les imprimantes,
mais sa scurisation est rarement prise en compte. Pour
la surveillance, la communaut par dfaut est public .
Celle-ci est trs rarement modifie, or le nom de communaut est la seule protection prvue pour empcher la
consultation des donnes.
Selon Deral Heiland, lanalyse ralise en test dintrusion
sarrte l et les donnes rcoltes ne sont pas analyses.
Cest pourquoi, aprs nous avoir prsent le protocole un
peu plus en dtail, lui et Mathew Kienow nous prsentent
les perles quils ont pu dcouvrir en creusant les informations disponibles sur les quipements leur disposition.
Parmi les donnes quils ont pu extraire, certaines sont difiantes :

+Cl daccs au WiFi ;


+Empreintes de mots de passe dadministration ;
+Mots de passe dadministration ;
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

57

LActualit du moment
Que sest-il pass durant ce printemps ?

Bruno French Riviera

Retour sur lattaque Word du moment et


quelques vulnrabilits qui ont fait parler
delles.

ACTUA
LIT
DU
MOMENT

Spam
Social engineering, Word et macro
Par Jean-Yves KRAPF

Attaque
Redirect to SMB
Par Cyril LORENZETTO

Concept
HSTS-HPKP
Par Romain LEONARD

58
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Attaque Word/Macro/Dridex

Quinn Dombrowski

Par Jean-Yves KRAPF

Introduction
Au cours des premires semaines du mois de juin 2015,
nous avons t la cible dune campagne de spear phishing au mme titre quun grand nombre dentreprises
franaises et europennes. Le CERT-XMCO vous propose une
analyse de ces vnements.

Ceci est videmment en adquation avec la faon dont le


corps du message nous prsente ce document. Il nous est
toujours dsign comme une facture, mais notre interlocuteur la dcrit comme une dette, une commande ou encore
une facture actualise.

Des dizaines demails ont t reus sur les adresses publiques de la socit, mais galement par les consultants.
Chacun de ces messages possdait un document au format
Word en pice jointe (ou encore Excel). Celui-ci tait nomm diffremment selon les e-mails, mais toujours form
de numros et de quelques lettres majuscules, crant une
impression de rfrence comptable (ex: B2E8_0CF97E93F).

59
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Analyse du document Word


Lorsque lon sintresse aux expditeurs, on constate que
les noms et entreprises utiliss dans la signature ne correspondent pas toujours aux domaines des emails. En revanche, les noms de domaine correspondent des entreprises relles. On constate galement, dans len-tte de
le-mail, que les messages ont transit par des serveurs en
Inde, au Viet Nam ainsi quen Slovnie.

Ce document ne comporte aucun contenu autre que la


charge malveillante. Il sagit simplement dune macro
sexcutant louverture du fichier. Pour que celle-ci soit
oprationnelle, il est ncessaire que lexcution automatique des macros soit active, ou que lutilisateur lautorise
explicitement.

Des dizaines demails ont t reus sur les


adresses publiques de la socit,
mais galement par les consultants.
En revanche, certaines pices jointes des emails reus
contiennent le nom de la personne cible afin de rendre
lattaque encore plus crdible.

Figure 1 - Ouverture du document Word


Lorsque lon tente de visualiser le contenu de la macro au
sein de Word, un mot de passe est demand. Nanmoins,
il est tout de mme possible de lextraire via diffrents logiciels spcialiss grce auxquels nous obtenons un code
lgrement obfusqu.
Au cours de nos diffrentes analyses, il nous a t possible didentifier plusieurs techniques dobfuscation. Ces
dernires consistent en lajout de boucles incrmentant
un entier ou parcourant une chane, et ce, afin de cacher
une quinzaine de lignes effectives au milieu dune centaine
dinstructions diffrentes. Les chanes sont quant elles
masques laide de la fonction strreverse (criture
de droite gauche) ou encore en utilisant le codage ASCII.

Note intressante, des prnoms communment utiliss taient particulirement adapts notre entreprise (nous avons plusieurs Julien et une Stphanie) et potentiellement beaucoup dautres...

60

Figure 2 - Script extrait, aprs un premier nettoyage


Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Word/Macro/Dridex

Les donnes obtenues sont crites dans un fichier Visual


Basic stock sur le disque dur. Plus prcisment, il est plac
dans le dossier temporaire dont le chemin est rcupr par
la fonction environ(TEMP) .
Analyse du fichier tlcharg

Figure 3 - Script extrait, aprs rcriture complte

Ce fichier tlcharg ressemble grandement au prcdent.


En effet, on y reconnat les mmes mthodes dobfuscation. Ce script va effectuer une requte vers ladresse IP
212.76.130.85 (base en Russie) afin de rcuprer un excutable.

On constate alors que le code tente de tlcharger le contenu dun pastebin. Plusieurs rfrences ont t trouves :

+http://pastebin.com/2sFBJeqD
+http://pastebin.com/vmCDsgcn
+http://pastebin.com/1YzPHtum
Chacune a t ferme quelques jours aprs la rception de
le-mail.

Figure 5 - Script pastebin, aprs un premier nettoyage

Figure 6 - Script Pastebin, aprs rcriture complte


Figure 4 - Aperu dun pastebin avant clture
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

61

Lexcutable rcupr est en fait le malware Dridex


[1]. Une fois install, ce dernier attend que lutilisateur se
connecte sur son application bancaire, rcupre les identifiants/mot de passe via une iframe injecte sur la page de
connexion et les envoie au pirate.
Le malware Dridex et son cousin Cridex sont membres de
la famille GameOver Zeus , un botnet P2P bas sur des
composants du trojan ZeuS. Le rle principal de ce botnet
tant de transfrer les identifiants vols en toute discrtion
vers les pirates. Ces donnes sont ensuite revendues sur
des forums spcialiss ou sur le darknet.

Conclusion
Cette attaque fait partie de la nouvelle vague de macro
malware ciblant en majorit les entreprises.
Ce choix nest pas anodin puisquil est courant pour des
professionnels dutiliser ce genre de script. Ils sont alors
naturellement plus enclins ignorer un message dalerte,
lorsque ce mcanisme na pas t dsactiv par dfaut.
On peut noter quelle est particulirement russie pour plusieurs raisons :
Le nombre demails envoys (nous en avons reu plus
+
dune cinquantaine sur nos emails XMCO) ;
La crdibilit du contenu des ces emails (peu de fautes,
+
prtextes cohrents) ;
Le nombre dentreprises infectes au vue des premiers
+
retours que nous avons.
Prcisons encore que cette famille de malware a prolifr
au dbut des annes 2000, cest--dire il y a 15 ans et la
majorit des utilisateurs actuels na donc pas t sensibiliss aux risques lis cette technologie.

Rfrence
http://wearesecure.blogspot.fr/2015/06/dridex-la-cy+
ber-attaque-qui-mitraille.html

62
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Redirect to SMB

Nathan ONions

Par Cyril LORENZETTO

>Introduction
Un bug g de 18 ans permet un attaquant de voler les identifiants de ses victimes et ce, quelle que soit la version de Windows utilise (Windows 10 compris).
La vulnrabilit a t baptise Redirect to SMB , car elle fait appel, dune part, lutilisation du protocole SMB (Server
Message Block) utilis par le noyau de Windows lors des communications rseau. Dautre part, parce que lattaquant redirige
la victime vers son serveur malveillant SMB.

>SMB Relay (2001) et les correctifs MS08-068 (2008) / MS10-012 (2010)


Bref historique
Tout dbute le 31 mars 2001 lorsque Sir Dystic du groupe CULT OF THE DEAD COW (cDc) publie le logiciel SMBRelay lors de sa
prsentation @lantacon (Atlanta, Georgie). Ce logiciel exploite le principe de lattaque par relais qui consiste faire croire aux
deux victimes quelles communiquent directement alors quun systme pirate relaie leur conversation.
7 ans aprs, Microsoft publie le correctif MS08-068 afin de corriger la vulnrabilit exploite par le logiciel SMBRelay. Un attaquant tait en mesure de rediriger une tentative de connexion SMB vers la machine mettrice puis dexploiter les identifiants
dauthentification pour sy connecter (technique aussi appele credential reflection ). De ce fait, lattaquant tait en mesure
dexcuter du code avec les mmes privilges que la victime. Cependant, ce correctif ne corrige que cette rflexion vers la
machine mettrice, cest--dire quil prvient le relayage du challenge lhte qui la dlivre. Si les identifiants sont transmis
un autre hte, la vulnrabilit reste exploitable [1].
Enfin, en 2010, une autre vulnrabilit, rfrence CVE-2010-0020, a t dcouverte. Celle-ci rsulte dune erreur dimplmentation dans la gnration des challenges alatoires dans le mcanisme dauthentification SMB NTLM. Cette vulnrabilit
na pas de rapport avec les attaques par relais, mais en facilite leur exploitation. En effet, il est possible de rejouer des challenges qui sont dj apparus.
Dans cet article nous nallons pas dtailler cette vulnrabilit. En revanche, nous allons nous pencher sur les principales diffrences entre les attaques de capture SMB (anciennes et celles de nos jours) et la vulnrabilit MS08-068.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

63

Principe de lattaque SMB Relay


Afin de comprendre le fonctionnement de lattaque, il est ncessaire de connatre le mcanisme dauthentification SMB NTLM.
Tout dabord, il existe deux mcanismes dauthentification SMB : NTLM et Kerberos. Nous allons nous focaliser ici sur le protocole NTLM.
Quest-ce que SMB ?
SMB (Server Message Block) est un protocole qui permet de
partager des ressources (fichiers, imprimantes, etc.) sur des
rseaux locaux. Son port par dfaut est le 445.
Quest-ce que NTLM ?
NTLM (NT Lan Manager) est un protocole didentification utilis dans plusieurs implmentations des protocoles rseau
Microsoft. NTLM est un protocole dauthentification de type
challenge/response , cest--dire que les clients sont en
mesure de prouver leur identit sans dvoiler leur mot de
passe au serveur.
Le mcanisme gnral de challenge/response se ralise en quatre temps :

+1. Le client se connecte au serveur ;


+2. Le serveur envoie un challenge au client ;
+3. Le client rpond au challenge envoy par le serveur ;
+4. Le serveur rpond en fonction de la rponse du challenge et du secret partag (mot de passe).
Quest quun challenge ?
De manire gnrale, cest un nombre alatoire gnr secrtement par le serveur et utilis de manire
unique (aussi appel nonce).
Illustration du principe de challenge-response :

N.B. : Le secret est partag par les deux parties (client


et serveur).

Le principe simplifi du challenge/response de


SMB NTLMv1 [2] [3] :

64
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Redirect to SMB

Le logiciel SMBRelay
Le fonctionnement de SMBRelay est le suivant : le logiciel reoit une connexion UDP sur le port 139 et relaie ensuite les paquets entre le client et le serveur en modifiant certains paquets, si ncessaire.
Une fois que le client sest authentifi, le relais SMB le dconnecte. Ainsi, lattaquant qui contrle le serveur relais SMB, reste
connect. Par consquent, la session de la victime (client) est usurpe. Dans lillustration ci-dessous, lattaquant reprsente le
relais SMB :

Premirement, le client essaie de sauthentifier en passant par lattaquant (via des attaques de phishing), celui-ci transmet et
rceptionne les donnes mises par le client et retournes par le serveur SMB. Une fois que lattaquant rceptionne le message daccs autoris, il dconnecte le client en lui envoyant un message daccs refus.
Il existe dautres logiciels permettant de mener cette attaque. En effet, le module smb_relay de Metasploit offre la possibilit
dexploiter cette vulnrabilit. Cependant, ce module supporte uniquement la version 1 du protocole NTLM (NTLMv1).
Principe de lattaque par rflexion (MS08-068)
La vulnrabilit MS08-068 a fait couler beaucoup dencre lors de sa parution en 2008. Cette vulnrabilit entre dans la catgorie des attaques par rflexion. Le principe est le suivant :

+1. Lattaquant fait en sorte que la victime se connecte lui (lien malveillant) ;
+2. Lattaquant tablit une autre connexion vers la victime et reoit le challenge de 8 octets ;
+3. Lattaquant retourne le challenge reu ltape 2 ;
+4. La victime rpond lattaquant par son empreinte de mot de passe ;
+5. Lattaquant rpond au challenge envoy par la victime avec lempreinte reue ltape 4 ;
6. La victime autorise laccs sur sa propre machine
+
lattaquant.

Illustration de lexploitation de la vulnrabilit MS08-068 :


Lexploitation de la vulnrabilit MS08-068 est une attaque SMB relais simplifie. En effet, un deuxime hte
nest pas ncessaire.
lissue de ces six tapes, lattaquant est authentifi sur
la machine de la victime et dispose des mmes droits.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

65

> Capture SMB (< 2008) et Redirect to SMB (2015)


Mme en ayant appliqu le correctif MS08-068 un utilisateur malveillant est en mesure de rcuprer, voire de casser, le mot
de passe dun compte local. En effet, le principe de lattaque est simple : un attaquant envoie par exemple un mail contenant
une URL qui pointe vers un serveur SMB malveillant. La victime qui ouvrira le mail enverra son insu ses empreintes ce
serveur malveillant. Lattaquant peut alors raliser une attaque de brute-force sur ces empreintes de mots de passe.
Rcuprations des empreintes LM et NT :

Brute-force via des Rainbow Tables sur les 8 premiers octets (7 premiers caractres du mot de passe) [5] :

Le challenge est 1122334455667788 pour ces tables arc-en-ciel.


Enfin, nous pouvons brute-forcer les derniers caractres via le script de metasploit (tools/halflm.rb) :

Par consquent, nous connaissons le mot de passe de session de la victime.


Cette attaque est toujours dactualit, mais demande plus de ressources et de temps. En effet, les systmes Windows actuels
tels que Windows 7, Windows 8/8.1 et Windows 10 implmentent le protocole NTLMv2 par dfaut pour les connexions SMB.
Quapporte la version 2 de plus, quelles sont les diffrences avec la version prcdente ?
Voici les changes entre le client et le serveur lors
dune tentative de connexion SMB NTLMv2 :
La grande diffrence rside dans la gnration dun
second challenge. Celui-ci est gnr par le client
(client_chall) et pris en compte dans chaque empreinte calcule. Le principe dauthentification mutuelle est prsent. Ce qui permet de sassurer de
lidentit du client ainsi que du serveur. De plus, les
protocoles LMv2 et NTLMv2 utilisent uniquement
lempreinte NT qui est considre comme tant sre.

66

De ce fait, lattaquant qui intercepte les messages


dauthentification sera incapable dutiliser des tables
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Redirect to SMB

arc-en-ciel cause du challenge dfini par le client. Lempreinte rcupre est spcifique chaque capture. En revanche, il
pourra tout de mme le brute-forcer, car il disposera de toutes les informations ncessaires. Lattaque sera plus gourmande
en temps et ainsi moins efficace.
Que peut-on faire une fois que lempreinte NT du mot de passe a t casse ? Suivant le contexte, un attaquant est en mesure
daccder aux fichiers partags, dexcuter du code via PsExec, de se connecter en RDP sur son poste, etc.

> Preuve de concept de lattaque Redirect to SMB


Lattaque Redirect to SMB englobe plusieurs scnarii exploitables. Un exemple de scnario simple : lattaquant redirige
la victime vers le serveur SMB malveillant (via un code derreur HTTP 301 ou 302), informant le navigateur que la ressource
recherche a t dplace.
Cette redirection du trafic HTTP vers un serveur SMB est dangereuse, car elle peut tre applique de nombreuses applications
(e.g. les mcanismes de mise jour, etc.).

Les flux HTTP sont redirigs vers un serveur contrl par lattaquant puis ce dernier force la victime se connecter au serveur
SMB malveillant. Il rcupre ainsi, entre autres, lempreinte NT du mot de passe de la victime.

Nous pouvons constater que deux tentatives successives renvoient deux rponses diffrentes. Ceci tant d au challenge alatoire gnr par le client chaque tentative de connexion.

67
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Dsormais, il est possible de raliser une attaque par dictionnaire sur lempreinte du mot de passe :

Le mot de passe tant faible, nous avons t en mesure de le casser rapidement laide dun dictionnaire.
Nous conclurons cet article par une citation de Sir Dystic :
The problem is that from a marketing standpoint, Microsoft wants their products to have as much backward compatibility as
possible; but by continuing to use protocols that have known issues, they continue to leave their customers at risk to exploitation... These are, yet again, known issues that have existed since day one of this protocol. This is not a bug but a fundamental
design flaw. To assume that nobody has used this method to exploit people is silly; it took me less than two weeks to write
SMBRelay .

Rfrences
[1] http://www.rapid7.com/db/modules/exploit/windows/smb/smb_relay
+
This bulletin includes a patch which prevents the relaying of challenge keys back to the host which issued them, preventing

this exploit from working in the default configuration. It is still possible to set the SMBHOST parameter to a third-party host that
the victim is authorized to access, but the reflection attack has been effectively broken.

+[2] https://technet.microsoft.com/en-us/magazine/2006.08.securitywatch.aspx
+[3] https://msdn.microsoft.com/en-us/library/cc669093.aspx
+[4] https://technet.microsoft.com/fr-fr/library/security/ms10-012.aspx
+[5]http://www.l0phtcrack.com/help/smb_capture.html
+http://blog.cylance.com/redirect-to-smb
+http://en.wikipedia.org/wiki/Server_Message_Block
+http://en.wikipedia.org/wiki/NT_LAN_Manager
+http://en.wikipedia.org/wiki/SMBRelay
+https://technet.microsoft.com/en-us/magazine/2006.08.securitywatch.aspx
+http://pen-testing.sans.org/blog/2013/04/25/smb-relay-demystified-and-ntlmv2-pwnage-with-python
+https://blog.skullsecurity.org/2008/ms08-068-preventing-smbrelay-attacks
+http://netlibrary.net/articles/SMBRelay
+http://www.xfocus.net/articles/200305/smbrelay.html
+http://www.ampliasecurity.com/research/NTLMWeakNonce-bh2010-usa-ampliasecurity.pdf
http://www.viruslist.com/fr/news?id=197471285
68 +
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Les mcanismes HSTS et HPKP

Adrian Midgley

Par Romain LEONARD

Deux nouveaux mcanismes de scurit se mettent peu peu en place autour des connexions HTTPS afin de garantir toujours
plus de confidentialit aux changes entre client et serveur. Nous tcherons de vous prsenter HSTS (HTTP Strict Transport
Security) et HPKP (Public Key Pinning Extension for HTTP), deux mcanismes de scurit peu connus et peu utiliss ; bien que
pourtant dj intgrs au sein des navigateurs Firefox et Chrome.

> Le mcanisme HSTS


Prsentation
Le premier mcanisme est baptis HSTS pour HTTP Strict Transport Security [1]. Plus communment nomm supercookie , il
permet aux applications de forcer le navigateur de lutilisateur utiliser des connexions HTTPS pour dialoguer avec un serveur,
une fois le cookie HSTS enregistr par le navigateur du client.
Plus en dtail, lorsquun internaute se rend sur un site supportant le standard HSTS, le serveur inclut dans sa rponse un entte Strict-Transport-Security spcifiant, minima, la dure durant laquelle la rgle impose sera valide. Optionnellement,
le serveur peut spcifier deux autres paramtres : linclusion des sous-domaines ainsi que la possibilit pour le site dtre
prenregistr dans le navigateur afin de forcer lutilisation dHTTPS ds la premire connexion.
Une fois ces informations rceptionnes, le navigateur les enregistre et les associe au domaine correspondant au site visit
pour pouvoir ensuite les appliquer automatiquement, durant la priode de validit spcifie par le serveur.
Ds lors, si lutilisateur saisit ladresse de lapplication, ou clique sur un lien faisant rfrence ce domaine, le serveur sera
alors automatiquement contact en HTTPS.
Ce mcanisme a vu le jour en 2010 dans le but dempcher les attaques de type sslstrip . Celles-ci consistent,
lors dune interception de connexion, modifier tous
les liens HTTPS prsents dans les pages retournes la
victime en liens HTTP. Ainsi, lattaquant peut intercepter
toutes les donnes en clair sur le rseau. Cette attaque
ncessite que lutilisateur effectue sa premire connexion
en HTTP, cela nest pas possible avec HSTS, ds lors que
le client sest dj connect lapplication auparavant.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

69

Dtournement de son utilisation


Bien que ce mcanisme ait vu le jour en 2010, il a rcemment t dmontr quil pouvait tre utilis pour contourner les
mcanismes de confidentialit relatifs la protection de la vie prive des utilisateurs.
En effet, les navigateurs ne compartimentant pas les supercookie entre une session classique et une session anonyme
du navigateur, il est possible daffecter un marqueur un site afin de tracer lactivit dun utilisateur mme si celui-ci efface
ses cookies ou sil utilise le mcanisme de navigation prive.
Ce dtournement du mcanisme HSTS a t mis en place sous forme de preuve de concept [2] avec succs. La preuve de
concept repose sur lenvoi de plusieurs requtes HTTP/HTTPS vers diffrents sous-domaines contrls par les attaquants. Les
rsultats des tests seront ensuite utiliss pour identifier le visiteur de manire unique.
Cette identification des utilisateurs permettrait, par exemple, une rgie publicitaire de cibler au mieux ses annonces. Elle
permet galement dassocier un utilisateur lgitime dun site Internet un pirate utilisant le rseau danonymisation TOR.
Prenons un exemple simplifi. Afin de crer des identifiants allant de 0 7, il faut 3 bits. Concrtement, en enregistrant 3
sous-domaines 0.xmco.fr, 1.xmco.fr et 2.xmco.fr, il est ainsi possible de stocker cet identifiant sur le navigateur de linternaute,
sous la forme de prfrences HSTS. La mise en place de cette attaque ncessite simplement un autre sous-domaine pour vrifier si un identifiant a dj t attribu, check.xmco.fr. Le serveur recevant les connexions attribue automatiquement un
supercookie HSTS pour chacun de ces 3 sous-domaines (0.xmco.fr, 1.xmco.fr et 2.xmco.fr) sil est contact en HTTPS.
Lalgorithme est le suivant et doit tre implment en JavaScript pour tre excut dans le navigateur du client :
1. Vrifier si le client dispose dj dun identifiant via lenvoi dune requte HTTP sur check.xmco.fr. Si la requte arrive en
+
HTTPS, le client dispose dj dun identifiant (voir tape 3). Sinon, un identifiant numrique est gnr et renvoy au client
(voir tape 2).

2. Gnrer lidentifiant ct client consiste activer le HSTS pour les domaines correspondant aux bits 1. Par exemple pour
+
lidentifiant 5 ou 0b101, il faut activer HSTS pour les sous-domaines 0.xmco.fr et 2.xmco.fr en effectuant une requte sur leurs
ports HTTPS. Enfin, il faut valider cet identifiant en activant HSTS pour check.xmco.fr.

3. Reconstituer lidentifiant du client en faisant des requtes HTTP sur 0.xmco.fr, 1.xmco.fr et 2.xmco.fr.
+
Exemple 1 : si 0.xmco.fr et 2.xmco.fr sont en fait contact en HTTPS et 1.xmco.fr est lui bien contact en HTTP, lidentifiant
reconstitu est alors 0b101, soit 5.

70
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

HSTS et HPKP

Exemple 2 : si 2.xmco.fr est en fait contact en HTTPS et 0.xmco.fr et 1.xmco.fr sont bien contacts en HTTP, lidentifiant reconstitu est alors 0b100, soit 4.

> Le mcanisme HPKP


Le second mcanisme existant est baptis HPKP pour Public Key Pinning Extension for HTTP [4]. Il permet dassocier la
cl publique prsente dans le certificat SSL officiel dun site un serveur Web. Une fois cette cl publique pingle, elle seule
pourra tre utilise pour valider ltablissement dune connexion scurise avec le serveur. Si le certificat prsent fait rfrence une cl publique diffrente, mme si celui-ci est valide et a t mis par une autorit de certification reconnue, un
avertissement sera prsent lutilisateur. Ce comportement diffre donc du fonctionnement classique qui consiste accepter
tous les certificats signs par les autorits considres comme tant de confiance par les navigateurs.
Ainsi, en cas de compromission dune autorit de confiance, les attaquants ne pourront pas intercepter des communications
entre un client et un site en mettant un certificat valide, mais frauduleux, avec lautorit compromise.
Ce mcanisme vient en complment du trousseau de certificats fourni dans les navigateurs Chrome et Firefox.
Le protocole HPKP est implment par les navigateurs Chrome (>= 38) et Firefox (>= 35) et est toujours ltude. Les volutions souhaites visent notamment ne plus limiter son application au protocole HTTP en lintgrant directement la couche
SSL/TLS. Lobjectif des volutions envisages est de faciliter la mise lchelle de ce mcanisme. En effet, la solution actuelle
est de type TOFU (Trust On First Use). Le mcanisme ne protge donc pas, lors de ltablissement de la premire connexion
un serveur. Il convient alors toujours, lors de la premire connexion, de se connecter un serveur depuis une connexion
considre comme tant de confiance afin de protger les futurs changes.

Rfrences

+[1] https://tools.ietf.org/html/draft-hodges-strict-transport-sec-02
+[2] http://www.radicalresearch.co.uk/lab/hstssupercookies
[3] https://developer.mozilla.org/en-US/docs/Web/Security/HTTP_strict_transport_security, https://cert.xmco.fr/veille/in+
dex.xmco?nv=CXA-2015-0015
+[4] https://tools.ietf.org/html/draft-ietf-websec-key-pinning-21
+[5] https://developer.mozilla.org/en-US/docs/Web/Security/Public_Key_Pinning
+[6] https://cert.xmco.fr/veille/index.xmco?nv=CXA-2015-0271
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

71

Le whitepaper du mois

Moyan Brenn

par Charles DAGOUAT

> Guide to Industrial Control Systems


(ICS) Security
Le NIST (National Institute of Standards and Technology) a
rcemment publi la seconde version de son guide de la
scurit destin aux systmes industriels de type SCADA,
notamment.
Ce guide donne de nombreux conseils et bonnes pratiques
respecter afin davoir un systme performant tout en tant
scuris. Louverture Internet de nombreux systmes industriels ayant cr une nouvelle menace trs dangereuse,
une mise jour concernant ces risques tait la bienvenue
dans le domaine.
Le guide passe ainsi au peigne fin tous les aspects de la scurit traditionnelle adapte aux systmes industriels:
rponse incident, contrle quotidien, audit ponctuel, collecte de logs, outils de tests, processus de dveloppement
logiciels et matriels, etc.
Le document complet est disponible ladresse suivante :
http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.
SP.800-82r2.pdf

72
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Le meilleur du web

Aprs plusieurs annes de bons et loyaux


services, la rubrique Outils est dsormais
remplace par la Revue du Web . Cette
partie permettra de faire un tour dhorizon
des articles scurit les plus intressants !
Stphane AVI

> Slection darticles divers


> Slection darticles techniques
> Twitter

Slection de comptes Twitter

73
73
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Le meilleur du web

> Slection darticles divers

Trucs et astuces pour SSH

http://noone.org/talks/ssh-tricks/ssh-tricks-rmll.html

Configurer TLS sous IIS

https://www.hass.de/content/setup-your-iis-ssl-perfect-forward-secrecy-and-tls-12

Outil pour parser un CSV

https://github.com/jjyg/csv

Monter des disques VMWare compresss

http://az4n6.blogspot.com.tr/2015/04/dealing-withcompressed-vmdk-files.html

Analyse Forensics dtaille

https://www.first.org/resources/papers/conference2014/a-forensic-analysis-of-apt-lateral-movement-in-windows-environment.pptx

Guide de scurisation VSphere 6

http://blogs.vmware.com/vsphere/2015/06/
vsphere-6-hardening-guide-ga-now-available.html

Histoire du recrutement de pentesteurs...

http://blog.silentsignal.eu/2015/04/03/the-story-ofa-pentester-recruitment/

Attaque et dfense du CMS WordPress

http://www-personal.umich.edu/~markmont/awp/

Mettre jour des GPO distance

http://www.darkoperator.com/blog/2015/3/9/updating-group-policy-objects-remotely

74
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Le meilleur du web

> Slection darticles techniques

Casser des mots de passe darchives RAR avec


Metasploit et John The Ripper

http://securityblog.gr/2728/crack-rar-passwords-bruteforcing/

Webshell pour Splunk

https://github.com/Dionach/Splunk-Web-Shell

Procdure Microsoft pour capturer et dchiffrer


les communications de Lync 2010

h t t p : // b l o g s . t e c h n e t . c o m / b / n e x t h o p / a r chive/2012/02/15/how-to-decrypt-lync-2010-tls-traffic-using-microsoft-network-monitor.aspx

Bruteforce avec PowerShell

http://blogs.technet.com/b/heyscriptingguy/archive/2012/07/03/use-powershell-to-security-testsql-server-and-sharepoint.aspx

XXE au travers des messages derreur

https://blog.netspi.com/forcing-xxe-reflection-server-error-messages/

Outil permettant de parser les rsultats Nmap


pour utiliser ensuite Metasploit

https://github.com/milo2012/metasploitHelper

Outil danalyse de code statique

https://github.com/facebook/pfff/wiki/Main

Test dintrusion dun HP Thin Client

http://blog.malerisch.net/2015/04/pwning-hp-thinclient.html

Alternatives PSExec

https://www.trustedsec.com/june-2015/no_psexec_
needed/

75
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

we deliver security expertise

> Slection des comptes Twitter suivis


par le CERT-XMCO

Podcast No Limit Secu

https://twitter.com/nolimitsecu

Egor Homakov

https://twitter.com/homakov

Stefan Esser

https://twitter.com/i0n1c

Dominic White

https://twitter.com/singe

Charlie Miller

https://twitter.com/0xcharlie

Karl

https://twitter.com/kfosaaen

LegbaCore

https://twitter.com/legbacore

Dave Kennedy (ReL1K)

https://twitter.com/HackingDave

Mark Russinovich

https://twitter.com/markrussinovich

Hacking Team :-)

https://twitter.com/hackingteam

76
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Romain MAHIEU

> Remerciements
Photographie

Scott Akerman
https://www.flickr.com/photos/sterlic/6778181411
Racchio
https://www.flickr.com/photos/racchio/6987505625
Bruno French Riviera
https://www.flickr.com/photos/bruno_french_riviera/5601623528
Krlis Dambrns
https://www.flickr.com/photos/janitors/11083922814
Nathan ONions
https://www.flickr.com/photos/nathanoliverphotography/7565000876
Quinn Dombrowski
https://www.flickr.com/photos/quinnanya/5251378117
Adrian Midgley
https://www.flickr.com/photos/midgley/6814165694
Moyan Brenn
https://www.flickr.com/photos/aigle_dore/6365104687

LActuScu est un magazine numrique rdig et dit par les consultants du cabinet
de conseil XMCO. Sa vocation est de fournir des prsentations claires et dtailles sur le
thme de la scurit informatique, et ce, en toute indpendance. Tous les numros de
lActuScu sont tlchargeables ladresse suivante :
http://www.xmco.fr/actusecu.html
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

77

www.xmco.fr

69 rue de Richelieu
75002 Paris - France
tl. +33 (0)1 47 34 68 61
fax. +33 (0)1 43 06 29 55
mail. info@xmco.fr
web www.xmco.fr
SAS (Socits par Actions Simplifies) au capital de 38 120 - Enregistre au Registre du Commerce de Paris RCS 430 137 711
Code NAF 6202A - NSIRET : 430 137 711 00056 - N TVA intracommunautaire : FR 29 430 137 711

78
Ce document est la proprit du cabinet XMCO. Toute reproduction est strictement interdite.

Vous aimerez peut-être aussi