12 KiB
Méthodologie de Pentesting
{% hint style="success" %}
Apprenez et pratiquez le Hacking AWS :Formation HackTricks AWS Red Team Expert (ARTE)
Apprenez et pratiquez le Hacking GCP : Formation HackTricks GCP Red Team Expert (GRTE)
Soutenir HackTricks
- Consultez les plans d'abonnement!
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs aux HackTricks et HackTricks Cloud dépôts github.
Si vous êtes intéressé par une carrière en hacking et par le fait de hacker l'inhackable - nous recrutons ! (polonais courant écrit et parlé requis).
{% embed url="https://www.stmcyber.com/careers" %}
Méthodologie de Pentesting
Les logos Hacktricks ont été conçus par @ppiernacho.
0- Attaques physiques
Avez-vous un accès physique à la machine que vous souhaitez attaquer ? Vous devriez lire quelques astuces sur les attaques physiques et d'autres sur l'évasion des applications GUI.
1 - Découverte des hôtes à l'intérieur du réseau/ Découverte des actifs de l'entreprise
Selon que le test que vous effectuez est un test interne ou externe, vous pourriez être intéressé à trouver des hôtes à l'intérieur du réseau de l'entreprise (test interne) ou à trouver des actifs de l'entreprise sur Internet (test externe).
{% hint style="info" %} Notez que si vous effectuez un test externe, une fois que vous parvenez à obtenir l'accès au réseau interne de l'entreprise, vous devez redémarrer ce guide. {% endhint %}
2- S'amuser avec le réseau (Interne)
Cette section ne s'applique que si vous effectuez un test interne.
Avant d'attaquer un hôte, vous préférez peut-être voler des identifiants du réseau ou sniffer des données pour apprendre passivement/activement (MitM) ce que vous pouvez trouver à l'intérieur du réseau. Vous pouvez lire Pentesting Network.
3- Scan de ports - Découverte de services
La première chose à faire lorsque vous cherchez des vulnérabilités dans un hôte est de savoir quels services sont en cours d'exécution sur quels ports. Voyons les outils de base pour scanner les ports des hôtes.
4- Recherche d'exploits de version de service
Une fois que vous savez quels services sont en cours d'exécution, et peut-être leur version, vous devez chercher des vulnérabilités connues. Peut-être aurez-vous de la chance et il existe un exploit pour vous donner un shell...
5- Services de Pentesting
S'il n'y a pas d'exploit intéressant pour un service en cours d'exécution, vous devriez rechercher des mauvaise configurations courantes dans chaque service en cours d'exécution.
Dans ce livre, vous trouverez un guide pour pentester les services les plus courants (et d'autres qui ne le sont pas tant que ça). Veuillez chercher dans l'index de gauche la section PENTESTING (les services sont classés par leurs ports par défaut).
Je tiens à faire une mention spéciale de la partie Pentesting Web (car c'est la plus étendue).
De plus, un petit guide sur la façon de trouver des vulnérabilités connues dans les logiciels peut être trouvé ici.
Si votre service n'est pas dans l'index, cherchez sur Google d'autres tutoriels et faites-moi savoir si vous souhaitez que je l'ajoute. Si vous ne trouvez rien sur Google, effectuez votre propre pentesting à l'aveugle, vous pourriez commencer par vous connecter au service, le fuzzing et lire les réponses (s'il y en a).
5.1 Outils automatiques
Il existe également plusieurs outils qui peuvent effectuer des évaluations automatiques des vulnérabilités. Je vous recommande d'essayer Legion, qui est l'outil que j'ai créé et qui est basé sur les notes concernant le pentesting des services que vous pouvez trouver dans ce livre.
5.2 Brute-Forcing des services
Dans certains scénarios, un Brute-Force pourrait être utile pour compromettre un service. Trouvez ici une CheatSheet de différents services de brute forcing.
6- Phishing
Si à ce stade vous n'avez trouvé aucune vulnérabilité intéressante, vous pourriez avoir besoin d'essayer un phishing afin d'entrer dans le réseau. Vous pouvez lire ma méthodologie de phishing ici:
7- Obtenir un Shell
D'une manière ou d'une autre, vous devriez avoir trouvé un moyen d'exécuter du code sur la victime. Ensuite, une liste des outils possibles à l'intérieur du système que vous pouvez utiliser pour obtenir un reverse shell serait très utile.
Surtout sous Windows, vous pourriez avoir besoin d'aide pour éviter les antivirus : Consultez cette page.\
8- À l'intérieur
Si vous avez des problèmes avec le shell, vous pouvez trouver ici une petite compilation des commandes les plus utiles pour les pentesters :
9 - Exfiltration
Vous aurez probablement besoin d'extraire des données de la victime ou même d'introduire quelque chose (comme des scripts d'escalade de privilèges). Voici un post sur les outils courants que vous pouvez utiliser à ces fins.
10- Escalade de privilèges
10.1- Privesc local
Si vous n'êtes pas root/Administrateur à l'intérieur de la machine, vous devriez trouver un moyen d'escalader les privilèges.
Ici, vous pouvez trouver un guide pour escalader les privilèges localement dans Linux et dans Windows.
Vous devriez également consulter ces pages sur le fonctionnement de Windows :
- Authentification, Identifiants, Privilèges de jeton et UAC
- Comment fonctionne NTLM
- Comment voler des identifiants sous Windows
- Quelques astuces sur Active Directory
N'oubliez pas de consulter les meilleurs outils pour énumérer les chemins d'escalade de privilèges locaux Windows et Linux : Suite PEAS
10.2- Privesc de domaine
Ici, vous pouvez trouver une méthodologie expliquant les actions les plus courantes pour énumérer, escalader les privilèges et persister sur un Active Directory. Même si cela n'est qu'une sous-section d'une section, ce processus pourrait être extrêmement délicat lors d'une mission de Pentesting/Red Team.
11 - POST
11.1 - Pillage
Vérifiez si vous pouvez trouver plus de mots de passe à l'intérieur de l'hôte ou si vous avez accès à d'autres machines avec les privilèges de votre utilisateur.
Trouvez ici différentes façons de dump des mots de passe sous Windows.
11.2 - Persistance
Utilisez 2 ou 3 types différents de mécanismes de persistance afin de ne pas avoir besoin d'exploiter à nouveau le système.
Ici, vous pouvez trouver quelques astuces de persistance sur Active Directory.
TODO: Compléter le post de persistance sous Windows & Linux
12 - Pivoting
Avec les identifiants recueillis, vous pourriez avoir accès à d'autres machines, ou peut-être devez-vous découvrir et scanner de nouveaux hôtes (redémarrez la méthodologie de Pentesting) à l'intérieur de nouveaux réseaux où votre victime est connectée.
Dans ce cas, le tunneling pourrait être nécessaire. Ici, vous pouvez trouver un post parlant de tunneling.
Vous devriez également consulter le post sur la méthodologie de pentesting Active Directory. Vous y trouverez des astuces intéressantes pour se déplacer latéralement, escalader des privilèges et dump des identifiants.
Consultez également la page sur NTLM, cela pourrait être très utile pour pivoter dans des environnements Windows.
PLUS
Applications Android
Exploitation
Python de base
Astuces Crypto
Si vous êtes intéressé par une carrière en hacking et par le fait de hacker l'inhackable - nous recrutons ! (polonais courant écrit et parlé requis).
{% embed url="https://www.stmcyber.com/careers" %}
{% hint style="success" %}
Apprenez et pratiquez le Hacking AWS :Formation HackTricks AWS Red Team Expert (ARTE)
Apprenez et pratiquez le Hacking GCP : Formation HackTricks GCP Red Team Expert (GRTE)
Soutenir HackTricks
- Consultez les plans d'abonnement!
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs aux HackTricks et HackTricks Cloud dépôts github.