Liens vers toutes les parties:Partie 1. Obtention de l'accès initial (accès initial)Partie 2. ExécutionPartie 3. Fixation (persistance)Partie 4. Escalade de privilègesPartie 5. Évasion de la défensePartie 6. Obtention des informations d'identification (accès aux informations d'identification)Partie 7. DécouvertePartie 8. Mouvement latéralPartie 9. Collecte de données (collecte)Partie 10 ExfiltrationPartie 11. Commandement et contrôleAyant obtenu, à la suite d'un compromis initial, l'accès au système, l'adversaire doit «regarder autour de lui», comprendre qu'il contrôle désormais les opportunités dont il dispose et si l'accès actuel est suffisant pour atteindre un objectif tactique ou ultime. Cette étape de l'attaque est appelée "Découverte" (Eng.
Discovery - "découverte scientifique", "divulgation", "exposition").
L'auteur n'est pas responsable des conséquences possibles de l'application des informations contenues dans l'article, et s'excuse également des éventuelles inexactitudes faites dans certaines formulations et termes. Les informations publiées sont une nouvelle version gratuite du contenu de MITRE ATT & CK .Les systèmes d'exploitation ont de nombreux outils intégrés avec lesquels l'adversaire peut enquêter sur le périmètre interne du réseau attaqué une fois qu'il a été compromis. Sous Windows, une interaction directe avec les fonctionnalités Windows API, WMI et PowerShell peut être utilisée pour collecter des informations.
Un attaquant utilise des méthodes de détection tout en étudiant l'environnement attaqué.Par conséquent, l'identification d'une telle activité doit être considérée comme faisant partie de la chaîne d'attaque, suivie de tentatives pour faire avancer l'ennemi à travers le réseau.
En tant que mesure visant à identifier l'activité décrite ci-dessus dans les systèmes protégés, il est recommandé de surveiller les processus et les arguments de ligne de commande qui peuvent être utilisés pour collecter des informations sur un système ou un réseau. Une recommandation générale pour empêcher la possibilité d'une enquête interne non autorisée sur le système et le réseau protégés est d'auditer la présence d'utilitaires système inutiles et de logiciels potentiellement dangereux qui peuvent être utilisés pour étudier l'environnement protégé et d'utiliser des outils pour bloquer leur lancement, par exemple, AppLocker ou des politiques de restriction logicielle (restriction logicielle). Politiques).
Système: Windows, Linux, macOS
Droits: utilisateur
Description: les attaquants peuvent essayer d'obtenir une liste de comptes sur le système ou le domaine local.
WindowsPour obtenir des informations sur le compte, les utilitaires
Net ou
Dsquery peuvent être utilisés:
net user
net group
net localgroup
dsquery user
dsquery group
Un attaquant peut utiliser
System Owner / User Discovery pour rechercher l'utilisateur principal, l'utilisateur actuel d'un système ou un groupe d'utilisateurs qui utilisent généralement le système.
MacSur Mac, les groupes d'utilisateurs peuvent être obtenus à l'aide des commandes
groups et
id . Les groupes d'utilisateurs et les utilisateurs peuvent également être répertoriés à l'aide des commandes suivantes:
dscl . list /Groups
dscacheutile -q group
LinuxSous Linux, les utilisateurs locaux peuvent être obtenus à partir du
fichier / etc / passwd , qui est lisible par tous les utilisateurs. Sur Mac, le même fichier est utilisé uniquement en mode mono-utilisateur en plus du fichier
/etc/master.passwd . De plus, les commandes
groups et
id sont également disponibles sur Linux.
Recommandations de protection: Empêchez la possibilité de répertorier les comptes d'administrateur lors de l'élévation des privilèges via l'UAC, car cela entraînerait la divulgation des noms de compte d'administrateur. La clé de registre correspondante peut être désactivée à l'aide de l'objet de stratégie de groupe:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\CredUI\
EnumerateAdministrators
GPO: Computer Configuration > [Policies] > Administrative Templates > Windows Components > Credential User Interface: Enumerate administrator accounts on elevation.
Système: Windows, macOS
Droits: utilisateur
Description: les attaquants peuvent essayer d'obtenir des listes de fenêtres ouvertes par les applications. Ces listes peuvent indiquer comment le système y est utilisé ou découvrir le contexte des informations collectées par le keylogger. Sur un Mac, cela peut être fait avec un petit script AppleScript.
Système: Windows, Linux, macOS
Droits: utilisateur
Description: pour trouver autant d'informations que possible sur un système compromis, les attaquants peuvent examiner les signets du navigateur de l'utilisateur. Les signets peuvent révéler des informations personnelles sur les utilisateurs (par exemple, les sites bancaires, les intérêts personnels, les réseaux sociaux, etc.), ainsi que des informations sur les ressources réseau internes du réseau - serveurs, outils, tableaux de bord et autres éléments d'infrastructure. Un adversaire peut utiliser des informations d'identification mises en cache dans un navigateur pour accéder aux services utilisateur dont les adresses sont stockées dans les signets du navigateur. Les emplacements de stockage des signets dépendent de la plate-forme et des spécificités des applications et du système d'exploitation. Les signets du navigateur sont généralement stockés sous forme de fichiers ou de bases de données locaux.
Recommandations de protection: Étant donné que le stockage d'informations dans des fichiers est une fonctionnalité standard du système d'exploitation, les tentatives de suppression de cette activité seront inappropriées. Par exemple, restreindre l'accès aux fichiers de signets du navigateur est susceptible d'entraîner des effets secondaires imprévus et de perturber les logiciels légitimes. Les efforts de défense devraient viser à empêcher le lancement des outils d'un attaquant et des outils aux premiers stades d'une attaque.
Système: Windows, Linux, macOS
Droits: utilisateur, administrateur, système
Description: les attaquants peuvent répertorier des fichiers et des répertoires ou rechercher des informations spécifiques dans des emplacements spécifiques sur l'hôte ou sur les ressources réseau partagées.
WindowsLes répertoires et l'
arborescence sont des exemples d'utilitaires permettant d'obtenir des informations sur les fichiers et les répertoires. Des outils personnalisés via une interaction directe avec l'API Windows peuvent également être utilisés pour collecter des informations sur les fichiers et les répertoires.
Linux et macOSSous Linux et macOS, la navigation dans les fichiers et les répertoires se fait à l'aide des commandes
ls, find et
Locate .
Recommandations de protection: Étant donné que la présentation des informations sous forme de fichiers et de répertoires est une caractéristique standard du système d'exploitation, les tentatives de suppression de cette activité seront inappropriées. Les efforts de défense devraient viser à empêcher le lancement des outils d'un attaquant et des outils aux premiers stades d'une attaque.
Système: Windows, Linux, macOS
Droits: administrateur, système
Description: les attaquants peuvent essayer d'obtenir une liste des services exécutés sur des hôtes distants, y compris ceux qui peuvent être vulnérables aux outils d'accès à distance. Les méthodes permettant d'obtenir de telles informations incluent l'analyse des ports et des vulnérabilités à l'aide d'outils téléchargés sur le système.
Conseils de
sécurité: utilisez des systèmes IDS / IPS pour détecter et empêcher les analyses à distance. Assurez-vous que les ports inutiles sont fermés, que les services inutilisés sont désactivés et que la segmentation réseau appropriée est respectée pour protéger les serveurs et les périphériques critiques.
Système: Windows, macOS
Droits: utilisateur
Description: dans les réseaux locaux, il existe souvent des lecteurs et dossiers réseau partagés qui permettent aux utilisateurs d'accéder aux répertoires réseau des répertoires de fichiers situés sur différents systèmes. Les attaquants peuvent rechercher des dossiers et des lecteurs réseau partagés sur des systèmes distants afin de rechercher des sources de données cibles et d'identifier des systèmes potentiels pour de nouveaux déplacements sur le réseau.
WindowsLe partage de fichiers sur les réseaux Windows se fait à l'aide du protocole SMB. L'utilitaire
Net peut être utilisé pour obtenir des informations d'un système distant sur la présence de lecteurs réseau partagés:
net view \remotesystem
Ou obtenez des informations sur les lecteurs réseau partagés sur le système local:
net share
.
MacSur un Mac, les partages réseau montés localement peuvent être affichés avec la commande:
df -aH
.
Système: Windows, Linux, macOS
Description: un attaquant peut utiliser l'interface réseau en
mode promiscuos (
mode «inaudible»), dans lequel la carte réseau acceptera tous les paquets, quel que soit leur destinataire, ou utilisera des ports span (ports miroir) pour capturer une grande quantité de données transmises via un câble ou réseaux sans fil.
Les données capturées pendant le reniflage peuvent contenir des informations d'identification envoyées via des connexions non sécurisées sans utiliser de protocoles de chiffrement. Diverses attaques contre les services de noms de réseau tels que l'empoisonnement LLMNR / NBT-NS en redirigeant le trafic peuvent également être utilisées pour collecter les informations d'identification sur les sites Web, les proxys et les systèmes internes. Tout en écoutant un réseau, un adversaire peut également révéler diverses informations de configuration (services en cours d'exécution, numéros de version, adresses IP, noms d'hôte, ID de VLAN, etc.) nécessaires pour poursuivre le mouvement sur le réseau et / ou contourner les fonctions de sécurité.
Conseils de sécurité: assurez-vous que le trafic sans fil est correctement chiffré. Si possible, utilisez Kerberos, SSL et l'authentification multifacteur. Surveillez les commutateurs réseau pour les ports d'envergure, l'empoisonnement ARP / DNS et les modifications de configuration de routeur non autorisées. Utilisez des outils pour identifier et bloquer les logiciels potentiellement dangereux qui peuvent être utilisés pour intercepter et analyser le trafic réseau.
Système: Windows, Linux, macOS
Droits: utilisateur
Description: une politique de mot de passe sur le réseau est un moyen pour les utilisateurs garantis d'utiliser des mots de passe complexes difficiles à deviner ou à déchiffrer par la force brute. Un attaquant peut tenter d'accéder à des informations sur les paramètres de la politique de mot de passe du réseau attaqué afin de créer une liste de mots de passe connus bien connus qui répondent aux exigences de la politique (par exemple, si la politique a une longueur de mot de passe minimale de 8 caractères, alors n'essayez pas d'utiliser des mots de passe tels que pass123 ou ne cochez pas plus de 3 4 mots de passe par compte, si le nombre de tentatives infructueuses est égal à 6) et le démarrage ultérieur de la sélection du dictionnaire des mots de passe. Les stratégies de mot de passe peuvent être appliquées et détectées sur Windows, Linux et macOS.
Windowsnet accounts
net accounts /domain
Linuxchage -l
cat /etc/pam.d/comman-password
macOSpwpolicy getaccountpolicies
Recommandations de protection: les tentatives d'empêcher directement la détection d'une politique de mot de passe ne sont pas recommandées, car les paramètres de politique de mot de passe doivent être connus de tous les systèmes et utilisateurs du réseau. Assurez-vous que la politique de mot de passe que vous utilisez rend difficile la force brute des mots de passe et ne permet pas l'utilisation de mots de passe trop légers. La façon la plus courante d'appliquer une stratégie de mot de passe sur un réseau d'entreprise est d'implémenter Active Directory.
S'il existe une tâche pour détecter une activité malveillante, surveillez les processus pour les outils et les arguments de ligne de commande qui indiquent les tentatives d'identification d'une stratégie de mot de passe. Faites correspondre cette activité avec d'autres activités suspectes du système source pour réduire la probabilité d'un faux événement lié aux actions de l'utilisateur ou de l'administrateur. L'adversaire essaiera très probablement d'identifier les paramètres de la politique de mot de passe au début de l'attaque ou conjointement avec l'utilisation d'autres techniques de l'étape d'identification et de révision.
Système: Windows
Droits: utilisateur, administrateur, système
Description: les attaquants peuvent essayer de collecter des informations sur les périphériques connectés aux ordinateurs du réseau attaqué. Ces informations peuvent être utilisées pour accroître la sensibilisation à l'environnement attaqué et peuvent être utilisées pour planifier d'autres actions malveillantes.
Système: Windows, Linux, macOS
Droits: utilisateur
Description: les attaquants peuvent essayer de trouver des groupes d'accès local ou de domaine et examiner leurs paramètres d'autorisation.
WindowsVous pouvez répertorier les groupes d'accès à l'aide de l'utilitaire
Net :
net group /domain
ner localgroup
LinuxSous Linux, les groupes locaux peuvent être énumérés à l'aide de la commande
groups , les groupes de domaine peuvent être énumérés à l'aide de la commande
ldapsearch .
macOSSur Mac, vous pouvez faire de même avec les commandes suivantes:
dscacheutil -q
- pour les groupes de domaines;
dscl . -list /Groups
dscl . -list /Groups
- pour les groupes locaux.
Système: Windows, Linux, macOS
Droits: utilisateur, administrateur, système
Description: les opposants peuvent essayer d'obtenir des informations sur les processus en cours d'exécution à partir du système afin d'obtenir des informations sur les logiciels exécutés sur les systèmes du réseau attaqué.
WindowsUn exemple de la façon d'obtenir des informations sur les processus dans Windows est l'utilitaire système
Tasklist .
Mac et LinuxSur Mac et Linux, cela se fait à l'aide de la commande
ps .
Système: Windows
Droits: utilisateur, administrateur, système
Description: les attaquants peuvent interagir avec le registre Windows pour collecter des informations sur le système, la configuration et les logiciels installés. Le registre contient une quantité importante d'informations sur le système d'exploitation, la configuration, les logiciels et la sécurité. Certaines informations peuvent aider l'adversaire à poursuivre ses opérations dans le réseau attaqué. L'interaction avec le registre peut se produire à l'aide de divers utilitaires, par exemple
Reg, ou en exécutant des outils tiers qui utilisent l'API Windows.
Système: Windows, Linux, macOS
Droits: utilisateur, administrateur, système
Description: l'adversaire tentera probablement d'obtenir une liste des systèmes du réseau attaqué. Les systèmes distants peuvent être détectés par l'adresse IP, le nom d'hôte ou un autre identifiant, qui peut ensuite être utilisé pour faire avancer un attaquant sur le réseau à partir du système actuel. Les fonctionnalités correspondantes peuvent être incluses dans les outils d'accès à distance (RAT) et les utilitaires système intégrés peuvent également être utilisés.
WindowsCommandes
ping ou
net view .
MacLe protocole
Bonjour est utilisé pour détecter les systèmes Mac dans le domaine de diffusion. Des utilitaires tels que
ping peuvent également être utilisés pour collecter des informations sur les systèmes distants.
LinuxDes utilitaires tels que ping peuvent également être utilisés pour collecter des informations sur les systèmes distants.
Système: Windows, macOS
Droits: utilisateur, administrateur, système
Description: Les attaquants peuvent essayer d'obtenir des listes de logiciels de sécurité, de configurations, de capteurs installés dans le système. L’objectif d’un adversaire peut être, par exemple, les règles de pare-feu locales, l’antivirus et les outils de virtualisation. Ces vérifications peuvent être intégrées dans des outils d'accès à distance (RAT) utilisés dans les premiers stades d'une attaque.
WindowsLes
utilitaires netsh, reg query, dir et
tasklist sont des exemples de commandes pouvant être utilisées pour obtenir des informations sur les outils de sécurité, mais d'autres outils plus spécifiques peuvent également être utilisés pour identifier les systèmes de sécurité spécifiques qu'un adversaire recherche.
MacUne façon courante de rechercher les logiciels malveillants consiste à utiliser
LittleSnitch et
KnockKnock .
Système: Windows, Linux, macOS
Droits: utilisateur
Description: un adversaire peut essayer d'obtenir des informations détaillées sur le système d'exploitation et le matériel, notamment l'architecture, la version, les correctifs et les service packs installés.
WindowsLes exemples d'utilitaires pour obtenir des informations système sont
ver, systeminfo et
dir pour identifier les informations système en fonction des fichiers et répertoires existants.
MacLa commande
systemsetup fournit des informations système détaillées, mais elle nécessite des privilèges administratifs. En outre,
system_profiler fournit une ventilation détaillée des configurations, des règles de pare-feu, des volumes montés, du matériel et bien d'autres choses sans avoir besoin d'une
élévation de privilèges .
Système: Windows, Linux, macOS
Droits: utilisateur
Description: Un attaquant recherchera très probablement des informations détaillées sur la configuration du réseau et les paramètres système auxquels il a accès ou via l'étude de systèmes distants. Certains utilitaires conçus pour administrer le système d'exploitation peuvent être utilisés pour collecter les informations ci-dessus. Exemples de tels utilitaires:
arp, ipconfig / ifconfig, nbtstat, route, tracert / tracerout , etc.
Système: Windows, Linux, macOS
Droits: utilisateur, administrateur
Description: les attaquants peuvent essayer d'obtenir une liste des connexions réseau entrantes et sortantes d'un système compromis auquel ils ont accès, ou d'un système distant, demandant des informations sur le réseau.
WindowsUtilitaires et commandes pour obtenir des informations sur les connexions réseau:
Netstat
net use
net session
Mac et LinuxNetstat et
lsof peuvent être utilisés pour afficher les connexions actuelles. Semblable à "
net session ", les utilitaires
who et
w peuvent afficher les utilisateurs actuellement connectés.
Système: Windows, Linux, macOS
Droits: utilisateur, administrateur
Description: les attaquants peuvent essayer d'identifier l'utilisateur principal du système, l'utilisateur actuel actuellement connecté, un groupe d'utilisateurs qui utilisent généralement le système ou déterminer dans quelle mesure l'utilisateur utilise le système. Un adversaire peut obtenir les informations ci-dessus en utilisant des méthodes de découverte de compte (voir la technique «Découverte de compte») ou en utilisant
des méthodes de
vidage des informations d'identification . Les informations sur l'utilisateur et son nom sont distribuées dans tout le système - elles sont incluses dans les informations sur les propriétaires des processus, fichiers et répertoires, dans les informations sur les sessions et les journaux système, afin que l'adversaire puisse utiliser différentes méthodes de détection.
Sous Mac, l'utilisateur actuel peut être identifié à l'aide des utilitaires
users, w et
who . Sur les systèmes Linux, uniquement avec
w et
who .
Système: Windows
Droits: utilisateur, administrateur, système
Description: un attaquant peut tenter d'obtenir des informations sur les services enregistrés. Pour collecter des données, un adversaire peut utiliser divers outils, notamment des utilitaires intégrés qui peuvent recevoir des informations sur les services:
sc
tasklist /svc
net start
Système: Windows
Droits: utilisateur
Description: l' heure système est définie dans le domaine et stockée par le service Windows Times pour garantir la synchronisation de l'heure entre les systèmes et les services sur le réseau d'entreprise. Un attaquant peut obtenir l'heure système et / ou le fuseau horaire d'un système local ou distant. Ces informations peuvent être collectées de plusieurs manières:
net time \\hostname
- récupère l'heure du système hôte;
w32tm /tz
- obtention du fuseau horaire.
Les informations sur l'heure du système peuvent être utiles à l'ennemi pour utiliser diverses méthodes d'attaque, telles que l'exécution d'un fichier avec une tâche planifiée ou, en fonction des informations sur le fuseau horaire, pour révéler l'emplacement de la victime.
Recommandations de protection: un logiciel de haute qualité utilise des processus légitimes pour collecter l'heure système. Les efforts de protection doivent viser à empêcher l'exécution de code indésirable ou inconnu dans le système. Pour empêcher la récupération non autorisée d'informations temporelles à partir d'un système distant, des outils tels que l'utilitaire
Net peuvent être bloqués par une politique de sécurité. La surveillance de la ligne de commande peut être utile pour détecter des instances de Net.exe ou d'autres utilitaires utilisés pour collecter l'heure et le fuseau horaire du système. La surveillance des appels d'API à ces fins est moins utile car l'API est souvent utilisée par des logiciels légitimes.