Confesso que nunca gostei do autopwn, apesar de eu o considerar uma ferramenta muito boa dentro da framework do Metasploit.
Porém, há algum tempo, estou dando umas dicas a um amigo que quer começar a trabalhar com ferramentas de segurança e tal e, para ajudá-lo, estava tentando ilustrar o uso do autopwn pra automatizar alguns procedimentos e talz.
Eis que me deparei com o erro mais comum, infelizmente, no metasploit:
Mesmo com o serviço do MySQL funcionando, mesmo com o nome do banco correto, mesmo com o login e a senha corretos, O METASPLOIT SIMPLESMENTE NÃO CONECTA NO MYSQL!
Tentei de tudo, acreditem, mas nada pareceu funcionar.
Tentei, então, ir direto à fonte: fui ao canal #metasploit para ver se alguém me ajudava.
Como sempre, o HD Moore me ajudou da melhor forma o possível(Apesar de ser um pouco cético quanto algumas coisas LOL) a resposta dele foi curta e grossa(E nos lembra um pouco da atitude dos WinFags): "Use postgres".
O meu pensamento na hora foi "LOL", mas depois foi "Okay.. :("
Nada que um "apt-get install postgresql" não resolva, é claro.
Pra quem nunca mexeu com a criança, vamos ao básico. Você loga com o seguinte comando:
# su postgres -c psql
E para criar uma senha, use o seguinte comando:
ALTER USER postgres WITH PASSWORD 'senha';
\q
E crie um banco para o Metasploit usar:
CREATE DATABASE msf3;
\q
Obs: Eu usei o nome 'msf3' porque é o nome que o metasploit já usa, mas você pode criar o nome que quiser e na hora de conectar ao banco, é só informar o nome correto.
E agora, vamos tentar de novo usar o Metasploit com o postgresql.
Só um adendo, pra 'subir' o serviço do postgres você usa:
# service postgresql-8.4 start
E vejamos o que acontece no Metasploit:

Funcionou!
Este Post poderia muito bem terminar aqui :)
Mas eu como eu sou um cara legal(E sei que a moçada vai me criticar) eu vou falar de outro problema relacionado: O Fast Track.
O Metasploit está funcionando com o driver do Postgresql, mas o Fasttrack usa o Sqlite3. Será que teremos que recompilar o fast track???
Se quiser, boa sorte champs :)
Mas você pode mudar o funcionamento dele alterando apenas um arquivo.
O arquivo de 'configuração' do autopwn no fasttrack fica em :
/pentest/exploits/fasttrack/bin/ftsrc/autopwn.py
Abra-o no seu editor favorito, como dizem os 'professores'(nano se você for badass ou vi se você for hipster) e procure as linhas:
try:
child1 = pexpect.spawn('%smsfconsole' % (metapath))
# load sqlite3
child1.sendline ('db_driver sqlite3')
# Destroy database
child1.sendline ('db_destroy pentest')
# Create database
child1.sendline ('db_create pentest')
Eu fiz da seguinte forma, mas vocês fazem da forma que acharem melhor:
try:
child1 = pexpect.spawn('%smsfconsole' % (metapath))
# carrega o Postgresql
child1.sendline ('db_driver postgresql')
# conecta no banco
child1.sendline ('db_connect postgres:flavia@127.0.0.1/msf3')
E eu apaguei o "destroy" e "create", pois segundo o próprio HD Moore, estes comandos não são mais necessários, pois o msfconsole já se preocupa em fazer isto por nós.
Curiosamente, o fast-track ainda não funcionava no meu sistema.
Ele acusava "db_driver postgresql not found".
Achei estanho e decidi tentar entrar no msfconsole pra ver se eu havia errado no nome do driver.
Eis que recebo a seguinte mensagem:
Também não entendi qual entidade fez esse erro aparecer :S
Bom, nada que alguns comandos(e saber ler o que o metasploit me disse pra fazer) não resolva:
apt-get install libpq-dev
gem install postgres
Deu uns erros pitorescos aqui, mas pelo que vi foi só na hora de criar a documentação(convenhamos, nem sei ler ;) )
E vamos testar o fast-track de novo:
![]() |
| Pwning n00bs FTW |
LOL Finalmente funcionou!
Bom, é isso, simples, mas eu já vi MUITA gente apanhando pra fazer isso ;)
Obs: Sim, eu sou hipster e uso o KDE no BT, manolagem.
Qualquer dúvida, comenta ae que eu finjo que leio e ajudo :)



eu acabei lendo tudo =(
ResponderExcluirhauahuahu que bom, então!
ResponderExcluirEu já apanhei muito com isso. Boas dicas!
ResponderExcluir