O artigo fora escrito, inicialmente, para o fork do
Viva o Linux, que era o
Segurança Linux. Por isso, talvez você encontre referências às informações do Segurança Linux, como endereço, nome etc; nada que comprometa a integridade do artigo.
- Autor: André S. Rosa Junior
- Tema: Pentest
- Plataforma: Web
* Nota 1: Todas as informações apresentadas neste artigo foram obtidas na Internet, sendo assim, não ofereço nenhum tipo de garantia ou suporte. Não nos responsabilizamos por qualquer dano ocorrido, tanto na máquina (computador) quanto no software. Siga por sua conta e risco.
* Nota 2: Para realizar um
Pentest, ou uma intrusão, você deve ter autorização. Caso contrário, tal ato pode ser considerado crime, sujeito a punições cabíveis. Todos os testes feitos neste artigo foram autorizados.
Neste artigo iremos realizar um simples pentest, onde tentaremos injetar códigos em um formulário, tentando assim, interpretar estes mesmos códigos.
Caso consigamos interpretar estes mesmos códigos, podemos "criar" nossa própria aplicação em cima disso, com o intuito de realizar phishing, ou melhor dizendo, roubar informações.
Aqui utilizaremos uma técnica chamada XSS, que junto à outras técnicas, como o
Clickjacking, podemos fazer um estrago. E posso afirmar que, em 80% dos testes que eu faço neste tipo de aplicação, 90% está vulnerável.
O que é XSS
O
XSS (Cross-site scripting) é uma vulnerabilidade muito comum em aplicações WEB (PHP, ASP...), onde podemos injetar códigos HTML e JavaScript nesta mesma aplicação, podendo assim, "modificar" esta página da forma que bem desejarmos.
- Mas isso é Defacement?
R: Não!
Ou melhor, depende do ponto de vista de quem está a explorar. Eu, por exemplo, não vejo o porque de usar isto apenas para "mexer" nos sites alheios para "zoar".
Pois isso é uma vulnerabilidade que permite muito mais, o que falaremos mais a frente, que são as possibilidades. :)
O ataque XSS
Vou tentar explicar a vocês como funciona esta "belezinha". Vamos supor que você tenha um pequeno formulário, escrito em HTML, um botão, que tem como ação enviar o que foi digitado para uma segunda página, a página que conterá os scripts PHP.
A única coisa que este script PHP fará, é criar uma variável pegando o método de envio do formulário (POST/GET) e criando uma variável em cima disso. Logo após, o mesmo irá retornar:
Olá $variável
Esta "variável", depois do "Olá", seria a variável contendo o que haviam digitado no campo de texto.
Agora, vamos supor que ele coloque uma tag HTML no campo de texto, o que será que nos seria retornado na página PHP ? ;*
Vamos ver isso na próxima página!
Let's hack it!