Montando um laboratório de Pentest com um celular Android e Kali Linux
Olá, mundo – programadores, experimentadores e os curiosos: este artigo foi escrito para vocês. Sem mais delongas, este artigo vai guiá-los passo a passo na construção de um laboratório de pentest para o OWASP Top 10 usando um celular Android e Kali Linux (embora você possa escolher qualquer sistema operacional que desejar; não abordarei as alternativas aqui). Mas antes, algumas apresentações. Meu nome é Lucas, sou desenvolvedor de software e entusiasta de segurança cibernética, baseado no Brasil. É basicamente isso. Vamos mergulhar um pouco na teoria e na prática, certo? O que é o OWASP Top 10? O OWASP Top 10 é uma lista publicada pelo Open Web Application Security Project (OWASP), uma organização sem fins lucrativos focada em melhorar a segurança do software. Ela identifica os dez riscos de segurança mais críticos para aplicações web, com base em dados de vulnerabilidades reais e contribuições de especialistas em segurança. A lista é atualizada periodicamente — normalmente a cada poucos anos — para refletir as ameaças em evolução. A versão oficial mais recente é de 2021, mas uma atualização para 2025 está em andamento e deve ser lançada na primeira metade de 2025, de acordo com o cronograma anunciado pela OWASP. Você pode saber mais acessando o site da OWASP Foundation. Por que um celular Android? Porque podemos. Você pode ter seus próprios motivos para isso, como possuir um PC de baixo custo, querer uma aplicação móvel que caiba no bolso ou até mesmo usar um notebook em uma cafeteria para hackear algo só para dar aquela exibida. No entanto, se você tiver um bom PC, poderia hospedar tanto a máquina atacante quanto a aplicação vítima nele. Mas tudo bem, isso é apenas por diversão. O que vamos utilizar hoje? Para este tutorial, estarei usando meu PC pessoal, rodando uma instância virtualizada do Kali Linux, e um Samsung Galaxy A23 com Termux instalado para hospedar a aplicação web que atacaremos. O Samsung Galaxy rodará um servidor Apache que servirá o DVWA (Damn Vulnerable Web App), uma aplicação construída propositalmente com falhas de segurança para que possamos praticar pentesting de maneira realista. Configuração Agora vem a parte divertida. Primeiro, vamos instalar o Termux (um aplicativo) no celular. O Termux permite virtualizar um subsistema Linux sem necessidade de root (com algumas limitações, é claro). Então, vamos até a Play Store e instalar o Termux. Você pode encontrá-lo aqui. Com o Termux instalado e aberto no seu celular, você verá uma tela como a abaixo: Agora, vamos digitar alguns comandos no Termux para atualizar o sistema e instalar as dependências necessárias para este projeto. Primeiro, execute: pkg update && pkg upgrade Espere a instalação terminar. Se o terminal solicitar, digite Y para permitir que o Termux use o armazenamento do celular para baixar as dependências. (Isso será necessário para qualquer comando que executarmos neste tutorial. Apenas aceite e prossiga.) Após isso, vamos instalar MySQL, PHP, Apache2 e VIM: pkg install apache2 php-apache mariadb wget vim Aguarde a conclusão da instalação e, em seguida, prossiga para a próxima etapa: configurar o Apache para executar nosso código PHP. vim $PREFIX/etc/apache2/httpd.conf No VIM, você pode rolar o arquivo usando as setas do teclado do Termux. Role até encontrar várias linhas que começam com LoadModule. Entre no modo de inserção pressionando I no teclado e adicione a seguinte linha entre os outros diretórios LoadModule: LoadModule php_module /data/data/com.termux/files/usr/libexec/apache2/libphp.so Além disso, descomente (ou seja, remova o # e quaisquer espaços em branco anteriores) a linha que contém: LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so Por fim, antes das linhas LoadModule, você deverá ver uma diretiva Listen seguida de um endereço IP. Altere-a para: Listen 0.0.0.0:8080 Pressione ESC para sair do modo de inserção e, em seguida, navegue até o final do arquivo. Uma vez lá, pressione I novamente para entrar no modo de inserção e adicione as seguintes linhas antes da diretiva Include etc/apache2/conf.d/*.conf: SetHandler application/x-httpd-php DirectoryIndex index.php index.html Certifique-se de que não haja espaços em branco à esquerda antes de nenhuma das tags; caso contrário, a configuração falhará. O arquivo deverá ficar parecido com isto: Pressione ESC no Termux e digite :wq para salvar e sair. Agora você deverá estar de volta ao terminal. Em seguida, vamos testar o servidor Apache executando: apachectl start Se você ver um aviso sobre ServerName, não se preocupe. Agora, vamos testar se o PHP está configurado corretamente no Apache executando: echo "" > $PREFIX/share/apache2/default-site/htdocs/test.php curl http://127.0.0.1:8080/test.php Você deverá ver apenas a mensagem PHP is working. Se o código PHP for exibido, o Apache não está processando o PH

Olá, mundo – programadores, experimentadores e os curiosos: este artigo foi escrito para vocês. Sem mais delongas, este artigo vai guiá-los passo a passo na construção de um laboratório de pentest para o OWASP Top 10 usando um celular Android e Kali Linux (embora você possa escolher qualquer sistema operacional que desejar; não abordarei as alternativas aqui).
Mas antes, algumas apresentações. Meu nome é Lucas, sou desenvolvedor de software e entusiasta de segurança cibernética, baseado no Brasil. É basicamente isso. Vamos mergulhar um pouco na teoria e na prática, certo?
O que é o OWASP Top 10?
O OWASP Top 10 é uma lista publicada pelo Open Web Application Security Project (OWASP), uma organização sem fins lucrativos focada em melhorar a segurança do software. Ela identifica os dez riscos de segurança mais críticos para aplicações web, com base em dados de vulnerabilidades reais e contribuições de especialistas em segurança. A lista é atualizada periodicamente — normalmente a cada poucos anos — para refletir as ameaças em evolução. A versão oficial mais recente é de 2021, mas uma atualização para 2025 está em andamento e deve ser lançada na primeira metade de 2025, de acordo com o cronograma anunciado pela OWASP. Você pode saber mais acessando o site da OWASP Foundation.
Por que um celular Android?
Porque podemos. Você pode ter seus próprios motivos para isso, como possuir um PC de baixo custo, querer uma aplicação móvel que caiba no bolso ou até mesmo usar um notebook em uma cafeteria para hackear algo só para dar aquela exibida. No entanto, se você tiver um bom PC, poderia hospedar tanto a máquina atacante quanto a aplicação vítima nele. Mas tudo bem, isso é apenas por diversão.
O que vamos utilizar hoje?
Para este tutorial, estarei usando meu PC pessoal, rodando uma instância virtualizada do Kali Linux, e um Samsung Galaxy A23 com Termux instalado para hospedar a aplicação web que atacaremos. O Samsung Galaxy rodará um servidor Apache que servirá o DVWA (Damn Vulnerable Web App), uma aplicação construída propositalmente com falhas de segurança para que possamos praticar pentesting de maneira realista.
Configuração
Agora vem a parte divertida. Primeiro, vamos instalar o Termux (um aplicativo) no celular. O Termux permite virtualizar um subsistema Linux sem necessidade de root (com algumas limitações, é claro). Então, vamos até a Play Store e instalar o Termux. Você pode encontrá-lo aqui.
Com o Termux instalado e aberto no seu celular, você verá uma tela como a abaixo:
Agora, vamos digitar alguns comandos no Termux para atualizar o sistema e instalar as dependências necessárias para este projeto. Primeiro, execute:
pkg update && pkg upgrade
Espere a instalação terminar. Se o terminal solicitar, digite Y para permitir que o Termux use o armazenamento do celular para baixar as dependências. (Isso será necessário para qualquer comando que executarmos neste tutorial. Apenas aceite e prossiga.)
Após isso, vamos instalar MySQL, PHP, Apache2 e VIM:
pkg install apache2 php-apache mariadb wget vim
Aguarde a conclusão da instalação e, em seguida, prossiga para a próxima etapa: configurar o Apache para executar nosso código PHP.
vim $PREFIX/etc/apache2/httpd.conf
No VIM, você pode rolar o arquivo usando as setas do teclado do Termux. Role até encontrar várias linhas que começam com LoadModule
. Entre no modo de inserção pressionando I no teclado e adicione a seguinte linha entre os outros diretórios LoadModule
:
LoadModule php_module /data/data/com.termux/files/usr/libexec/apache2/libphp.so
Além disso, descomente (ou seja, remova o #
e quaisquer espaços em branco anteriores) a linha que contém:
LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so
Por fim, antes das linhas LoadModule
, você deverá ver uma diretiva Listen
seguida de um endereço IP. Altere-a para:
Listen 0.0.0.0:8080
Pressione ESC para sair do modo de inserção e, em seguida, navegue até o final do arquivo. Uma vez lá, pressione I novamente para entrar no modo de inserção e adicione as seguintes linhas antes da diretiva Include etc/apache2/conf.d/*.conf
:
\.php$>
SetHandler application/x-httpd-php
dir_module>
DirectoryIndex index.php index.html
Certifique-se de que não haja espaços em branco à esquerda antes de nenhuma das tags; caso contrário, a configuração falhará. O arquivo deverá ficar parecido com isto:
Pressione ESC no Termux e digite :wq
para salvar e sair. Agora você deverá estar de volta ao terminal. Em seguida, vamos testar o servidor Apache executando:
apachectl start
Se você ver um aviso sobre ServerName
, não se preocupe.
Agora, vamos testar se o PHP está configurado corretamente no Apache executando:
echo "" > $PREFIX/share/apache2/default-site/htdocs/test.php
curl http://127.0.0.1:8080/test.php
Você deverá ver apenas a mensagem PHP is working
. Se o código PHP for exibido, o Apache não está processando o PHP corretamente. Verifique os passos anteriores para garantir que tudo foi configurado corretamente.
Pare o Apache por enquanto executando:
apachectl stop
Baixando e configurando o DVWA
O primeiro passo para configurar o DVWA corretamente é criar um banco de dados no MySQL para que ele funcione como esperado. Vamos executar o MySQL em segundo plano:
mysqld_safe &
O &
no final garante que o processo seja executado em segundo plano.
Em seguida, vamos baixar o DVWA e colocá-lo no diretório do Apache para que possamos servi-lo pela porta 8080:
cd $PREFIX/share/apache2/default-site/htdocs/
wget https://github.com/digininja/DVWA/archive/master.zip -O dvwa.zip
unzip dvwa.zip
mv DVWA-master dvwa
Mudamos de diretório para colocar os arquivos do DVWA no diretório do Apache. O segundo comando baixa o arquivo, o terceiro o descompacta e, por fim, renomeamos a pasta para facilitar o acesso à URL (ao invés de acessar localhost:8080/DVWA-master
, você usará localhost:8080/dvwa
).
Vamos também renomear o arquivo de configuração do DVWA para que funcione com o Apache:
cd dvwa/config/
mv config.inc.php.dist config.inc.php
Configurar o banco de dados MySQL com valores padrão é o próximo passo. Se desejar alterá-los, utilize o VIM para modificar o arquivo de configuração que você acabou de renomear.
Execute:
mysql -u root
Você entrará no terminal do SQL. A partir daqui, vamos criar um banco de dados, configurar um usuário e senha, e finalmente conceder privilégios ao usuário. Execute:
CREATE DATABASE dvwa;
CREATE USER 'dvwa'@'localhost' IDENTIFIED BY 'p@ssw0rd';
GRANT ALL PRIVILEGES ON dvwa.* TO 'dvwa'@'localhost';
FLUSH PRIVILEGES;
Após executar esses comandos, digite exit
para sair do terminal do SQL. Agora, reinicie o Apache com:
apachectl stop
O DVWA agora deverá estar acessível em sua rede (garanta que as máquinas estejam na mesma rede). No seu celular Android, vá em Configurações, depois Conexões ou Wi-Fi. Clique no ícone de engrenagem próximo à sua conexão Wi-Fi. Role para baixo até encontrar o seu endereço IP. Em seguida, digite
no navegador. Você deverá ver uma tela parecida com esta:
O DVWA está configurado e rodando no seu celular Android! Para pará-lo, basta executar apachectl stop
; para iniciá-lo novamente, execute apachectl start
.
Baixando e configurando o Kali Linux
Para este tutorial, vou virtualizar uma máquina Kali Linux usando o VirtualBox. Existem várias formas de rodar o Kali Linux; se você tiver mais experiência e quiser usar outro método, sinta-se à vontade. Apenas lembre-se de que tanto o Kali quanto o celular Android devem estar na mesma rede. Se você usar um VPS para rodar o Kali, pode instalar o Tailscale tanto no Android quanto no Kali Linux para que fiquem na mesma rede, por exemplo. Dito isso, vamos prosseguir!
Baixe o VirtualBox e execute o instalador. Além disso, baixe os arquivos de máquina virtual do Kali Linux. Extraia os arquivos do download do Kali Linux para o local desejado e clique duas vezes na Imagem Virtual do Kali (o primeiro arquivo na captura de tela):
Isso deverá abrir a interface do VirtualBox com a máquina Kali Linux:
Agora, vamos configurar nossa máquina virtual. O Kali requer pelo menos 2GB de RAM para rodar, mas se você tiver mais disponível, pode alocar RAM adicional para uma experiência mais fluida. O mesmo vale para os núcleos de processador (você pode alocar metade dos núcleos disponíveis, se desejar) e a RAM de vídeo.
Clique com o botão direito na máquina Kali Linux na interface do VirtualBox e selecione Settings (Configurações):
Vá até a seção Storage (Armazenamento) e certifique-se de que o disco virtual incluído na imagem está configurado corretamente:
Em seguida, vá para a aba System (Sistema) e aloque mais RAM. Ele já vem com 2GB, mas eu defini para 4GB para uma experiência mais suave:
Depois, vá para a aba Processor (Processador) e ajuste o número de núcleos, se desejar. Por padrão, ele vem com um núcleo, mas eu defini para 4. Certifique-se de que a opção Enable PAE/NX esteja marcada:
Em seguida, vá para a aba Display (Exibição) e aloque RAM de vídeo. Eu defini para 128MB para evitar quaisquer problemas visuais:
Por fim, vá para Network (Rede), selecione o Adapter 1 e mude o campo onde está escrito Attached to para Bridged Network. Isso garantirá que o Kali Linux e o celular Android estejam na mesma rede:
Agora você pode salvar as configurações e iniciar a máquina. Aguarde um pouco e a tela de login aparecerá. O usuário é kali
e a senha também é kali
. Faça login e você verá que o Kali está em execução.
Agora você pode acessar a URL do DVWA (
) a partir do Kali Linux, além de rodar ferramentas como nmap, dirbuster e outros utilitários de pentest contra a interface do Android.
Happy Hacking :)