6.5 KiB
Poluição de Parâmetros
Aprenda hacking no AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras formas de apoiar o HackTricks:
- Se você quer ver sua empresa anunciada no HackTricks ou baixar o HackTricks em PDF Confira os PLANOS DE ASSINATURA!
- Adquira o material oficial PEASS & HackTricks
- Descubra A Família PEASS, nossa coleção de NFTs exclusivos
- Junte-se ao grupo 💬 Discord ou ao grupo do telegram ou siga-me no Twitter 🐦 @carlospolopm.
- Compartilhe suas técnicas de hacking enviando PRs para os repositórios github do HackTricks e HackTricks Cloud.
Copiado de https://medium.com/@shahjerry33/http-parameter-pollution-its-contaminated-85edc0805654
Resumo :
Poluição de Parâmetros HTTP (HPP) significa poluir os parâmetros HTTP de uma aplicação web para alcançar uma tarefa maliciosa específica. Refere-se a manipular como um site trata parâmetros que recebe durante solicitações HTTP. Isso muda o comportamento do site do seu intencionado. Poluição de parâmetros HTTP é um tipo simples de ataque, mas eficaz.
Quando você polui qualquer parâmetro, o código é executado apenas no lado do servidor, que é invisível para nós, mas podemos ver os resultados na nossa tela. O processo intermediário é uma caixa preta.
Por exemplo, existe uma URL https://www.anybank.com/send que tem três parâmetros :
- from :
- to :
- amount :
URL : https://www.anybank.com/send/?from=accountA&to=accountB&amount=10000
Agora, esta é uma URL normal que procederá uma transação de 10000 de accountA para accountB, mas e se adicionarmos outro mesmo parâmetro “from :”
Então a URL será como https://www.anybank.com/send/?from=accountA&to=accountB&amount=10000&from=accountC
Quando esta URL proceder uma transação de 10000, será deduzido de accountC em vez de accountA. É assim que você manipula os parâmetros em um ataque de Poluição de Parâmetros HTTP. Embora o escopo desta vulnerabilidade não esteja limitado apenas a solicitações GET, você também pode realizar este ataque em uma solicitação baseada em POST. Você pode tentar esta vulnerabilidade em muitos lugares como mudança de senha, 2FA, comentários, upload de foto de perfil, em um parâmetro onde a chave da API é passada, OTP etc.
Quando você manipula qualquer parâmetro, sua manipulação depende de como cada tecnologia web está analisando seus parâmetros. Você pode identificar tecnologias web usando “Wappalyzer”. Abaixo está a captura de tela de algumas tecnologias e sua análise de parâmetros.Tecnologias e sua análise de parâmetros
Gostaria de compartilhar uma das minhas descobertas de HPP onde consegui assumir uma conta usando essa vulnerabilidade.
Como encontrei essa vulnerabilidade ?
- Fui para uma página de login daquele programa, ele pediu um OTP para login
Enviar OTP
2. Digitei um email e cliquei em "Enviar Senha de Uso Único"
3. Interceptei a solicitação usando o burp suite e adicionei outro email usando o mesmo parâmetro (criei dois emails para fins de teste)Solicitação Burp
4. Recebi um OTP de shrey……@gmail.com na minha outra conta radhika…..@gmail.com OTP
5. Copiei o OTP e fui para shrey….@gmail.com na tela de login do programa, inseri este OTP e entrei na conta.Tomada de Conta
Então o que aconteceu aqui é que a aplicação back-end pegou o valor do primeiro parâmetro “email” para gerar um OTP e usou o valor do segundo parâmetro “email” para fornecer o valor, o que significa que um OTP de shrey….@gmail.com foi enviado para radhika….@gmail.com.
NOTA : Aqui em uma imagem no 4º passo onde recebi um OTP para radhika….@gmail.com, fiquei confuso porque a mensagem dizia Oi Radhika, então pensei que o parâmetro não estava poluído e o OTP era para radhika….@gmail.com, mas quando tentei o OTP em shrey….@gmail.com funcionou.
Flask & PHP
Neste relato você pode ver como uma consulta HTTP como a=1&a=2
será interpretada de forma diferente pelo Flask e PHP rodando em um Apache HTTP Server. No Flask, o parâmetro será 1
(primeira ocorrência) enquanto no PHP será 2
(última ocorrência).
Aprenda hacking no AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras formas de apoiar o HackTricks:
- Se você quer ver sua empresa anunciada no HackTricks ou baixar o HackTricks em PDF Confira os PLANOS DE ASSINATURA!
- Adquira o material oficial PEASS & HackTricks
- Descubra A Família PEASS, nossa coleção de NFTs exclusivos
- Junte-se ao grupo 💬 Discord ou ao grupo do telegram ou siga-me no Twitter 🐦 @carlospolopm.
- Compartilhe suas técnicas de hacking enviando PRs para os repositórios github do HackTricks e HackTricks Cloud.