Aller au contenu principal
Un article sur notre expertise pour anticiper les tactiques de hacking sur votre surface d'attaque

Anticiper les tactiques de hacker pour réduire votre surface d’attaque

Sommaire

Qu’est-ce qu’une surface d’attaque ?

La surface d'attaque, souvent identifiée et évaluée lors de tests de pénétration, représente l'ensemble des points d'entrée potentiels qu'un attaquant pourrait exploiter afin de compromettre un système. La surface d'attaque peut être numérique comme physique. Elle englobe tous les éléments exposés : services réseau, applications web, interfaces utilisateur, dépendances et bibliothèques tierces, points d'accès physiques, et même les aspects humains via l'ingénierie sociale. Deux nouvelles aides financières sont disponibles pour promouvoir la Cybersécurité pour PME en Région Île-de-France. Protégez votre entreprise dès maintenant grâce à des solutions adaptées pour faire face à des menaces toujours plus sophistiquées. 

Réduire la surface d'attaque de son système grâce au Pentest

Pour identifier et réduire ces points d'entrée, la réalisation de tests de pénétration s'avère essentielle. Ces évaluations permettent de mettre en lumière les failles de sécurité exploitables et d'agir avant qu'un cybercriminel ne puisse s'en servir.

En toute logique, plus cette surface est étendue, plus les risques de compromission par un attaquant seront élevés, renforçant ainsi la nécessité de mener régulièrement des tests de pénétration pour limiter ces risques. 

Envie de maitriser votre surface d’attaque ?

Qu'entend-on par réduction de la surface d’attaque en cybersécurité ?

Les tests de pénétration sont devenus un élément fondamental dans la stratégie de réduction de la surface d'attaque des entreprises. Ces tests, qui reproduisent des attaques réelles sur les systèmes informatiques, permettent d'évaluer le niveau de sécurité et la capacité à résister aux intrusions. Chez NBS System, nous avons constaté que les entreprises réalisant régulièrement des tests de pénétration renforcent significativement leur posture de sécurité. En réduisant leur surface d'attaque, elles rendent la tâche des acteurs malveillants plus complexe. Cela décourage notamment des pirates opportunistes et moins expérimentés, qui sont souvent affiliés aux grands groupes de logiciel de rançon. 

Cependant, de nombreuses entreprises sous-estiment encore la gravité des menaces qui les guettent. Les conséquences de cette négligence sont alarmantes : le baromètre 2024 du CESIN révèle que près de 50 % des entreprises françaises ont subi une cyberattaque ayant eu un impact significatif. Plus préoccupant encore, les attaquants adaptent continuellement leurs tactiques, complexifiant ainsi le paysage de la cybersécurité et élargissant la surface d'attaque potentielle. L'impact financier de cette négligence est considérable : le coût de la cybercriminalité en France est évalué à 119 milliards d'euros pour 2024, contre 87 milliards en 2023 [1]. Cette augmentation significative reflète la multiplication et la diversification des vecteurs d'attaque. Les entreprises n'ayant pas encore adopté comme bonne pratique de réaliser régulièrement des tests d’intrusion s'exposent non seulement à des pertes financières substantielles, mais aussi à des dommages irréparables à leur réputation. 

Méthodologie d'exploitation : Tactiques des acteurs malveillants

Contrairement aux idées reçues, les attaques des acteurs malveillants ne sont pas toujours sophistiquées. La plupart du temps, ils vont cibler les systèmes les plus vulnérables en privilégiant des attaques simples, mais efficaces. Leur objectif est d'identifier les serveurs, sites web ou infrastructures présentant des faiblesses évidentes, potentiellement exploitables grâces des vulnérabilités (CVE) connues avec un exploit (code malveillant permettant d'exploiter une vulnérabilité) prêt à l'emploi. 

Afin d'illustrer notre propos, prenons l'exemple d'une entreprise n'ayant pas mis en place une politique de mise à jour efficace pour une de ses applications. Cette dernière, utilisant le composant SolarWinds Serv-U dans une version antérieure à 15.4.2 pour gérer le transfert de ses fichiers, se retrouve donc affectée par la vulnérabilité CVE-2024-28995, car les derniers correctifs de sécurité n'auront pas été installés. Cette vulnérabilité, présentant un score CVSS de 8.6, rend la traversée de répertoire possible sur le service FTP du composant Solar Wind Serv-U, compromettant ainsi la confidentialité de fichiers sensibles du serveur hébergeant l'application. 

Dans un premier temps, nous allons démontrer comment les attaquants trouvent leurs cibles en analysant la surface d'attaque. Ensuite, nous verrons comment l'exploit public est utilisé, et enfin, nous examinerons comment les attaquants vont exploiter les informations retrouvées sur le serveur. 

Scanning de l'internet pour trouver des cibles

Une fois la CVE identifiée, les cybercriminels scannent Internet pour trouver des systèmes vulnérables. Des outils comme Shodan, Masscan et même Google sont souvent utilisés pour cette étape. Dans notre cas d'étude de la vulnérabilité SolarWinds Serv-U, l'utilisation de Shodan permet d'identifier rapidement les cibles potentielles. 

Créer une cartographie avec Shodan

Véritable moteur de recherche de toutes les machines disposant d'une adresse IP publique, Shodan permet de cartographier les machines en fonction de divers critères, tels que le type de service, les ports ouverts et les versions des logiciels, etc. Cette fonctionnalité est un élément clé dans les tests de pénétration, car elle permet d'identifier rapidement les dispositifs exposés à des attaques. La capacité de Shodan à localiser ces appareils vulnérables contribue ainsi à élargir la surface d'attaque, facilitant le travail des attaquants. 

Comme l'on peut le voir dans l'image ci-dessus, grâce à shodan.io, on peut facilement identifier autour de 18 000 instances de ServU. 

nbs_system_surface_attaque_shodan

Le problème dans les cibles pouvant être identifiées comme étant vulnérables par Shodan repose sur le fait que les réponses des serveurs web répondent avec un entête contenant la version du service. Il s’agit là d’une fuite d’information technique, qui, bien qu’ayant une criticité mineure, peut déboucher sur une compromission, comme nous allons le voir dans la suite de cet article. 

Une fois cette phase de reconnaissance terminée et la liste des cibles potentielles établie, l'attaquant dispose de tous les éléments nécessaires pour passer à la phase suivante, l'exploitation de la vulnérabilité. 

Exploitation et compromission informatique

Une fois les cibles identifiées, les attaquants recherchent généralement un exploit ou POC (Proof Of Concept). Contrairement à l'idée répandue selon laquelle les exploits ne seraient disponibles que sur le "Dark Web" à des prix exorbitants, une simple recherche Google permet de trouver un code d'exploitation fonctionnel sur github.com. 

Cependant, il est crucial de noter que l'utilisation d'exploits publics nécessite une grande prudence. GitHub a déjà été identifié comme vecteur d'attaque et de propagation de code malveillant, comme le souligne cet article. Une analyse du code source est donc indispensable, non seulement pour des raisons de sécurité, mais aussi pour comprendre le mécanisme de la faille et potentiellement adapter l'exploit à nos besoins. 

Analyse technique de l'exploit

nbs_system_surface_attaque_analyse_technique_exploit

L'analyse du code du preuve de concept publique révèle une vulnérabilité de type "traversée de répertoire" (Directory Traversal) dans l’application Solar-U. Cette faille permet aux attaquants d'accéder à des fichiers sensibles sur le serveur vulnérable sans aucune authentification. Le mécanisme d'exploitation repose sur la manipulation de deux paramètres clés : 

  • InternalDir : permet de naviguer dans l'arborescence du système 
  • InternalFile : spécifie le fichier à récupérer 

 La combinaison de ces paramètres permet de construire des requêtes du type : 

Surface attaque requêtes

Cette vulnérabilité est particulièrement critique car elle revient à donner un accès public aux fichiers du serveur, ce qui est comparable à partager l'intégralité de son disque dur sans aucune restriction. L'utilisation de notre preuve de concept permet d'afficher le contenu du fichier Serv-UStartUpLog.txt; ce dernier est présent sur chaque serveur hébergeant ce composant logiciel. 

nbs_system_surface_attaque_code_exploitation

Une fois que nous avons pu valider que notre code d'exploitation était fonctionnel, nous avons poursuivi notre phase d'exfiltration des données. 

Gestion de l'impact et exploitation de l'information

L'exploitation réussie de la vulnérabilité de traversée de répertoire nous permet d'évaluer l'ampleur de la surface d'attaque et l'étendue des informations accessibles sur le système compromis. Pour automatiser cette approche, nous avons modifié le script afin de permettre le scan de centaines d’IP en parallèle et d’automatiser l'identification de la version du système, ses utilisateurs (avec leurs SID associés) et l’exfiltration des données. Toutes ces informations se trouvent dans les fichiers système, et nous pouvons sauvegarder méthodiquement les fichiers correspondants depuis des chemins d'accès prédéfinis pour les analyser plus en profondeur ultérieurement. Cette approche est nécessaire, car un attaquant va scanner une multitude de serveurs et, selon ses prérequis, priorisera les cibles les plus vulnérables. 

Voici un exemple de ce que notre script nous permettrait de récupérer : 

nbs_system_surface_attaque_script

Dans notre exemple, l'accès aux répertoires de l'utilisateur Administrateur indique que le service s'exécute avec les privilèges les plus élevés (compte Administrateur local). Cette configuration est cohérente avec les prérequis de Solar-U, qui nécessite des droits élevés pour assurer son bon fonctionnement. Cette situation présente un risque de sécurité significatif, car un attaquant exploitant ce compte privilégié pourrait accéder à l'ensemble des documents des utilisateurs présents sur le serveur. 

Comme on peut l'observer dans l'image ci-dessus, l'exploitation de la vulnérabilité permet d'accéder à plusieurs fichiers sensibles, notamment : 

  • USRCLASS.DAT : Registre contenant les SID utilisateurs 
  • CBS.log : Informations sur la version Windows et les mises à jour 
  • NTUSER.DAT : Configuration utilisateur et paramètres WindowsUpdate.log : Historique des mises à jour "login data" : Base de données des identifiants Chrome consolehost_history.txt : Historique des commandes PowerShell 
  • credhist : Historique des identifiants Windows 
  • ·serv-u.archive : Archive des configurations ServUhistory : Historique de navigation Chrome preferences : Paramètres de sécurité Chrome 

Selon l'utilisation du serveur, les attaquants peuvent potentiellement accéder à d'autres fichiers de configuration sensibles : 

  • IIS logs : Journaux des serveurs web 
  • Apache/nginx logs : Journaux des serveurs web alternatifs my.ini/my.cnf : Configuration des bases de données MySQL/MariaDB php.ini : Configuration PHP 
  • web.config : Configuration des applications web.env : Variables d'environnement contenant souvent des secrets config.php/config.js : Configurations diverses des applications. 

L'accès à ces fichiers permet d'établir un profil détaillé du système et potentiellement d'obtenir des informations d'identification sensibles. L'historique PowerShell, stocké dans consolehost_history.txt , expose les commandes exécutées par l'utilisateur. 

Prenons-en exemple, l'analyse de l'historique de la console PowerShell a permis d'identifier des identifiants de certificat de signature de code. Un attaquant pourrait exploiter cette découverte pour signer des malwares en usurpant l'identité de l'entreprise, représentant ainsi une menace significative. 

Surface attaque consolehost

Un autre aspect encore plus préoccupant est le fait que Serv-U stocke les informations sensibles des utilisateurs dans des fichiers nommés "nom_utilisateur.Archive". Ces fichiers contiennent notamment les chemins d'accès autorisés et les mots de passe chiffrés des utilisateurs. Ces derniers peuvent évidemment être déchiffrés, permettant ainsi un accès direct au serveur même après l'application des mises à jour. Un attaquant peut facilement générer une liste d'utilisateurs et tenter de compromettre leurs comptes par une attaque par force brute, comme le montre l'image ci-dessous : 

nbs_system_surface_attaque_liste_utilisateurs

Voici un aperçu du contenu du fichier du compte user dans le fichier "user.Archive", qui contient le mot de passe ainsi que le nom d'utilisateur : 

nbs_system_surface_attaque_fichier_user_archive

Selon SolarWinds [2], les mots de passe sont chiffrés avec TEA (Tiny Encryption Algorithm) en utilisant une clé statique stockée dans un "lieu sécurisé" sur le serveur également. Cette méthode n'empêchera pas les groupes des cybercriminels les plus aguerris de tenter de craquer vos mots de passe. 

L'exemple présenté dans cet article n'est qu'un aperçu parmi les nombreuses failles exploitables par les attaquants. En effet, notre objectif était de démontrer comment une vulnérabilité, même apparemment mineure (ici une fuite d’information technique couplée à un retard de mise à jour), peut être facilement exploitée. Notre expérience en pentests nous permet d'identifier de multiples autres surfaces d'attaque. Plus important encore, comme nous avons pu le constater, l'exploitation d'une vulnérabilité peut donner accès à de nouvelles cibles et vecteurs d'attaque, amplifiant ainsi le risque et pouvant mener à une compromission totale du système d'information. 

Dans un tel scénario, l'impact pour l'entreprise peut être désastreux : fuite de données sensibles, usurpation d'identité des utilisateurs légitimes, accès non autorisés aux systèmes connectés… 

Comment réduire la taille de la surface d’attaque grâce aux tests de pénétration ?

Une gestion proactive de cette surface, notamment par la mise en place de tests de pénétration réguliers, est essentielle pour identifier et corriger les vulnérabilités potentielles avant qu'elles ne soient exploitées par des acteurs malveillants. De plus, il est crucial d'adopter d'autres bonnes pratiques, telles qu'une politique robuste et éprouvée de mise à jour des composants logiciels, la formation des employés sur l'état de l’art en termes de cybersécurité, l'implémentation de contrôles d'accès stricts et le déploiement d’une solution de supervision permettant de détecter les tentatives d’intrusion au plus tôt. 

Grâce à une approche globale de tests de sécurité, nous identifions de manière proactive les vulnérabilités exploitables dans l'infrastructure de nos clients. Nos interventions couvrent plusieurs aspects critiques. 

Les pentests externes

Ces tests permettent d’identifier et de cartographier la surface d’attaque en analysant les actifs exposés sur Internet. Ils évaluent le niveau de risque associé à ces actifs en détectant les vulnérabilités potentielles pouvant être exploitées par un attaquant. Cela inclut l’analyse de services accessibles, d’applications web, d’adresses IP publiques ou encore de configurations DNS. Cette approche aide à renforcer la sécurité périmétrique de votre organisation et à réduire les points d’entrée exploitables par des menaces externes. 

Les pentests internes

Ce type d’audit identifie les vulnérabilités exploitables par un acteur malveillant ayant obtenu un accès au réseau interne de votre entreprise. Il évalue les risques liés aux mauvaises configurations, aux accès non sécurisés et aux failles présentes sur les postes de travail, les serveurs, les partages de fichiers ou encore les annuaires d’authentification. Cette approche permet d’anticiper les actions d’un attaquant déjà infiltré et de renforcer la sécurité interne. Il évalue aussi les risques liés aux attaques de type ingénierie sociale, comme le phishing et les risques liés aux attaques par ransomware. 

L'audit des applications web et mobiles

Ces audits vérifient que les bonnes pratiques de sécurité respectent l’état de l’art afin de réduire au maximum les risques de compromission sur les applications web et appareils mobiles. Ils incluent l’analyse des failles courantes telles que l’injection SQL, le Cross-Site Scripting (XSS), les failles d’authentification (souvent dû aux identifiants de connexion ou mots de passe faibles), ainsi que les vulnérabilités spécifiques aux API et aux applications mobiles. Cette approche met en place des mesures de sécurité pour votre organisation, protégeant les données des utilisateurs et empêchant toute exploitation malveillante. 

Ces évaluations nous permettent d'identifier précisément les vecteurs d'attaque qu'un acteur malveillant pourrait emprunter. En effet la cartographie complète de la surface d'attaque révèle souvent des vulnérabilités insoupçonnées : services mal configurés, ports non nécessaires au bon fonctionnement des applications exposés, composants logiciels obsolètes. Toutes ces faiblesses de configuration peuvent être mises bout à bout afin de construire des chemins d'attaques complexes pouvant mener dans les cas les plus graves à une compromission totale du système d'information. 

En fin de compte, une surface d'attaque minimisée, combinée à une application des bonnes pratiques, contribue à renforcer la résilience de l'organisation face aux cybermenaces.

Renforcez votre sécurité cyber en anticipant les menaces

Chaque vulnérabilité offre une nouvelle opportunité d’exploitation, augmentant ainsi les risques d’intrusion et d’attaque contre votre système. Avec un test de pénétration sur-mesure, mettez en place les meilleures pratiques pour identifier et corriger les failles avant qu’elles ne soient exploitées par des cybercriminels. 

Contactez nos experts dès aujourd’hui pour prendre rendez-vous, afin d'analyser votre surface d'attaque et renforcer la posture de sécurité de votre entreprise. 

Autres articles
Témoignage Client :  Tests d’intrusion applicatif pour GEDIVOTE

Témoignage Client : …

Découvrez dans ce témoignage client, le  retour d’expérience d’Etienne BAUCHET, Directeur Technique (CTO), sur la…

Anticiper les tactiques de hacker pour réduire votre surface d’attaque

Anticiper les tactiques…

Qu’est-ce qu’une surface d’attaque ? La surface d’attaque, souvent identifiée et évaluée lors de tests…

Aides financières Cybersécurité pour PME en Région Île-de-France

Aides financières Cybersécurité…

Des subventions cybersécurité pour protéger votre PME Deux nouvelles aides financières sont disponibles pour promouvoir…

Retour en haut