Amigos, boa semana a todos.
Estarei postando algumas informações sobre o SQLMAP, forma de uso e um teste pratico com a ferramenta.
Antes de tudo, É preciso saber que não nos responsabilizamos por quaisquer danos causados a terceiros enquanto usando essa e outras ferramentas apresentadas no site.
O sqlmap tem a finalidade de facilitar as injeções de sql, assim trazendo ao processo de “sql injection” uma facilidade quando no ato de testes.
Existem diversas formas de proceder esses testes, uma delas é fazer o processo manualmente diretamente na barra de URL no destino (lik do site) . Já o sqlmap tem a proposta de facilitar todo o processo, automatizando os comandos, testes e até buscando por possíveis passwords se utilizado os programas corretos.
1 – Apresentação, Site Oficial e Testes –
A apresentação do SqlMap é feita diretamente no seu man page, para isso podemos usar o comando:
man sqlmap
Teremos como saída um resultado similar a este abaixo:
O site oficial do sqlmap pode ser consultado no seguinte endereço : http://sqlmap.org/
Os teste a seguir foram executados com cautela para que não ficassem expostos os dados da maquina realizadora dos ataques. Assim, sugiro a todos que busquem antes de executar testes façam o devido mascaramento de seus endereços Ips.
O Alvo usado foi um site localizado a partir de um script qual tem a função especifica de buscar as falhas, me dando o resultado dos sites vulneráveis ao sqlinjection.
O Ataque:
Inicialmente vou guardar o link do site que vou atacar em uma Variável, assim facilitará para mim realizar o procedimento sem ter que ficar diversas vezes digitando o endereço onde a referência de vulnerabilidade foi encontrada.
Ex : http://site.com/php?=id55487
Então, façamos o seguinte passo:
root@love:/#URLSQL=www.site.com/php?=id55487
E iniciamos o nosso Scan usando a Variavel onde está armazenada o endereço URL.
root@love:/# sqlmap -u $URLSQL –dbs
Vejam na imagem abaixo, após rodar o sqlmap que já é possível determinar as databases do site, isso porque a flag < –dbs > ao final do link diz ao programa para listar as databases, claro isso se o site oferecer a vulnerabilidade para o escaneamento.
Após termos a lista de databases (banco de dados) do nosso alvo, então é hora de testarmos a database escolhida, pedindo ao sqlmap para exibir as tabelas do banco, para isso é necessário usar o conjuto de flags < -D <database> –table >.
De certa forma, podemos eventualmente alcançar alguns erros, mas nada que nos impeça de tentar novamente,até conseguirmos algo. Como neste caso não houve erro, prossigo…
root@love:/# sqlmap -u $URLSQL -D dbserver3 –tables
Logo que este passo for concluido, teremos as seguintes informações: Tabelas do banco de dados solicitado acima. EX:
Agora , cabe a nós continuarmos, e especificar qual tabela ou tabelas desejamos obter informações , para tal basta continuarmos o teste especificando a tabela qual obteremos uma ou mais colunas.
root@love:/# sqlmap -u $URLSQL -D dbserver3 -T admin_user –columns
Logo obteremos os seguintes dados:
Agora só nos resta definir quais colunas queremos um “dump”, quais vamos buscar os dados, assim então rodamos o sqlmap da seguinte forma:
root@love:/# sqlmap -u $URLSQL -D dbserver3 -T admin_user -C admin_email,admin_pass,_admin_username –dump
Veja que usamos o “-C” para especificar as colunas desejadas e o “–dump” para obtermos as informações das colunas listadas.
Durante o scan o sqlmap nos dá a opção de crackear informações com um ataque de dicionário, no caso eu optei por não fazê-lo.
E teremos esse resultado:
Bom, logicamente ainda falta muito para se chegar a “invadir” este site, mas a proposta desse tópico foi referenciar a facilidade para se chegar a senhas e informações de um site que esteja vulnerável a este tipo de ataque.
Eu recomendo a todos que caso façam os testes se privem a somente testar, que não entrem em sites desconhecidos a menos que você tenha o conhecimento específico para não ser encontrado ou não deixar rastros. No mais fica mais essa dica e que todos possam usá-la como fonte de estudo somente.