– root@injetionsec:~#

#01 – Burp Suite

14.07.2015 (1:25 pm) – Filed under: Pentest ::

A principal utilidade do burp suite e interceptar o tráfego web regular nos protocolos HTTP e HTTPS, tudo isso para interceptar dados entre o servidor web e a solicitação do usuário, se podemos ver as solicitações de respostas das aplicações web podemos adotar técnicas para testar a segurança, configure seu navegador usando proxy:

Adress: localhost Port : 8080
Ou
Adress: 127.0.0.1 Port : 8080

Você pode verificar se esta configurado acessando no seu navegador http://burp se estiver tudo configurado vera a seguinte tela abaixo:

burpsuite_1

Podemos adicionar vários hosts, porta e o protocolo, se tivermos uma lista de host para adicionar fazemos da seguinte forma.

burpsuite_2burpsuite_3

 

Às vezes, a aplicação que precisamos testar encontra-se dentro de alguma rede corporativa e o clientes que tem acesso tem um endereço IP específico para poder passar no firewall corporativo, outras vezes nós estamos dentro do local do cliente mas precisamos ter um proxy interno para obter acesso ao site e iniciar o teste. Em todos esses casos temos de ser capazes de adicionar um proxy adicional para analisarmos no  Burp como usamos nos navegadores.

Usando tunelamento SSH como um SOCKS proxy é bastante útil quando queremos dar um IP valido para um administrador de firewall para acessar um aplicativo, para isso você terá que ter um servidor com um endereço IP estático, que você pode conectar usando  o SSH. Mas se gostaria-mos de interceptar o tráfego de nossa televisão,  iOS ou dispositivos Android, podemos fazer configurando diferentes portas e interfaces, vamos em Proxy> Proxy Listeners , depois é add os proxy e a porta qualquer.

burpsuite_9

SSL e opções avançadas

 O HTTPS é uma combinação de HTTP sobre SSL/TLS para evitar a espionagem, adulteração, e ataques MITM. Para interceptar o tráfego através de HTTPS, é preciso configurar mais algumas coisas em navegadores e servidores certificados X.509, que são assinados pela autoridade certificadora, o burp gera um certificado valido que e aceito pelo  navegador, se o certificado não for assinado pela autoridade certificadora conhecida por nós, nos deparamos com erros inválidos de certificado.

burpsuite_5

Neste ponto, podemos aceitar o erro e iniciar a intercepção pois e esse o erro que esperávamos  para iniciarmos nossos testes, iremos gerar um CA no burp suíte, devidamente configurado como proxy, iremos clicar em CA, após isso sera gerado um certificado para importamos para o navegador.

burpsuite_6burpsuite_7

Clique em OK e vamos ao navegador e digitamos http://burp  veja se ocorreu algum erro, caso contrario seu certificado estará instalado com sucesso!

Passagem SSL

 Às vezes, devido à forma como os aplicativos e sites são criados, pode não ser possível interceptar o tráfego SSL. Normalmente o burp irá mostrar um erro de negociação SSL, um dos casos mais comuns é quando um aplicação móvel ou outro dispositivo utiliza certificate pinning[1][2], podemos adicionar o host na lista de passagem SSL. Isso pode ser automatizado, marcando uma opção, veja abaixo:

burpsuite_8

Referências
[1] https://media.blackhat.com/bh-us-12/Turbo/Diquet/BH_US_12_Diqut_Osborne_Mobile_Certificate_Pinning_Slides.pdf
[2] http://resources.infosecinstitute.com/ios-application-security-part-36-bypassing-certificate-pinning-using-ssl-kill-switch/
https://support.portswigger.net/customer/portal/articles/1841101-configuring-an-android-device-to-work-with-burp
https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2012/july/network-analysis-with-proxydroid-burpsuite-and-hipster-dog/