Extraction de données authentifiantes de la mémoire Windows

Documents pareils
HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet.

Faiblesses des méthodes d administration en environnement Windows et état des lieux de l outillage intrusif 1/50

Aurélien Bordes. OSSIR 13 juillet 2010

EA D S INNOVA TION W ORKS. Pass The Hash. Nicolas RUFF EADS-IW SE/CS nicolas.ruff (à) eads.net

Journées MATHRICE "Dijon-Besançon" DIJON mars Projet MySafeKey Authentification par clé USB

Guide de déploiement d'un mécanisme De SmartCardLogon par carte CPS Sur un réseau Microsoft

Chapitre 1 Windows Server

Gestion des identités

Le principe du moindre privilège appliqué aux systèmes Windows

Analyse des protections et mécanismes de chiffrement fournis par BitLocker

Le modèle de sécurité windows

Sécurité du cloud computing

Guide de mise en œuvre d'un Smartcard logon avec une Carte de Professionnel de Santé (CPS) «ASIP Santé / PTS / PSCE» Version 2.5.

Le rôle Serveur NPS et Protection d accès réseau

Sécurité des applications Retour d'expérience

Authentifications à W4 Engine en.net (SSO)

L identité numérique. Risques, protection

Présentation de la solution Open Source «Vulture» Version 2.0

1. Présentation de WPA et 802.1X

Restriction sur matériels d impression

Windows 2000 Server Active Directory

Guide de mise en œuvre d'un Smartcard logon avec une Carte de Professionnel de Santé (CPS) «ASIP Santé / PTS / PSCE» Version 2.5.

Ce document décrit une solution de single sign-on (SSO) sécurisée permettant d accéder à Microsoft Exchange avec des tablettes ou smartphones.

SSL ET IPSEC. Licence Pro ATC Amel Guetat

Les Protocoles de sécurité dans les réseaux WiFi. Ihsane MOUTAIB & Lamia ELOFIR FM05

LINUX Préparation à la certification LPIC-3 (examen LPI 300) - 2ième édition

Sécurisation des architectures traditionnelles et des SOA

Introduction aux services de domaine Active Directory

Sécurité des Postes Clients

mimikatz et la mémoire de Windows Benjamin DELPY `gentilkiwi`

Direction des Systèmes d'information

IIS, c est quoi? Installation de IIS Gestion de base de IIS Méthodes d authentification. Edy Joachim,

Administration de systèmes

UE5A Administration Réseaux LP SIRI

Gestion des utilisateurs et Entreprise Etendue

IPS-Firewalls NETASQ SPNEGO

S28 - La mise en œuvre de SSO (Single Sign On) avec EIM (Enterprise Identity Mapping)

Comment déployer l'active Directory sur Windows Server 2008 R2. Microsoft France Division DPE

Sécurisation de Windows NT 4.0. et Windows 2000

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

HASH LOGIC. Web Key Server. Solution de déploiement des certificats à grande échelle. A quoi sert le Web Key Server? A propos de HASHLOGIC

SANS SEC 504 : Techniques de hacking, exploitation de failles et gestion des incidents

Windows Server 2012 R2 Administration

Authentification dans ISA Server Microsoft Internet Security and Acceleration Server 2006

But de cette présentation. Contrôleur de domaine avec Samba (rédigé pour Ubuntu Server) Introduction. Samba: principes

Responsabilités du client

Sécurité de Windows NT

Authentification centralisée et SSO Sujet. Table des matières. 1 ORGANISATION Mode de rendu Informations complémentaires 1 2 SUJET 2

KASPERSKY LABS. Kaspersky Administration Kit 6.0. Guide de deploiement

Table des matières Chapitre 1 Virtualisation, enjeux et concepts Chapitre 2 Ligne de produit XEN

Windows Server Chapitre 3 : Le service d annuaire Active Directory: Concepts de base

Tunnels et VPN. 22/01/2009 Formation Permanente Paris6 86

SafeGuard Easy Aide administrateur. Version du produit : 6

Initiation à la sécurité

Sophos SafeGuard Disk Encryption, Sophos SafeGuard Easy Aide administrateur. Version du produit : 5.60

Digital DNA Server. Serveur d authentification multi-facteurs par ADN du Numérique. L authentification de confiance

Les stratégies de groupe (GPO) sous Windows Server 2008 et 2008 R2 Implémentation, fonctionnalités, dépannage [2ième édition]

Windows Server 2012 R2 Administration avancée - 2 Tomes

Drupal et les SSO Nicolas Bocquet < nbocquet@linalis.com >

L annuaire et le Service DNS

Online Backup. & Recovery Service

Standard. Manuel d installation

MS 2615 Implémentation et support Microsoft Windows XP Professionnel

Urbanisation des SI Conduite du changement IT 20/03/09. Patrick CHAMBET

Windows Server Chapitre 4 : Active Directory Gestion des utilisateurs, des ordinateurs et des groupes

Préconisations Techniques & Installation de Gestimum ERP

La sécurité dans les grilles

Protocoles et trafic réseau en environnement Active Directory

II- Préparation du serveur et installation d OpenVpn :

UserLock Guide de Démarrage rapide. Version 8.5

Secrets d authentification sous Windows

Protocoles utilisant des mécanismes d'authentification: TACACS+, RADIUS et Kerberos

mimikatz présentation et utilisation avancée Benjamin DELPY `gentilkiwi`

Introduction. Littéralement : «Services de gestion des droits liés à l Active Directory» ADRMS Windows Serveur 2008 un nouveau rôle

Filière métier : Administrateur messagerie et portail collaboratif

Gestion des identités Christian-Pierre Belin

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références

Movie Cube. Manuel utilisateur pour la fonction sans fil WiFi

La citadelle électronique séminaire du 14 mars 2002

Guide d'installation et. de configuration. BlackBerry Enterprise Server pour Novell GroupWise. Version: 5.0 Service Pack: 4

Internet Information Services (versions 7 et 7.5) Installation, configuration et maintenance du serveur Web de Microsoft

Authentification avec CAS sous PRONOTE.net Version du lundi 19 septembre 2011

Gestion d Active Directory à distance : MMC & Délégation

Windows Server 2008 Sécurité ADMINISTRATION ET CONFIGURATION DE LA SECURITE OLIVIER D.

Le protocole SSH (Secure Shell)

Installation Windows 2000 Server

Prérequis techniques

Windows Server 2012 Administration avancée

Cours 14. Crypto. 2004, Marc-André Léger

Table des matières 1 Accès distant sur Windows 2008 Server Introduction...2

Les risques HERVE SCHAUER HSC

Préparer la synchronisation d'annuaires

SafeGuard Enterprise Manuel d'administration. Version du produit : 7

Installation du client Cisco VPN 5 (Windows)

HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet JSSI INSA

WIFI sécurisé en entreprise (sur un Active Directory 2008)

L'AAA, késako? Bruno Bonfils, fr.org>, Novembre Sous ce terme d'apparence barbare est regroupé l'ensemble des concepts suivants :

LemonLDAP::NG / SAML2. Xavier GUIMARD (Gendarmerie Nationale) Clément OUDOT (Groupe LINAGORA)

Transcription:

HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet GS Days Extraction de données authentifiantes de la mémoire Windows 4 avril 2013 Steeve Barbeau <steeve.barbeau@hsc.fr>

Hervé Schauer Consultants Société de conseil et d'expertise en sécurité des systèmes d'information Depuis 1989 Indépendant 30 consultants Domaines d'expertise Expertise technique en sécurité : audit de sécurité, tests d'intrusion, etc. Expertise organisationnelle : risk management, SMSI, etc. Expertise juridique Formation : Securité applicative, sécurité des systèmes d'exploitation, réseau, organisation de la sécurité, etc. Certifications des consultants 2 / 31 CISSP, OSCP, PCI-DSS, GIAC, ISO2700x

Sommaire Introduction Algorithmes utilisés Stockages des mots de passe Processus d'authentification Extraction en mémoire Windows NT & Windows 2000 Post Windows XP Outils réalisés Scénario d'attaque Recommandations Conclusion 3 / 31

Introduction Objectif : étudier le stockage des mots de passe Windows en mémoire Contrainte : ne pas affecter la stabilité du système Intérêt : permettre d'acquérir des privilèges supérieurs et de rebondir sur d'autres machines Contexte : prestations de type tests d'intrusion 4 / 31

Algorithmes utilisés Différents algorithmes de hashage utilisés par Windows LM DES(KGS!@#$%, password[0:7]) + DES(KGS!@#$%, password[7:14]) NTLM MD4 (password) MSCash MD4(MD4(password) + Unicode(login)) MSCash2 PBKDF2(HMAC-SHA1, MSCash, login, 10240) 5 / 31

Comptes locaux Stockage des mots de passe Stockés dans la base SAM : %windir%\system32\config\sam HKLM\SAM\SAM\Domains\Account\User\[RID]\V Chiffrés avec la SYSKEY : %windir%\system32\config\system Techniques Injection de code dans LSASS Lecture du registre (base SAM) Outils : bkhive, samdump2, pwdump7, etc. 6 / 31

Stockage des mots de passe Comptes du domaine Stockés dans NTDS.DIT : %windir%\ntds\ntds.dit Mécanisme de réplication de l'active Directory Volume Shadow Copie Service Empreintes et clé (peklist) stockées dans des attributs (ATTk*) Chiffrement RC4 Ntdsa.dll : PEKInPlaceEncryptDecryptDataWithKey() Outil : QuarksPwDump 7 / 31

Stockage des mots de passe Identifiants en cache Utilisés lorsque l'active Directory est injoignable Stockés dans HKLM/Security/Cache/NL$X Clé LSA extraite de lsass.exe pour déchiffrer (DES) HKLM/SECURITY/Policy/Secrets/NL$KM/CurrVal Génération de la clé RC4 : HMAC-MD5(CurrVal, NL$X.CH) Déchiffrement des données : RC4 Outils : fgdump, module Cachedump de Metasploit 8 / 31

Secrets LSA Stockage des mots de passe Mots de passe navigateurs, logiciels VPN, FTP, clés privées de solutions de chiffrement, etc. Stockés dans HKLM/SECURITY/Policy/Secrets Chiffrement DES-ECB Session d'authentification Empreintes et mots de passe stockés en mémoire Techniques Injection de code/dll Lecture de la mémoire Outils : Whosthere[-alt], WCE, Mimikatz 9 / 31

Processus d'authentification Authentication Package (AP) Bibliothèque appelée par LSASS pour valider les authentifications intéractives Security Support Provider (SSP) Bibliothèque implémentant des protocoles d'authentification client/serveur pour les authentifications non-intéractives Session d'authentification Créée lors de chaque connexion authentifiée Différents types Interactive (Type 2) Network (Type 3) Service (Type 5) RemoteInteractive (Type 10) 10 / 31

Processus d'authentification Composants intervenant lors de l'authentification 11 / 31

Windows 2000 Processus d'authentification Msv1_0 Protocole défi-réponse LM/NTLM Authentification réseau (ex : SMB) Kerberos Protocole Kerberos v5 Utilisé par défaut pour s'authentifier sur un domaine Active Directory Schannel Certificats SSL/TLS Utilisé pour des services Web, accès VPN Windows XP Wdigest Authentification «Digest» 12 / 31 Utilisé par certains sites internet ( authentification «Basic»)

Windows Vista Tspkg Windows 7 Pku2u Processus d'authentification SSO pour Terminal Server Authentification pair à pair Windows 7 Media Échanges de fichiers (en dehors d'un domaine) Windows 8 LiveSSP Authentification avec le Cloud «Live» de Microsoft Office en ligne Exchange en ligne 13 / 31

FindPass Extraction en mémoire - Windows NT & Windows 2000 Recherche du processus Winlogon.exe Présence du module MsGina (interface graphique d'authentification) Parcours de la mémoire de Winlogon à la recherche de %USERNAME% %USERDOMAIN% à l'offset 0x200 (Win NT), 0x400 (Win 2000) Mot de passe présent à l'offset 0x400 (Win NT) 0x800 (Win 2000) Désobfuscation du mot de passe à l'aide de RtlRunDecodeUnicodeString 14 / 31

Extraction en mémoire Post Windows XP a) Pré-requis Nécessité de connaître Structures internes Liste chaînée Structures imbriquées Emplacement et type des différents champs Adresses mémoire de certaines données Emplacement de la liste des structures Clefs de chiffrement Vecteur d'initialisation Fonction de déchiffrement 15 / 31

Extraction en mémoire Post Windows XP a) Pré-requis Identifiant unique Lien entre DLL et fichier de débogage DBG Antérieur à Windows XP PDB 2.0 (NB10) 8 octets (DWORD) + 1 PDB 7.0 (RSDS) 32 octets (GUID) + 1 Structure d'un fichier PDB 16 / 31

17 / 31 Tous systèmes Extraction en mémoire Post Windows XP a) Pré-requis Lsasrv.dll!?LogonSessionList Lsasrv.dll!?LogonSessionListCount Lsasrv.dll!?LogonSessionCount Wdigest.dll!?l_LogSessList Avant Vista SP1 Lsasrv.dll!?g_Feedback Lsasrv.dll!?g_pDESXKey Lsasrv.dll!?LsaEncryptMemory Depuis Vista SP1 Lsasrv.dll!?h3DesKey Lsasrv.dll!?InitializationVector Liste chaînée des empreintes Nombre de listes Vecteur d'initialisation Clé DESX Fonction de déchiffrement Clé 3DES Vecteur d'initialisation Liste chaînée des mots de passe

Extraction en mémoire Post Windows XP b) Extraction des empreintes Structures internes de Lsasrv.dll 18 / 31

Extraction en mémoire Post Windows XP c) Extraction des mots de passe Structures internes de Wdigest.dll 19 / 31

Extraction en mémoire Post Windows XP d) Déchiffrement des données en mémoire Avant Windows Vista SP1 Bibliothèque Lsasrv.dll Chiffrement DESX / RC4 g_feedback (vecteur d'initialisation) g_pdesxkey (clé de chiffrement) LsaEncryptMemory (fonction de déchiffrement) Depuis Windows Vista SP1 Cryptography Next Generation (CNG) Bibliothèque BCrypt.dll Chiffrement 3DES / AES h3deskey (clé de chiffrement) InitializationVector (vecteur d'initialisation) 20 / 31

Extraction en mémoire Post Windows XP d) Déchiffrement des données en mémoire Structures internes de BCrypt.dll 21 / 31

Extraction en mémoire Post Windows XP d) Déchiffrement des données en mémoire Processus de déchiffrement avec Bcrypt 22 / 31

Outils réalisés a) Findpass Intégré à Metasploit Sous la forme d'une extension Meterpreter (module post-exploitation) Ecrit en C et Ruby Uniquement compatible Windows 2000 Commande unique Findpass Disponible sur http://www.hsc.fr/ressources/outils/findpass/index.html.en 23 / 31

dll_download.py Outils réalisés b) Scripts Python Parse les pages des bulletins de sécurité de Microsoft Télécharge les correctifs Extrait les bibliothèques de ces correctifs dll_parser.py Télécharge les fichiers PDB Extrait les symboles de ces fichiers Sauvegarde les offsets dans un fichier CSV get_input_offset.py Génère l'entrée nécessaire pour fournir les offsets aux commandes Meterpreter à la volée 24 / 31

Outils réalisés c) Sessiondump Intégré à Metasploit Sous la forme d'une extension Meterpreter (module post-exploitation) Ecrit en C et Ruby Compatible 32 bits et 64 bits De Windows XP/2003 à Windows 8/2012 Offsets des différentes versions des bibliothèques metasploit-framework/data/sessiondump_lsasrv_offsets.csv dll_version, architecture, encryptmemory, logon_session_list_addr, logon_session_list_count, feedback_addr, deskey_ptr_addr, 3deskey_ptr_addr, iv_addr metasploit-framework/data/sessiondump_wdigest_offsets.csv dll_version, architecture, wdigest_session_list 25 / 31

26 / 31 Outils réalisés c) Sessiondump Requiert les droits systèmes Commandes GetLsasrvVer GetWdigestVer SetLsasrvOffsetsFile SetWdigestOffsetsFile GetHashes GetWdigestPasswords Options de gethashes et getwdigestpasswords «-i» : utilisation d'offsets «à la volée» «-o» : enregistrement des données dans des fichiers http://www.hsc.fr/ressources/outils/sessiondump/index.html.en

Outils réalisés c) Sessiondump Démonstration 27 / 31

Scénario d'attaque Exemple de compromission du controleur du domaine avec sessiondump 28 / 31

Recommandations Désactivation des packages d'authentification non utilisés HKLM\System\CurrentControlSet\Control\Lsa\Security Packages Certains sont indipensables à Windows Kerberos Msv1_0 Schannel Limiter l'utilisation des comptes privilégiés Ne pas laisser de sessions actives 29 / 31

Conclusion Empreintes et mots de passe toujours présent en mémoire Outil très pratique en test d'intrusion Pas d'outil spécifique à uploader Pas d'impact sur la stabilité de la machine 30 / 31

Merci de votre attention Questions? 31 / 31