La technologie de tromperie constitue une stratégie de cybersécurité qui s’appuie sur des leurres pour recueillir des informations sur les menaces actuelles et les méthodes d’attaques utilisées par les cybercriminels. Le principe de cette approche consiste à utiliser une sorte d’appât sur votre réseau, par exemple une fausse base de données qui semble légitime, qui s’avère irrésistible pour les attaquants. Lorsqu’un acteur de la menace est attiré par ce leurre et y accède, l’équipe de cybersécurité interne peut collecter des renseignements sur l’activité de l’attaquant et les vulnérabilités qu’il cible.
Les pièges à spam et les honeypots sont deux exemples qui figurent parmi les technologies de tromperie :
- Un piège à spam est une adresse e-mail créée pour détecter les spams et autres courriers indésirables, qui peuvent être à l’origine d’une infection par malware ou d’un vol de données d’identification.
- Un honeypot (ou « pot de miel ») est un système de leurre conçu pour attirer par la ruse des attaquants afin que les équipes informatiques puissent recueillir des informations sur leurs méthodes d’attaques.
Dans cet article, nous mettrons l’accent sur la méthode du honeypot et les différentes techniques qui existent aujourd’hui.
Téléchargez l’e-book :
Types de honeypots
Honeypots de production
Un honeypot de production est utilisé pour défendre un réseau de production contre des cyberattaques en éloignant les acteurs de la menace des systèmes critiques. On y a généralement recours parallèlement à d’autres outils de sécurité et de contrôle, comme un pare-feu, un système de détection d’intrusion (IDS) ou une solution de détection des logiciels malveillants.
Honeypot de recherche
Un honeypot de recherche s’utilise dans un environnement contrôlé, par exemple un laboratoire de recherche, pour capter et analyser le trafic suspect et découvrir de nouvelles menaces émergentes. Ces pots de miel peuvent également servir à évaluer l’efficacité de multiples outils de sécurité et technologies de protection à combattre de nouvelles attaques.
Honeypots d’interaction
Les honeypots d’interaction sont conçus pour inciter les acteurs de la menace à interagir avec certains types d’actifs numériques. La plupart du temps, ils se font passer pour un système, un serveur ou une application vulnérable que les attaquants cherchent souvent à exploiter. Deux catégories sont à distinguer.
- Les pots de miel à interaction faible simulent les services et les protocoles vulnérables les plus courants. On les utilise uniquement à des fins de détection et de surveillance de base, et ils peuvent être mis en œuvre facilement grâce à leur simplicité et leur taille réduite.
- Les pots de miel à interaction élevée se font passer pour des systèmes d’exploitation complets ou des environnements d’application complexes. Plutôt que d’émuler un service ou un protocole de manière individuelle, ils reproduisent toutes les ressources et tous les éléments système, notamment les noyaux, les pilotes, les services et les applications. En raison de leur complexité, leur déploiement et leur maintenance s’avèrent plus difficiles. Un spécialiste peut également être nécessaire pour interpréter les résultats.
Honeypot en tant que service (HaaS)
Si les pots de miel peuvent être mis en place sous la forme de dispositifs ou d’applications logicielles sur un réseau sur site, de nombreuses solutions en ligne sont également disponibles aujourd’hui. Une offre de pot de miel en tant que service permet aux organisations d’externaliser à un fournisseur tiers le déploiement d’une solution honeypot et son assistance client. Les fournisseurs de services qui incluent dans leur offre des solutions honeypot peuvent compter sur une équipe d’assistance et des spécialistes en cybersécurité hautement qualifiés, et savent comment tirer parti au maximum des données collectées. Ils peuvent également aider leurs clients à élaborer une stratégie de réponse en cas d’incident.
Répondre aux menaces de sécurité grâce aux honeypots
Découvrons comment les pots de miel peuvent apporter une réponse à l’une des menaces les plus courantes : les attaques Pass-the-Hash (PtH). Pass-the-Hash est une technique utilisée par les attaquants pour obtenir un accès non autorisé à un système informatique en mettant la main sur le hachage de mot de passe d’un utilisateur. Ils s’en servent ensuite pour s’authentifier à l’aide d’un outil comme Mimikatz, sans jamais connaître le mot de passe en texte en clair.
Détection des vols d’informations d’identification grâce à HoneyHash
Pour détecter des adversaires qui essaient de mener une attaque Pass-the-Hash, nous utiliserons une technique appelée HoneyHash. Elle consiste à implanter les identifiants d’un compte fictif dans la mémoire LSASS des points de terminaison. Si un adversaire tente de faire un mauvais usage des informations d’identification lors d’une attaque PtH, l’événement sera enregistré et analysé.
Utilisation d’un script pour la mise en place de HoneyHash
Voyons maintenant les différentes manières de déployer des pots de miel sur l’ensemble de votre environnement à l’aide d’un script.
Étape 1. Création du script
Pour veiller à ce que notre HoneyHash soit toujours implanté dans la mémoire LSASS d’un ordinateur en cours d’exécution, nous allons créer un script de démarrage. Ce dernier doit nécessairement effectuer plusieurs tâches :
- Créer un identifiant utilisateur unique pour chaque point de terminaison — Pour nous permettre d’établir où a eu lieu une attaque, il faut que le script crée un identifiant utilisateur unique à chaque exécution :
- Créer un mot de passe — Le script doit également créer un mot de passe qui semble authentique. Pour cela, il faut procéder au hachage du nom de l’ordinateur sur lequel s’exécute le script :
- Enregistrer les identifiants — Le script doit aussi obtenir le domaine et y enregistrer les informations d’identification du HoneyHash :
- Enregistrer les identifiants HoneyHash — À chaque démarrage d’un point de terminaison, le script s’exécute et crée un nouvel utilisateur et un nouveau mot de passe HoneyHash : un suivi de ces identifiants est nécessaire pour détecter les tentatives de vol. Le code suivant enregistre une nouvelle source d’événement appelée HoneyHash et ajoute les informations relatives aux informations d’identification du nouvel HoneyHash dans le journal des événements Windows :
Étape 2. Utilisation et exécution en local du script sur tous les points de terminaison souhaités
Une fois notre script créé, il existe de nombreuses options pour le déployer sur l’ensemble de l’environnement, notamment via une stratégie de groupe ou à l’aide de la plateforme Intune.
À chaque démarrage, le script crée un identifiant utilisateur et un mot de passe HoneyHash unique pour le point de terminaison. Le journal fournit également des détails sur la création du HoneyHash, et précise le moment où il a été implanté dans la mémoire :
Étape 3. Analyse des données pour détecter les attaques
Il nous faut maintenant recueillir et analyser les données. Pour commencer, nous devons être capables d’identifier une tentative d’utilisation d’identifiants volés par un attaquant. Peu importe que ce soit une attaque Pass-the-hash ou une authentification par connexion interactive, la tentative de l’attaquant aboutira à un événement d’échec d’authentification (ID d’événement 4625) qui indique l’identifiant utilisateur de notre compte HoneyHash, permettant ainsi de facilement faire le lien entre les deux.
Voici à quoi ressemble un ID d’événement 4625 montrant une tentative de connexion échouée à l’aide de l’identifiant utilisateur HoneyHash Ad.Admin :
Cet événement indique l’ordinateur à l’origine de l’attaque et l’adresse IP à partir de laquelle la tentative d’authentification s’est produite :
Détection d’une activité de reconnaissance d’un HoneyHash
Toutefois, certains attaquants font preuve d’astuce et n’utilisent pas les informations d’identification avant d’effectuer un examen rapide en réalisant une reconnaissance LDAP. Par exemple, un attaquant peut très bien vérifier à quels groupes appartient un compte d’utilisateur grâce à la commande suivante :
([ADSISearcher]"(samaccountname=AD.Admin)").FindOne().GetDirectoryEntry().memberOf
De cette manière, il s’apercevrait rapidement que le compte HoneyHash est un compte fictif, et ne tenterait donc pas de l’utiliser dans une attaque Pass-the-hash :
Il n’existe malheureusement pas de moyen facile de détecter cette activité de reconnaissance de manière native, et la surveillance du réseau peut s’avérer une approche coûteuse. Netwrix StealthINTERCEPT permet néanmoins de facilement surveiller toute activité de reconnaissance LDAP. Cette dernière s’affiche sur le tableau de bord comme suit :
Nous pouvons observer qui est à l’origine de la requête LDAP, ainsi que la date de l’événement et à partir de quel dispositif elle a été effectuée :
Nous avons découvert l’intrus même s’il n’a jamais tenté d’utiliser le compte HoneyHash dans une attaque Pass-the-hash !
Collecte de preuves numériques supplémentaires grâce au service System Monitor (Sysmon)
Se rendre compte qu’un attaquant s’est emparé des identifiants de notre pot de miel est une chose, mais pour répondre à l’attaque de manière efficace, nous devons en savoir plus. Il nous faudra peut-être déterminer l’outil utilisé pour récupérer les informations d’identification de la mémoire LSASS.
Pour augmenter votre collecte de données et ainsi mieux détecter les signes d’une attaque, vous pouvez créer des fichiers de configuration personnalisés pour le service System Monitor (Sysmon). Créons un fichier de configuration qui nous permettra de détecter deux éléments :
- L’utilisation d’outils de piratage capables de lire le contenu en mémoire de processus comme Lsass.exe
- La création de processus dans PowerShell et Mimikatz (qui permet d’identifier l’acteur individuel à l’origine de la menace)
Voici le fichier de configuration :
<Sysmon schemaversion="4.10"> <!-- Capture all hashes --> <HashAlgorithms>*</HashAlgorithms> <EventFiltering> <!-- Event ID 1 == Process Creation. --> <ProcessCreate onmatch="include"> <Image condition="end with">powershell.exe</Image> <Image condition="end with">mimikatz.exe</Image> </ProcessCreate> <!-- Event ID 5 == ProcessTerminate. --> <ProcessTerminate onmatch="include"/> <!-- Event ID 10 == ProcessAccess. --> <ProcessAccess onmatch="include"> <TargetImage condition="is">C:Windowssystem32lsass.exe</TargetImage> </ProcessAccess> <ProcessAccess onmatch="exclude"> <TargetImage condition="is">C:Windowssystem32svchost.exe</TargetImage> </ProcessAccess> <!-- Event ID 11 == FileCreate. --> <FileCreate onmatch="include"/> <!-- Event ID 12,13,14 == RegObject added/deleted, RegValue Set, RegObject Renamed. --> <RegistryEvent onmatch="include"/> <!-- Event ID 15 == FileStream Created. --> <FileCreateStreamHash onmatch="include"/> <!-- Event ID 17 == PipeEvent. --> <PipeEvent onmatch="include"/> </EventFiltering> </Sysmon>
Pour que la surveillance commence, il vous suffit de configurer Sysmon pour que le service utilise le fichier de configuration, comme suit :
.Sysmon64.exe -c .sysmon_config.xml
Les événements s’afficheront ensuite dans le journal des événements Windows (Applications and Services Logs/Microsoft/Windows/Sysmon/Operational). Par exemple, voici un événement dont l’ID d’événement est 10, ce qui indique un accès à la mémoire LSASS :
On peut observer que Mimikatz a été utilisé, mais l’événement ne dit rien sur l’utilisateur qui a exécuté le processus. Pour trouver cette information critique, il faut consulter l’ID d’événement 1, qui montre que le compte Michael.Bluth est celui qui a effectué l’extraction d’identifiants :
Comment Netwrix peut vous aider
Netwrix Active Directory est une solution de sécurité complète pour votre environnement Active Directory. Elle offre de nombreuses fonctionnalités, notamment des outils d’audit en temps réel, l’analyse du comportement des utilisateurs et des autorisations, qui ensemble permettent de protéger les actifs les plus critiques de votre organisation contre les accès non autorisés, et notamment contre les attaques Pass-the-hash.
Les produits suivants en particulier peuvent vous aider à vous défendre contre les attaques PtH.
Netwrix Threat Manager propose deux techniques très efficaces de détection des attaques Pass-the-hash :
- Comptes de jetons Honey — Vous pouvez injecter de fausses informations d’identification dans la mémoire LSASS d’ordinateurs cibles et surveiller leur utilisation pour détecter les tentatives de mouvement latéral des adversaires.
- Détection de comportements inhabituels — Définir un comportement utilisateur habituel comme point de référence peut vous aider à détecter toute utilisation inhabituelle de vos comptes, qui pourrait indiquer une attaque Pass-the-hash ou une autre attaque par mouvement latéral. Les comportements à surveiller sont les suivants :
- Un compte est utilisé depuis un hôte à partir duquel il ne s’est jamais authentifié avant.
- Un compte est utilisé pour accéder à un hôte auquel il n’a jamais accédé avant.
- Un compte accède à un grand nombre d’hôtes sur l’ensemble du réseau, ce qui constitue un comportement différent par rapport à ses modes d’accès habituels.
Netwrix Enterprise Auditor vous permet d’anticiper et d’atténuer le risque d’une attaque Pass-the-hash en vous donnant les moyens de :
- Réduire les droits d’administrateur sur vos serveurs et vos postes de travail.
- Surveiller les commandes PowerShell suspectes qui peuvent servir à l’extraction d’informations d’identification et permettre les attaques Pass-the-hash.
- Limiter l’accès des comptes hautement privilégiés à des systèmes dont les privilèges sont inférieurs.
- Veiller à ce que la protection LSA soit active sur les systèmes critiques pour rendre l’extraction d’informations d’identification à partir de la mémoire LSASS plus difficile.