5.8 KiB
Pollution de paramètres
Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)!
Autres façons de soutenir HackTricks :
- Si vous souhaitez voir votre entreprise annoncée dans HackTricks ou télécharger HackTricks en PDF, consultez les PLANS D'ABONNEMENT !
- Obtenez le swag officiel PEASS & HackTricks
- Découvrez La famille PEASS, notre collection exclusive de NFT
- Rejoignez le 💬 groupe Discord ou le groupe Telegram ou suivez moi sur Twitter 🐦 @carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR aux HackTricks et HackTricks Cloud dépôts GitHub.
Aperçu de la pollution de paramètres HTTP (HPP)
La pollution de paramètres HTTP (HPP) est une technique d'attaque impliquant la manipulation des paramètres HTTP pour modifier le comportement attendu d'une application web. Ce type d'attaque est relativement simple mais peut être remarquablement efficace. Bien que la manipulation des paramètres se produise côté serveur et ne soit pas visible pour l'utilisateur, les changements de comportement résultants peuvent être observés côté client.
Exemple de pollution de paramètres HTTP (HPP)
Considérons une URL de transaction standard pour une application bancaire :
URL : https://www.victim.com/send/?from=accountA&to=accountB&amount=10000
Cette URL initie une transaction de 10 000 de accountA à accountB. Cependant, l'introduction d'un autre paramètre from
comme suit :
URL manipulée : https://www.victim.com/send/?from=accountA&to=accountB&amount=10000&from=accountC
pourrait entraîner la déduction de la transaction à partir de accountC au lieu de accountA. Cela illustre comment HPP peut être utilisé pour manipuler les paramètres. Notamment, cette vulnérabilité n'est pas limitée aux requêtes GET mais peut également être exploitée dans les requêtes POST à travers diverses fonctionnalités telles que les changements de mot de passe, l'authentification à deux facteurs ou les transmissions de clés API.
Il est important de reconnaître que l'analyse des paramètres dépend de la technologie web spécifique utilisée. Des outils comme Wappalyzer peuvent être utilisés pour identifier les technologies web et comprendre leurs comportements d'analyse des paramètres.
PHP
Un exemple notable d'exploitation de HPP impliquait les étapes suivantes :
- Manipulation de l'OTP :
- Une page de connexion demandant un OTP était la cible.
- Après avoir envoyé une demande d'OTP, la requête HTTP suivante a été interceptée à l'aide de Burp Suite.
- Un autre e-mail a été ajouté à la requête, dupliquant efficacement le paramètre
email
. - L'OTP destiné au premier e-mail a été envoyé par erreur au deuxième e-mail, permettant un accès non autorisé au premier compte.
Cet incident souligne comment l'application backend a traité les paramètres email
, en utilisant le premier pour la génération de l'OTP et le second pour la livraison de l'OTP.
Analyse des paramètres dans Flask & PHP
Les différentes technologies web analysent les paramètres de manière unique. Par exemple, avec une requête comme a=1&a=2
, Flask et PHP interpréteront le paramètre différemment :
- Flask : Prend la première occurrence (a=1).
- PHP (sur le serveur HTTP Apache) : Prend la dernière occurrence (a=2).
Cette différence dans la gestion des paramètres peut avoir un impact significatif sur le comportement de l'application et sa vulnérabilité aux attaques HPP. Plus de détails à ce sujet peuvent être trouvés dans cette analyse.
Références
- https://medium.com/@shahjerry33/http-parameter-pollution-its-contaminated-85edc0805654
- https://github.com/google/google-ctf/tree/master/2023/web-under-construction/solution
Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)!
Autres façons de soutenir HackTricks :
- Si vous souhaitez voir votre entreprise annoncée dans HackTricks ou télécharger HackTricks en PDF, consultez les PLANS D'ABONNEMENT !
- Obtenez le swag officiel PEASS & HackTricks
- Découvrez La famille PEASS, notre collection exclusive de NFT
- Rejoignez le 💬 groupe Discord ou le groupe Telegram ou suivez moi sur Twitter 🐦 @carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR aux HackTricks et HackTricks Cloud dépôts GitHub.