hacktricks/generic-methodologies-and-resources/pentesting-methodology.md

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
{% endhint %}

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 :

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
{% endhint %}