segunda-feira, 28 de setembro de 2015

Nikto - Um poderoso scanner de Servidores Web



O Nikto é uma poderosa ferramenta escrita em Perl cujo objetivo é a análise de vulnerabilidades comuns em servidores Web. Ela foi desenvolvida para evidenciar o obvio: Ela irá encontrar diversos tipos de arquivos, configurações e programas padrões inseguros no seu servidor Web, se tornando um auxiliar para outros frameworks com o OpenVas, Nessus, Metasploit e etc.

Ao contrário de outros scanners como o Uniscan (ferramenta bem legal que já abordamos uma atividade didática aqui no Blog), ele não irá procurar por falhas comuns de SQL Injection, apenas irá testar o servidor ao nivel de configuração.

URL do projeto: https://cirt.net/Nikto2

Como já disse, o Nikto não é uma ferramenta que trabalha sozinha, ela é um auxiliar de outros frameworks de "exploitação", normalmente o resultado de seus scanners vem em formato de IDs de exploits publicados como "OSVDB-12184".




Onde você pesquisando pela falha no osvdb.org, você encontra mais detalhes sobre como prosseguir com a exploitação da falha.



Utiliando o Nikto na prática:

A sintaxe mais simples do Nikto é: 

root@fidelis:/# nikto -h testphp.vulnweb.com 

onde testphp.vulnweb.com  é a URL ou IP do alvo que será verificado pelo Nikto. 


Sabemos que há casos onde o servidor web apache ou nginx não roda na porta 80 do servidor, então podemos pedir para que o Nikto faça o scan em uma porta específica do servidor. 


root@fidelis:/# nikto -h www.exemplo.com -p 8080


Assim como também é possível definir várias portas para executar o scan

root@fidelis:/# nikto -h testphp.vulnweb.com -p 80, 8080, 443 

E também gerar um relatório em HTML de todas as falhas encontradas no servidor gerando um arquivo de output. 

root@fidelis:/# nikto -h www.exemplo.com -p 8080 -o exemplo.html 




Usando o Nikto anonimamente pela Tor

Podemos nos deparar com ocasiões onde estaremos realizando a análise em um servidor que tem um Firewall ativo, e que bloqueia os IPs depois de um determinado numero de requisições do mesmo. Portanto, sempre há uma forma de contornar essa situação, como utilizar vários hosts da Tor para executar o mapeamento. 

1 - Setup do TOR e do Proxychains


Para instalar o Tor e o Proxychains, basta seguir os passos deste tutorial que postem há algumas semanas: http://www.nanoshots.com.br/2015/09/anonimizando-ataques-e-varreduras-via.html

2 - Realizando o ataque 


root@fidelis:/#  service tor start
root@fidelis:/#  proxychains nikto -h www.exemplo.com 


:) 

SOBRE O AUTOR

Matheus Fidelis

http://msfidelis.github.io/

Power Ranger, Piloto de Helicópteros e Astronauta da NASA. Desenvolvedor Web PHP com foco em Backend e POO, Linux SysAdmin DevOps e Entusiasta Python. Criou esse site pra contribuir com a comunidade com coisas que aprende dentro de um setor maluco de TI :)

2 comentários:

  1. Obrigado pelo compartilhamento Matheus, mas como usar as falhas? Poderias exemplificar um ou 2 exemplos ?
    Obrigado

    ResponderExcluir
    Respostas
    1. Daí no caso não existe um padrão pra nada. Você vai ter que pesquisar os CVE e como tratá-los. Podem ser sobre interceptação de tráfego, injeção de SQL, XSS, diretório exposto, backup encontrado e etc.

      Excluir

 
Nanoshots | Open Source Security, Linux e Tutoriais © 2015 - Designed by Templateism.com