Méthodologie des vulnérabilités Web

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) Apprenez et pratiquez le hacking Azure : HackTricks Training Azure Red Team Expert (AzRTE)

Soutenir HackTricks

Dans chaque Web Pentest, il existe plusieurs endroits cachés et évidents qui peuvent être vulnérables. Ce document sert de checklist pour confirmer que vous avez recherché des vulnérabilités dans tous les emplacements possibles.

Proxies

Tip

De nos jours, les applications web utilisent généralement une forme de proxies intermédiaires, qui peuvent être (ab)usés pour exploiter des vulnérabilités. Ces vulnérabilités nécessitent la présence d’un proxy vulnérable, mais elles requièrent généralement aussi une vulnérabilité supplémentaire côté backend.

Entrée utilisateur

Tip

La plupart des applications web permettent aux utilisateurs de saisir des données qui seront traitées ultérieurement.
Selon la structure des données attendues par le serveur, certaines vulnérabilités peuvent ou non s’appliquer.

Valeurs reflétées

Si les données soumises sont d’une manière ou d’une autre reflétées dans la réponse, la page peut être vulnérable à plusieurs problèmes.

Certaines des vulnérabilités mentionnées nécessitent des conditions particulières, d’autres requièrent seulement que le contenu soit reflété. Vous trouverez quelques polyglots intéressants pour tester rapidement les vulnérabilités dans :

Reflecting Techniques - PoCs and Polygloths CheatSheet

Fonctionnalités de recherche

Si la fonctionnalité permet de rechercher des données dans le backend, il est possible de l’(ab)user pour rechercher des données arbitraires.

Forms, WebSockets and 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

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

Contournements

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

Objets structurés / Fonctionnalités spécifiques

Certaines fonctionnalités exigent que les données soient structurées dans un format très spécifique (comme un objet sérialisé d’un langage ou du XML). Il est donc plus facile d’identifier si l’application peut ê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 particulier de l’entrée est utilisé (par exemple les Email Header Injections).

Fichiers

Les fonctionnalités permettant l’upload de fichiers peuvent être vulnérables à plusieurs problèmes.
Les fonctionnalités qui génèrent des fichiers incluant des données utilisateur peuvent exécuter du code inattendu.
Les utilisateurs qui ouvrent des fichiers téléchargés par d’autres utilisateurs ou générés automatiquement contenant des données utilisateur peuvent être compromis.

External Identity Management

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) Apprenez et pratiquez le hacking Azure : HackTricks Training Azure Red Team Expert (AzRTE)

Soutenir HackTricks