Méthodologie des vulnérabilités Web

Reading time: 5 minutes

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks

Dans chaque Pentest Web, il y a plusieurs endroits cachés et évidents qui pourraient être vulnérables. Cet article est destiné à être une liste de contrôle pour confirmer que vous avez recherché des vulnérabilités dans tous les endroits possibles.

Proxies

note

De nos jours, les applications web utilisent généralement une sorte de proxies intermédiaires, qui peuvent être (mal) utilisés pour exploiter des vulnérabilités. Ces vulnérabilités nécessitent qu'un proxy vulnérable soit en place, mais elles ont généralement aussi besoin d'une vulnérabilité supplémentaire dans le backend.

Entrée utilisateur

note

La plupart des applications web permettent aux utilisateurs d'entrer des données qui seront traitées plus tard.
En fonction de la structure des données que le serveur attend, certaines vulnérabilités peuvent ou non s'appliquer.

Valeurs réfléchies

Si les données introduites peuvent d'une manière ou d'une autre être réfléchies dans la réponse, la page pourrait être vulnérable à plusieurs problèmes.

Certaines des vulnérabilités mentionnées nécessitent des conditions spéciales, d'autres nécessitent simplement que le contenu soit réfléchi. Vous pouvez trouver des polyglottes intéressants pour tester rapidement les vulnérabilités dans :

Reflecting Techniques - PoCs and Polygloths CheatSheet

Fonctionnalités de recherche

Si la fonctionnalité peut être utilisée pour rechercher un type de données dans le backend, peut-être pouvez-vous (mal) l'utiliser pour rechercher des données arbitraires.

Formulaires, WebSockets et PostMsgs

Lorsqu'un websocket envoie un message ou qu'un formulaire permet aux utilisateurs d'effectuer des actions, des vulnérabilités peuvent apparaître.

En-têtes HTTP

En fonction des en-têtes HTTP fournis par le serveur web, certaines vulnérabilités peuvent être présentes.

Bypasses

Il existe plusieurs fonctionnalités spécifiques où des solutions de contournement peuvent être utiles pour les contourner.

Objets structurés / Fonctionnalités spécifiques

Certaines fonctionnalités nécessiteront que les données soient structurées dans un format très spécifique (comme un objet sérialisé de langage ou XML). Par conséquent, il est plus facile d'identifier si l'application pourrait être vulnérable car elle doit traiter ce type de données.
Certaines fonctionnalités spécifiques peuvent également être vulnérables si un format spécifique de l'entrée est utilisé (comme les injections d'en-tête d'email).

Fichiers

Les fonctionnalités qui permettent de télécharger des fichiers peuvent être vulnérables à plusieurs problèmes.
Les fonctionnalités qui génèrent des fichiers incluant des entrées utilisateur peuvent exécuter un code inattendu.
Les utilisateurs qui ouvrent des fichiers téléchargés par d'autres utilisateurs ou générés automatiquement incluant des entrées utilisateur peuvent être compromis.

Gestion d'identité externe

Autres vulnérabilités utiles

Ces vulnérabilités peuvent aider à exploiter d'autres vulnérabilités.

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks