Cuckoo Sandbox. Analyse automatisée de code malveillant. Alain Sullam OWASP 2 mars 2015



Documents pareils
But de cette présentation. Bac à sable (Sandbox) Principes. Principes. Hainaut P

WORKSHOP OBIEE 11g (version ) PRE-REQUIS:

VIRTUALISATION : MYTHES & RÉALITÉS

Système Principal (hôte) 2008 Enterprise x64

Symantec Endpoint Protection Fiche technique

Table des matières. Avant-propos... Préface... XIII. Remerciements...

Virtual Box Mettez un PC dans votre... PC

Surveillance stratégique des programmes malveillants avec Nessus, PVS et LCE

Systèmes Répartis. Pr. Slimane Bah, ing. PhD. Ecole Mohammadia d Ingénieurs. G. Informatique. Semaine Slimane.bah@emi.ac.ma

Accès au Serveur de PAIE «SPV» par INTERNET Paramétrage du poste de travail «Windows»

SECURINETS CLUB DE LA SECURITE INFORMATIQUE INSAT. SECURIDAY 2012 Pro Edition [Investigation :Digital Forensics]

Guide d'installation Application PVe sur poste fixe

Atelier Pivoting KHOULOUD GATTOUSSI (RT3) ASMA LAHBIB (RT3) KHAOULA BLEL (RT3) KARIMA MAALAOUI (RT3)

Livre blanc. L impact de la sécurité de la virtualisation sur votre environnement VDI

Désinfecte les réseaux lorsqu ils s embrasent

L impact de la sécurité de la virtualisation sur votre environnement VDI

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

Windows 10 Technical Preview

LE NOUVEAU CHAMP DE BATAILLE : LES ATTAQUES DE TYPE «ZERO DAY»

Architectures informatiques dans les nuages

Laboratoire de Haute Sécurité. Télescope réseau et sécurité des réseaux

Guide d installation BiBOARD

L art d ordonnancer. avec JobScheduler. François BAYART

Guide d installation d AppliDis Free Edition sur Windows Serveur 2008 R2

PPE 1 PRISE EN MAIN DE VMWARE VSPHERE 5.5 & CONFIGURATION D UNE MACHINE VIRTUELLE

A propos de la sécurité des environnements virtuels

Netdays Comprendre et prévenir les risques liés aux codes malicieux

Plan de la conférence. Virtualization. Définition. Historique. Technique. Abstraction matérielle

pythonocc: une plateforme de développement agile d applications CAO.

Découverte et investigation des menaces avancées PRÉSENTATION

MSP Center Plus. Vue du Produit

Stéphane DERACO, DSI CNRS l Argos Devops : de l hyperviseur aux conteneurs l 11/12/2014 DOCKER

Oracle Developer Suite 10g. Guide de l installation. Vista & Seven

Dynamic Malware Analysis for dummies

Open Source Professional Training

Accélérez vos tests et développements avec le Cloud, découvrez SoftLayer, la dernière acquisition Cloud d'ibm

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée Virtual Server de Microsoft

Fiche Technique. Cisco Security Agent

JAB, une backdoor pour réseau Win32 inconnu

Faits techniques et retour d'expérience d'une cellule d'expertise dans la lutte contre le code malveillant. EdelWeb / Groupe ON-X

Cloud Computing et SaaS


FORMATION Offre de Formation - Packaging. Les bonnes pratiques du packaging avec Installshield et AdminStudio. Contact et inscriptions

Tropimed Guide d'installation

Fiche de poste. Ingénieur systèmes Microsoft. Auteur : Pascal GUY Paris, le 16 mai 2011

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server

CAHIER DES CHARGES D IMPLANTATION

Installation de GFI Network Server Monitor

Virtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D.

Guide de migration BiBOARD V10 -> v11

AudiParc Recommandations IMPORTANTES. AudiParc Principe de fonctionnement. AudiParc Installation Déployement

Préconisations Techniques & Installation de Gestimum ERP

Avira Professional Security Migrer vers Avira Professional Security version HowTo

Architecture et sécurisation des nouveaux réseaux

Menaces du Cyber Espace

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Pré-requis de création de bureaux AppliDis VDI

Virtualisation du poste de travail. Denis CASANOVA UFR Sciences & Technologies CUME - 29 Mars 2012

Introduction aux antivirus et présentation de ClamAV

Linux est-il crédible pour le PC familial? Xavier Passot N7 I76 Pour l AI N7 le 11 mars 2010

Table des matières. 1. Installation de VMware ESXI Pré-requis Installation... 3

L externalisation de vos logiciels entreprises : une solution aux problèmes de coûts, de sécurités et de réactivités

Maarch Framework 3 - Maarch. Tests de charge. Professional Services. 11, bd du Sud Est Nanterre

Projets de stage. Présentation

sécurisation des systèmes d information BE READY FOR WHAT S NEXT. Kaspersky Open Space Security

MANUEL D INSTALLATION

Les méthodes de sauvegarde en environnement virtuel

Dispositif sur budget fédéral

Visualization sur Ubuntu: Quels Choix? Nicolas Barcet

Acquisition des données

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

Virtualisation et sécurité Retours d expérience

APT / Cryptolockers. Pierre Poggi WatchGuard France pierre.poggi@watchguard.com

Service Déposant: Procédure d installation. Page 1. Service déposant. Procédure d installation Version 2.3

Virtualisation et ou Sécurité

CLOUD PRIVÉ GENERALI - ACCOMPAGNEMENT AU CHANGEMENT - DU «POC» À LA RÉALITÉ. Alain ROY Generali Logo Société

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

ICT7 Luxembourg. ICT7 Belgium. ICT7 France. 33 people. 12 people. 2 people

Réalisation d un portail captif d accès authentifié à Internet

Sécurité des Web Services (SOAP vs REST)

Technologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC

10 bonnes pratiques de sécurité dans Microsoft SharePoint

Famille IBM WebSphere Application Server

A Libre Ouvert. Médiathèque Jacques Ellul. le

Figure 1a. Réseau intranet avec pare feu et NAT.

INSTALLER LA DERNIERE VERSION DE SECURITOO PC

Procédure d installation :

Manuel d installation serveurs

Protection rapprochée contre les Cyber-Attaques de nouvelle génération

INSTALLATION NG V2.1 D OCS INVENTORY. Procédure d utilisation. Auteur : GALLEGO Cédric 23/10/2014 N version : v1

NetCrunch 6. Superviser

Manuel logiciel client Java

Description de l implantation dans le centre d examen (nom du service ou de l outil et caractéristiques techniques)

Transcription:

Cuckoo Sandbox Analyse automatisée de code malveillant Alain Sullam OWASP 2 mars 2015 1

WHO AM I? Alain Sullam alain.sullam [at] gmail.com GPG key id: 0x999EF732 https://ch.linkedin.com/in/alainsullam https://github.com/sysinsider Ingénieur de formation, puis d autres petites choses Dans l infosec depuis ~2000 2003 o Consulting (administration publique, groupes industriels) o Domaine bancaire o Domaine juridique depuis environ 10 ans Intervenant à l Université de Genève - Master Infosec (DFIR) Membre de l ISC 2, ISACA, OWASP et ISMA 2

AGENDA Les entreprises face aux malwares / APT Cuckoo sandbox, c est quoi? Analyse manuelle vs. automatisée L architecture de Cuckoo Sandbox et ses prérequis La configuration Points importants de la virtualisation et du sandboxing Demo et reporting Etendre et/ou intégrer Cuckoo Sandbox Conclusion (Bonus) un peu de visualisation (Bonus) Pour aller plus loin Questions 3

4

QUELQUES CHIFFRES LA PERCEPTION 2% Pas du tout probable 17% Très probable 4% Pas du tout capable 13% Très capable 32% Pas vraiment probable Pense être la future cible d une APT 24% Pas vraiment capable Pense être capable de détecter une APT 49% Probable 59% Capable Isaca APT survey report, 2014 5

QUELQUES CHIFFRES (CONT D) LA PERCEPTION 4% Pas du tout capable 14% Très capable 5% Pas du tout capable 11% Très capable 24% Pas vraiment capable Pense être capable de réagir à une APT 29% Pas vraiment capable Pense être capable de stopper une APT réussie 58% Capable % Capable Isaca APT survey report, 2014 6

7

QUELQUES CHIFFRES LES STATISTIQUES 325 000 nombre de nouveaux fichiers malicieux découverts par jour par Kaspersky 67% des victimes ont été averties par une entité tierces/externe 12% des attaques étaient des attaques ciblées 15% des victimes représentent des services financiers Mandiant & Kaspersky (Rapports 2013 & 2014) 42% Des attaques ont été découvertes par les forces de l ordre 223 nombre de jours median de l APT avant sa détection 8

LES GRANDES QUESTIONS En cas d incident, on va naturellement se demander : Quels fichiers (locaux ou non) ont été accédés, créés, supprimés? Y-a-t-il eu des communications réseaux, et si oui, lesquelles (internes, externes, multiples, ponctuelles, permanentes, etc.)? En cas de communications réseaux, quels sont leurs buts / contenus (spamming, (D)DOS, exfiltration de données, etc.) et leurs destinations? Est-ce une attaque ciblée ou opportuniste? Est-ce une attaque persistante ou non? Quel est le périmètre de compromission? 9

CUCKOO SANDBOX, C EST QUOI? In three words, Cuckoo Sandbox is a malware analysis system. What does that mean? It simply means that you can throw any suspicious file at it and in a matter of seconds Cuckoo will provide you back some detailed results outlining what such file did when executed inside an isolated environment. http://www.cuckoosandbox.org Analyse automatique de fichiers suspects Génération automatisée de rapports (détaillés) Dans un environnement «sandboxé» 10

OPEN SOURCE VS. PRODUITS COMMERCIAUX * * *online Anubis Sandbox * ( ) 11

COMMENT ÇA FONCTIONNE? EXÉCUTABLES WINDOWS FICHIERS DLL DOCUMENTS PDF RAPPORTS SOUS DIFFÉRENTS FORMATS TRACES DES APPELS WIN32 FICHIERS CRÉÉS, MODIFIÉS, EFFACÉS, TÉLÉCHARGÉS DOCUMENTS MICROSOFT OFFICE DUMP DU PROCESS ANALYSÉ URLS ET FICHIERS HTML SCRIPTS PHP, VBS FICHIERS CPL, ZIP, JAR ET PRESQUE N IMPORTE QUOI D AUTRE TRACES RÉSEAU AU FORMAT PCAP CAPTURES D ÉCRAN DURANT L EXÉCUTION DUMP MÉMOIRE COMPLET DE LA MACHINE, RÉSULTATS VIRUSTOTAL, ETC ANALYSE AUTOMATISÉE 12

L ANALYSE MANUELLE LES COMPÉTENCES REQUISES DESASSEMBLAGE DECOMPILATION ASSEMBLEUR, C/C++, IDA PRO, HOPPER, OLLYDBG, ETC. CRYPTOGRAPHIE CONNAISSANCES DES ALGOS STANDARDS ET EXOTIQUES, DE LEURS IMPLÉMENTATIONS ETC. SYSTEMES D EXPLOITATION FONCTIONNEMENT BAS NIVEAU, APPELS SYSTÈMES, GESTION MÉMOIRE, SYSTÈMES DE FICHIERS, REGISTRE, API WINDOWS, ETC. PACKERS OBFUSCATION DÉTECTION DE PACKER, UNPACKING, DÉSOBFUSCATION, ETC. RESEAU CONNAISSANCES DES PROTOCOLES STANDARDS, FUZZING DE PROTOCOLES, CONCEPTS TCP/IP, ETC. ETC (ANTI-)DEBBUGING, (ANTI-)FORENSIC, HONEYPOTTING, SANDBOXING, ETC. 13

ANALYSE MANUELLE VS. AUTOMATISÉE VS. 14

ANALYSE MANUELLE VS. AUTOMATISÉE Analyse manuelle approfondie Acquisition soumission Analyse statique Analyse dynamique Analyse mémoire Analyse réseau Reporting 15

ARCHITECTURE Hôte Cuckoo - Hyperviseur - Démarre l analyse - Dump le trafic - Génère les rapports VM cibles - environnement à infecter et à analyser VM analysée N 1 Réseau virtuel VM analysée N 2 Internet / Sinkhole / Aucune connexion VM analysée N... 16

ARCHITECTURE Cuckoo Sandbox Internet Sinkhole / Simu. VM Cuckoo main server Windows Cuckoo web server Agent.py Cuckoo web service (REST) Applications tierces Utilisateur Etendre Cuckoo: Maltego El Jefe Etc... Intégrer Cuckoo dans l infrastructure: CuckooMX El Jefe SOC CERT, CSIRT Etc... 17

FLUX D EXÉCUTION 1 Soumission du sample 2 Analyse statique 3 Retour au snapshot clean 4 Démarrage de la VM 5 Transfert du malware à la VM 6 Lancement du monitoring 7 Exécution du malware 8 Arrêt du monitoring 9 Suspension de la VM 10 Acquisition du dump mémoire 11 Analyse du dump réseau 12 Reporting 18

PRÉREQUIS (HÔTE) Hardware : Les prérequis habituels pour de la virtualisation (CPU s, RAM et HDD) Software : Linux (Debian, Ubuntu, etc.), Windows et MacOsX possibles en théorie. Un hyperviseur (Théoriquement ouvert à plusieurs système mais VirtualBox reste fortement conseillé). Python (version 2.7 fortement conseillée). SQLAlchemy, Python BSON, Tcpdump, Volatility, DPKT, Jinja2, Magic, Pydeep, MongoDB, Pymongo, Yara, Yara Python, Libvirt, Bottlepy, Django, Pefile, MAEC Python bindings, Chardet. 19

PRÉREQUIS OBLIGATOIRES (GUEST) vhardware : Les prérequis habituels pour de la virtualisation (CPU s, RAM et HDD). Software : Windows XP SP3 (Windows 7, UAC désactivé). Logiciels tiers (Office, Adobe reader, navigateurs, etc.) Désactivation du firewall. Désactivation des mises à jour automatiques. Python 2.7 + PIL for Python. Cuckoo agent.py (agent.pyw). Paramétrer le réseau. Activer le login automatique. SNAPSHOT! 20

LA CONFIGURATION 6 fichiers de configuration principaux : cuckoo.conf : Configuration générale et options d analyse. auxiliary.conf : Configuration des modules auxiliaires (ex: capture réseau). <machinery>.conf : Configuration de la virtualisation. memory.conf : Configuration de l analyse mémoire (Volatility framework). processing.conf : Activation / désactivation des étapes d analyse. reporting.conf : Configuration du reporting. 21

QUELQUES POINTS IMPORTANTS Un environnement isolé n est que rarement sûr à 100%: Cuckoo Sandbox (Evasion) : http://cuckoosandbox.org/2014-10-07- cuckoo-sandbox-111.html Oracle VirtualBox : CVE-2014-4261, CVE-2014-4228, CVE-2014-2489, etc Instructions CPU non virtualisables, offloading (interface réseau) Lors de l attribution de l accès internet au malware, attention aux infections sur le LAN: Solution (partielle) : Simulation de services réseau (ex : InetSim) Un environnement sandboxé et/ou virtualisé peut être détecté par certains malwares: Test : Pafish https://github.com/a0rtega/pafish Solution (partielle) : Zer0m0n ou Markedoe + tweak(s) manuel(s) 22

ANTI DÉTECTION : VM 23

ANTI DÉTECTION : VM + CUCKOO 24

DÉTECTION : VM + CUCKOO + TWEAKING 25

IT S DEMO TIME! La facture Zalando 26

27

28

29

30

La capture réseau Les fichiers créés / droppés Le dump mémoire Le reporting Les captures d écran 31

Super, mais j aime pas les lignes de commandes LE REPORTING 32

CARACTÉRISTIQUES DU FICHIER 33

LES SIGNATURES Communications réseau Sandboxing détecté!!! Probablement un dérivé de Zeus Persistance 34

L ANALYSE STATIQUE Quelques chaînes de caractères intéressantes : *\AC:\FA2\C7\YkYW.vbp vgybhy, fvgdcf, cvfdezcvg, uhuihiuh, cvfrdsdfvc Etc 35

LES FICHIERS CRÉÉS / DROPPÉS 36

L ANALYSE DYNAMIQUE Exécution d opérations au démarrage et/ou persistance Persistance Récupération du nom de la machine 37

L ANALYSE RÉSEAU Surprenant Ça s explique 38

ON VÉRIFIE L HISTORIQUE Encore plus surprenant 39

RETWEAKING DE LA VM Désinstallation des VirtualBox guest tools. Nettoyage du registre (références à VirtualBox). Nettoyage des fichiers résiduels (références à VirtualBox). Modifications des drivers. Nouvelle analyse! 40

NOUVELLES SIGNATURES Ne détecte plus VirtualBox. 41

TOUT DE SUITE PLUS BAVARD 42

AUTRES FORMATS DE REPORTING JSON MAEC XML 43

44

CUCKOO SANDBOX, OÙ ET QUAND? PRÉVENTIF (LEVÉE DE DOUTE) RÉACTIF (INCIDENT RESPONSE) POST-MORTEM (ANALYSE FORENSIQUE) THREAT INTELLIGENCE (IOC, SIGNATURES) Equipe sécurité SOC, intégration infra. CERT / CSIRT Equipe forensique Prestataires externes Autre???? Appréciations complètement subjectives 45

CONCLUSION Ne demande pas des connaissances aussi pointues que pour l analyse manuelle. La qualité de l analyse dépend fortement de la capacité d interprétation des résultats. L environnement Cuckoo + VM peut être détectable par certains malwares. La globalité du code du malware ne sera très probablement pas totalement exécutée. Comporte toujours un risque (débordement du sandboxing, LAN, etc.) Très bonne documentation. Communauté très active autour du produit. Automatisable et intégrable au sein d une architecture. 46

BONUS Un peu de visualisation avec Maltego 47

UN PEU DE VISUALISATION - MALTEGO 48

UN PEU DE VISUALISATION - MALTEGO 49

UN PEU DE VISUALISATION - MALTEGO 50

UN PEU DE VISUALISATION - MALTEGO 51

UN PEU DE VISUALISATION - MALTEGO 52

POUR ALLER PLUS LOIN Malwr: Version online gratuite de Cuckoo Sandbox. Parfait pour des tests de malwares «communs». Attention à la confidentialité!!! Pas de possibilité de récupérer les dumps mémoire et réseau. Cuckoo Android Extension: Support de l émulateur Android ARM pour exécuter des APK s et des URL. Community.py: Utilitaire pour télécharger et installer les modules développés par la communauté. El Jefe: Intégration avec l outil El Jefe (détection, réponse et traçage des menaces). 53

QUESTIONS 54

MERCI! Alain Sullam alain.sullam [at] gmail.com https://ch.linkedin.com/in/alainsullam https://github.com/sysinsider Quelques références utiles: http://www.cuckoosandbox.org http://docs.cuckoosandbox.org/en/latest/ https://www.packtpub.com/networking-and-servers/cuckoomalware-analysis https://github.com/a0rtega/pafish https://github.com/conix-security/zer0m0n https://github.com/markedoe/cuckoo-sandbox http://www.inetsim.org/ https://github.com/cuckoobox/community https://www.paterva.com/web6/products/maltego.php https://malwr.com/ https://eljefe.immunityinc.com/ https://github.com/idanr1986/cuckoo https://github.com/xme/cuckoomx