Saltar al contenido
Underc0de /foro

XSS via POST

🌐 Esta é uma tradução automática de um tópico do Underc0de, a maior comunidade de hacking e TI em espanhol. Ler o original (espanhol) e responder →
ANTRAX ·
Olá a todos!<br /><br />No fórum eu vi muitos papers ou tutoriais sobre XSS, mas nenhum fala do método POST.<br />Há alguns dias reportaram um XSS via POST no formulário de contato da Underc0de. Por sorte não era nada arriscado, mas era uma vulnerabilidade que precisávamos corrigir.<br />Desta vez usaremos o código desse formulário de contato para reproduzir a falha e para ver como testar se nossas aplicações são vulneráveis a XSS via POST.<br /><br />O código do formulário de contato está aqui: Los enlaces son solo para miembros. Registrate o iniciá sesión caso alguém queira fazer o teste.<br /><br />Além disso, precisaremos de alguma ferramenta que modifique os parâmetros que enviamos via POST. Eu usarei o Tamper Data, que é um complemento do Firefox: <br /><br />Los enlaces son solo para miembros. Registrate o iniciá sesión<br /><br />Depois de montado, o formulário de contato ficará mais ou menos assim:<br /><br />
Los enlaces son solo para miembros. Registrate o iniciá sesión
<br /><br />O primeiro passo será preencher todos os seus campos e abrir o Tamper Data. Feito isso, clicamos em "Comenzar Modificación" (no Tamper Data) e enviamos o formulário de contato.<br />Em seguida, aparecerá um alerta no Tamper Data para modificar os dados que estamos enviando. <br /><br />
Los enlaces son solo para miembros. Registrate o iniciá sesión
<br /><br />Clicamos em modificar e revisamos os valores que estão sendo enviados no lado direito, que são os que preenchemos no formulário.<br /><br />
Los enlaces son solo para miembros. Registrate o iniciá sesión
<br /><br />Agora é hora de brincar com esses campos. Este formulário de contato não filtra suas variáveis, então colocaremos algum vetor de XSS em seus parâmetros.<br />Neste caso, coloquei um simples alert no campo correo. <br /><br /><script>alert('XSS')</script><br /><br />Ao clicar em Aceitar, o site continuará carregando com a nova informação fornecida...<br /><br />
Los enlaces son solo para miembros. Registrate o iniciá sesión
<br /><br />E como vocês podem ver, apareceu o Alert com a nossa mensagem.<br /><br />Espero que seja útil!<br /><br />Abraços!<br />ANTRAX
EPSILON ·
Muito bom @ANTRAX !, isso vem muito bem porque muita gente acredita ou se limita a pensar que esse bug só é explorado via GET, assim como as Injeções SQL, e não é assim. Também não custa dizer que vocês podem usar o Live HTTP Headers ou o BurpSuite para editar cabeçalhos, já que os considero fáceis de usar.  Abraços!
GENIOL ·
excelente post!!! muito obrigado pela contribuição!! HailUnderc0de
elshotta ·
muito bom,<br />mas então o que você quer dizer é que pelo formulário normal não dá para colocar o xss?<br />só capturando o valor com o tamperdata?
WHK ·
Cita de: elshotta en Agosto 19, 2021, 01:34:44 PM<br />muito bom,<br />mas então o que você quer dizer é que pelo formulário normal não dá para colocar o xss?<br />só capturando o valor com o tamperdata?<br />
<br /><br />Um XSS independe de ir via get, post, put, delete etc., e também não depende de um software em particular; de fato, um atacante não precisa que todas as suas vítimas tenham o tamper data ou o burpsuite instalados. O que importa é o que o servidor recebe e o que ele retorna. Em outras palavras, a única coisa necessária é que alguém possa enviar involuntariamente uma requisição http (não importa o método) e que algum input possa conter algum código malicioso que seja retornado pelo servidor com cabeçalho content type do tipo html. Então, por exemplo, você poderá enviar uma tag <script> para que o próprio servidor a retorne e ela seja executada. Isso permite que, se um usuário acessar algum html seu e este tiver instruções para redirecionar o usuário para uma url (não importa se é get ou post), o navegador dele possa executar a instrução que você quiser, como, por exemplo, obter o cookie de sessão e enviá-lo para outro servidor, se o cookie permitir (devido à flag httponly).<br /><br />Dê uma olhada nestes links:<br /><br />- Los enlaces son solo para miembros. Registrate o iniciá sesión<br />- Los enlaces son solo para miembros. Registrate o iniciá sesión
developerheh ·
Adorei a sobremesa. Obrigado
Grupo de WhatsApp