terça-feira, 18 de fevereiro de 2014

Android para pentest

Introdução

É comum hoje ver todos utilizando smartphones ou tablets, em qualquer lugar que andamos podemos ver pessoas conectadas as redes sociais, lendo seus e-mails, mandando mensagens, enfim, a ultima coisa a se pensar é desconfiar que alguém com um celular na mão pode causar um estrago na sua segurança e possivelmente arruinar seus negócios. Logo quando pensamos em analisar a segurança de um ambiente, imaginamos um notebook aberto, com tcpdump rodando, coleta de dados da rede, bits de transmissões sendo analisadas, códigos maliciosos sendo enviados a servidores, mas não conseguimos imaginar que de um simples aparelho celular conseguimos chegar bem perto disso e ainda por cima, ter excelentes resultados.
Vou mostrar o que um simples celular com sistema Android é capaz de fazer conectado em uma rede, ou até mesmo fora dela.

Inspiração

Procurei me inspirar na mobilidade de ataques, discrição, custo X benefício e didática de aprendizagem.
O que não posso deixar de fora também é da galera da DCLabs
uma das primeiras a falar sobre pentest com smatphone.
E o pioneiro, Bruno da SpiderLabs.

Material Usado

Nos testes, foi utilizado um Samsung Galaxy S2 Lite (GT-I9070) com Android 2.3.6 Kernel 2.6.35.7
Sistema feito ROOT* para poder rodar os aplicativos.
*Consulte como fazer Root no seu aparelho.

Apps Utilizados

Ambiente de Rede

O ambiente de rede utilizado para meus testes foi feito da seguinte forma.
Ip Router: 192.168.0.1
Mask: 255.255.255.0
DNS: 8.8.8.8
DHCP: 192.168.0.2 – 192.168.0.70

Descobrindo o Ouro

Em todo levantamento de ataques em uma rede, começa por mapear o perímetro, não se da para trabalhar no escuro não é mesmo? Conhecer o que está ativo na rede é essencial para qualquer teste de segurança, mapear serviços, identificar routers, computadores, impressoras, enfim, para isso eu separei alguns aplicativos para me auxiliar nesse ponto.
O primeiro aplicativo que usei para essa brincadeira foi o Fing (Mencionado no começo do paper), um scan de rede bom, não é dos melhores, mas faz o que promete.

Fing

Assim que instalado, abri o aplicativo já conecta na minha rede, fiz um scan simples.
Como?
Simples, assim que abrir o aplicativo, clique sobre o botão de atualizar, o primeiro dos 3 icones do lado superior direito do app. Ele vai fazer um scan na rede e trazer os computadores conectados, assim como na imagem abaixo.
SC20130404-011753
Como podem observar, ele me trás os computadores, o IP de cada computador, o MacAddress e o fabricante da placa de rede.
Indo alem nesse scan, clicando sobre o computador de IP 192.168.0.4 ele traz mais detalhes do alvo, podemos observar na imagem abaixo.
SC20130404-014429

Esse aplicativo se limita a fazer o básico de rede, serve mais para ter uma noção do que está online ou não na rede, ele ainda tem para análise de host:

  • Scan de Serviços ativos em porta (Scan Services)
  • Ping
  • TraceRoute
  • WakeonLan
Para concluir, eu achei um aplicativo fraco comparado aos outros que testei, mas bem poderoso caso seu aparelho android não tenha muita memória para processamento, eu adicionei ele ao paper para aqueles que possuem aparelhos mais simples que um Galaxy S2 e querem ter um scan de rede.

WiFinspect

Agora já começamos uma brincadeira de gente grande!
O WiFinspect é um aplicativo que alem de realizar um scan em toda rede ele ainda permite vasculhar na rede por dispositivos com UPnP ativos, realizar um Sniff na rede capturando pacotes e realizar a leitura de .pcap capturados.
A interface dele é bem intuitiva e de fácil aprendizagem.
 SC20130404-015633
Como podem observar, já é fácil dizer o que fazer ou não, para começar a utilizar o programa, vou usar o Host Discovery.
SC20130404-020253
Como podem ver, ele vai ter duas opções na parte superior (COMPLETE | PARTIAL) e na parte inferior do screen mais duas opções (START SCAN | STOP SCAN), no modo Completo de Scan, é feita um scan de hostnames e mais alguns detalhes, assim que feito o scan, temos algumas opções dos hosts ativos na rede, selecione um host de sua preferencia e com o pressionando ele por 3 segundo ele dará alguma opções do que podemos explorar no host.
SC20130404-020409 
  • Host Information
Traz informações sobre o host, tais como:
    • Hostname
    • MAC Address
    • Fabricante Placa de Rede(Vendor)
    • Sistema Operacional
    • Nome do Dispositivo
    • Grupo de Trabalho
  • PortScan
Faz o scan das portas abertas no host selecionado, dando a descrição do serviço que está rodando na porta e a versão.
  • Host Vulnerability Scan
Faz uma checagem (precária) de possíveis vulnerabilidades no sistema alvo. 
  • Traceroute
Faz um traceroute até o alvo.
  • Ping
Acho que é dispensável comentar o que faz hehehehe
  • Sniff on Host
Captura os pacotes de dados que este host está enviando e recebendo, realiza um sniff salvando um .pcap do alvo
De certa maneira é um bom aplicativo, com ele consegui pegar alguns dados na rede e fazer a análise dos .pcap capturados. Ele ainda gera um gráfico em pizza com dados enviados(SEND) e dados recebidos(RECEIVED) único mal que achei é que não dá para exportar ele para fora do aparelho.
Mas se limita muito na real análise dos pacotes, não mostrando o bruto passado, você só consegue extrair o conteúdo do .pcap no seu próprio computador.
Ainda temos mais uma opção interessante, que particularmente eu não usei muito, mas de qualquer forma é interessante. No menu principal, você tem a ultima opção chamada PCI DSS Menu , com ele podemos verificar as senhas default de AccessPoint, fazer testes de segurança em AccessPoint, verificar redes Wifi por perto e fazer uma análise interna de vulnerabilidade.
SC20130405-002738
A ultima opção do menu é a mais interessante que achei desse app, é difícil achar um app que faz a verificação de vulnerabilidade na rede externa, fora da zona do Wifi, enfim, com ele você consegue fazer isso. Você tem, desde scan de vulnerabilidade até PortScanner.
Uma opção na qual não falei e vale ressaltar para uma análise da rede é a NetworkInformation, logo no primeiro menu, ele traz informações sobre a wifi, como frequencia, canal, MAC do AccessPoint, seu IP, IP Externo, Gateway e mascara de rede, DNS, DNS Server, são informações que valem a pena ter anotada para realizar uma melhor análise.

dSploit 

Esse aplicativo de fato me surpreendeu com sua brutalidade em capturar dados, ainda por cima é FREE, há versão paga, mas a livre já faz um estrago considerável em uma rede aberta.
Só em ver a descrição do aplicativo já se nota que é de respeito, ele faz a varredura da rede inteira, captura os pacotes trafegados,  realiza MITM com opções pré definidas, tais como, captura de senhas (HTTP,POP,SMTP,SNMTP,FTP,IRC,MSN,IMAPS e etc…), faz um sniff da rede e salva os “.pcap”, realiza hijacker nas sessões ativas, mata TODA conexão interna, redireciona o tráfego para um determinado site de seu interesse, altera todas as imagens dos sites visitados na rede pela foto de sua preferencia(excelente para trollar), altera os vídeos do youtube por um único vídeo, é o mesmo que o da foto, realiza um inject de javascript em sites acessados na rede possibilitando um ataque de crosssite para os usuários da sua rede e ainda tem um filtro customizado que possibilita usar o sniffer da maneira que melhor te agrada, capturando o tráfego com os filtros que você determinar.
Ainda há outras opções como, LoginCracker que realiza um bruteforce em sistemas como FTP, HTTP-HEAD,ICQ,MYSQL,POP3 e etc….são muitas opções, é quase como se fosse um Hydra.
Não vou prolongar muito, vou mostrar os testes que eu realizei com esse aplicativo, não cheguei a usar 100% das ferramentas que ele tem, mas usei o básico para mostrar que ele é funcional e eficiente.
Realizando o ataque
Fiz o scan da minha rede de testes, ele me trouxe exatamente o mesmo que os outros apps, nada de novo.
Selecionei meu alvo, peguei o computador do meu Pai para realizar todos os testes (Sim, ele ficou PUTO comigo por isso!)
SC20130402-222414
Comecei a realizar ataques de negação de serviço primeiro, aproveitei que ele estava baixando filme e estava consumindo muito a rede e resolvi sacanear rsrs. Primeira coisa que fiz foi selecionar o computador dele no app como mostra a figura acima.
Assim que selecionei um alvo, ele entra em um outro menu, com funções que usaremos no alvo.
SC20130402-223422
Como pode ver na ultima imagem, temos 2 opções para fazer o DDoS no meu pai, a primeira seria a Packet Forger.
Com o PacketForger você irá gerar tráfego(pacotes) para o alvo determinado/selecionado assim lotando ele com pacotes mal formados  induzindo a perda de pacotes normais, para terem uma ideia, segue um print da tela do PacketForger.
SC20130405-004415
Vou ser sincero em admitir que não sei se usei de maneira certa o app, mas não causou nenhum efeito em minha rede, nada, nem arranhão.
Então parti para o segundo método, o KillConection que fica em MITM. No menu anterior, selecione o MITM, na próxima tela, selecione o Kill Conections.
SC20130405-011103
Como podem ver na imagem abaixo, esse sim funcionou.
DDoS2
Mas porque esse funcionou e o outro não?
Esse ataque que fiz, ele redireciona todo o tráfego do alvo para o celular e da um DROP em tudo, perdendo a conexão com o “mundo exterior” rsrsrs. E é assim que se para os downloads do meu pai para que eu possa assistir vídeos a vontade :)
Saindo de DDoS, vamos para um outro tipo de ataque que é muito bom também, vamos ver o que podemos fazer com o MITM do android.
Nesse menu mesmo onde fizemos o ataque por Kill Conections temos varias opções para atacar usando o envenenamento de ARP, vamos começar pela primeira opção:

Simple Sniff

Redireciona o tráfego para seu aparelho e gera um “.pcap” com o tráfego que passar por ali, bem útil para quem tem xplico instalado no computador, é uma mão na roda mesmo, deixar o celular rodando o sniffer e a tarde analisar o tráfego pelo xplico, a facilidade é tanta que não é preciso digitar uma linha se quer de código para descobrir o que passa na rede.

Password Sniffer

Um sniffer que faz um filtro das password que estão passando na rede.
**Essa imagem eu peguei da internet para ilustrar como funciona quando capturamos uma senha, eu não tirei do meu celular porque quando peguei as senhas eu esqueci de tirar print e estou com preguiça de tirar agora.

Session Hijacker

Captura a sessão de um host na rede, muito legal quando o carinha está no facebook e você rouba a sessão dele e começa a publicar no facebook por ele.

Kill Conections

Abordado acima.

Redirect

A mesma coisa que DNSSpoofing, você redireciona o tráfego de toda rede ou do host específico para um site de seu interesse.

Replace Images

Você consegue repor todas as imagens dos sites por uma que esteja no seu album ou uma que esteja na rede, mas como assim??
Simples, você escolhe a imagem e seleciona, assim que entrarem em um site que contenha um .jpg ele automaticamente vai ser substituído pela imagem que você selecionou.

Replace Videos

O mesmo que o de cima, só que fazemos isso para vídeos do youtube.

Script Injection

Adiciona um javascript nas paginas que forem sendo visitadas, muito bom para roubar cookies.

Custom Filter

Um filtro customizado para sua imaginação rolar solta, vai da sua criatividade em montar seus filtros de pesquisa na rede para capturar informações privilegiadas.
O aplicativo é muito bem feito e conta com mais alguns tipos de scans interessante, como scan de vulnerabilidade, portscanning, scan de informações do alvo e traceroute.
SC20130402-223702
SC20130402-223829
Mas o outro ataque que se destaca é o de Login Cracker que é muito bom também, a medida que você fizer o scan de portas no alvo (é necessário primeiro fazer o scan de portas no host) você pode usa-lo para fazer bruteforce, o legal é que ele conta com diversos tipos de protocolos para realizar a quebra, com a possibilidade de inserir users e senhas a brincadeira fica mais interessante.
SC20130402-223836

Conclusão

Para concluir, eu gostaria de deixar a minha nota nos aplicativos que testei, tanto os que coloquei aqui e os que testei fora desse tuto.
dSploit – 8,5
ZANTI – 6,2
DROIDSHEEP – 5,8
WiFinspect – 5,0
Fing – 3,0
Esse levantamento foi apenas para mostrar como é fácil quebrar a segurança de maneira discreta e portátil, muitos profissionais levam em consideração que isso só ocorre quando a segurança da WIFI é fraca, mas tenho uma péssima notícia, se o indivíduo que quer invadir sua empresa tem acesso a um computador limitado, ele consegue redirecionar o tráfego da placa de rede dele para a wifi facilmente, então a segurança vai alem de proteger seu ACCESS POINT.
Por favor, intenda, não estou dizendo que é impossível bloquear isso, apenas dizendo que existem contornos para varias situações e é preciso pensar em quase todas para que sejam mais protegidos possíveis.
Galerinha, compartilhe esse artigo para dar uma força ai pro blog. Obrigado!!!!


fonte:http://unknownsec.wordpress.com

0 comentários:

Postar um comentário