Introdução ao Nessus: Encontrando e analisando vulnerabilidades

image_pdfimage_print

Antes de começar a usar exploits, precisamos fazer uma pesquisa e análise ativa. Quando estamos identificando vulnerabilidades, nós pesquisamos por problemas que podem nos levar a fase de exploração. Apesar de algumas empresas de segurança somente utilizam ferramentas automatizadas para exploração e esperam pelo melhor, um estudo meticuloso sobre as vulnerabilidades por um pentester experiente reunirá por resultados melhores que qualquer ferramenta por si só. Veremos alguns métodos de como examinar vulnerabilidades, incluindo um escaneamento automático, análise do alvo e uma pesquisa manual.

Do Nmap a uma vulnerabilidade potencial

Após coletar informações sobre o alvo e a superfície de ataque, elaboramos alguns cenários para atingir nossos objetivos do pentest. Por exemplo, um servidor FTP na porta 21 se anuncia como um Vsftpd 2.3.4. Vsftpd significa “Very Secure FTP”. Nós podemos assumir que um produto que se chama como muito seguro está pedindo por problemas, e de fato, em julho de 2011, veio a exposição um vazamento do repositório do Vsftpd. Os binários do Vsftpd foram substituídos por uma versão com bakdoor que poderia ser ativado com apenas um usuário que tivesse um smiley 🙂. Isto abria um acesso root na porta 6200. Uma vez que este problema foi descoberto, o binário com backdoor foi removido, e a versão oficial do Vsftpd 2.3.4 foi publicada. Então, a presença do Vsftpd 2.3.4 não garante que o alvo seja vulnerável, isto é uma ameaça a ser considerada.

Nessus

O Nessus é da Tenable Security’s é um dos escaneres de vulnerabilidades mais usados comercialmente, apesar de vários fornecedores proverem produtos comparáveis. O banco de dados do Nessus inclui vulnerabilidades de diversas plataformas e protocolos, e seu scanner realiza uma série de verificações para detectar problemas conhecidos. Você pode encontrar diversos livros, postagens e treinamentos do Nessus, e quanto mais você fica familiarizado com a ferramenta, você começará a perceber o que realmente funciona melhor para você. Veremos a seguir uma ideia superficial sobre esta ferramenta. Nessus está disponível com uma versão profissional paga que os pentesters e times de segurança internos podem usar para escanear redes por vulnerabilidades. Você pode usar a versão gratuita, não comercial chamada Nessus Home para conhecer um pouco sobre a ferramenta. Esta versão é limitada a escanear até 16 endereços IP.

Instalando no Kali

Apesar do Kali ter diversas ferramentas, precisamos instalar o Nessus. Veja os passos para instalar:

  1. Abra o navegador e acesse a URL (http://www.tenable.com/products/nessus-home/). Complete o registro em “Register for an Activation Code” e depois clique em “Register” para receber o código de ativação por e-mail.
  2. Após isto, aparecerá um botão para a página de Download. Escolha a última versão de acordo com o seu sistema operacional e salve-o.
  3. Abra o terminal do Linux.
  4. Vá até a pasta de “Downloads” e entre com o comando ls para ver a lista de arquivos da pasta. Você poderá ver o arquivo do Nessus que acabou de fazer o download.
  5. Entre com o comando dpkg -i seguido do nome do arquivo baixado (você pode digitar as primeiras letras do nome do arquivo e apertar em TAB para autocompletar) e pressione ENTER para começar o processo de instalação. Isto pode demorar um pouco.
  6. Quando retornar para o prompt do root sem erros, o Nessus poderá ser instalado e você poderá ver uma mensagem como na figura de instalação.  Instalando o Nessus pelo Kali
  7. Agora entre com o comando /etc/init.d/nessusd start
  8. Abra o endereço https://localhost:8834/ no navegador. Você verá um aviso do certificado SSL semelhante a imagem a seguir.
    Endereço do Nessus
  9. Basta clicar em “Advanced” e depois em “Add Exception…“. Na janela que vai abrir, clique em “Confirm Security Exception“. Com isto, você conseguirá acessar o Nessus.
  10. Dentro do Nessus, você irá configurar sua conta de acesso (usuário e senha).
  11. Na tela seguinte, coloque o “Activation Code” que você recebeu por e-mail.
  12. Quando continuar, o Nessus vai começar a fazer o download dos plugins e pode demorar um pouco.
    Baixando os plugins
  13. Após isto ele vai iniciar normalmente e aparecerá a tela de login. Utilize o usuário e senha que acabou de criar.
  14. Se você quiser fechar o Nessus, basta fechar a aba do navegador que ele está aberto.

Iniciando o serviço

Antes de rodar o Nessus, você precisa iniciar o daemon do Nessus. Para isto, execute o comando do serviço para inicia-lo na porta TCP 8834 em seu Kali.

root@kali:~# service nessusd start

Agora abra o navegador e acesse o endereço https://kali:8834. Depois de uns minutos de inicialização, você deve ver uma tela de login. Utilize as credenciais utilizadas na instalação.

Tela de Login do Nessus

Tela de Login do Nessus

Políticas do Nessus

A interface web do Nessus tem diversas abas no topo da tela, como mostrado na figura abaixo. Vamos iniciar com a aba de Políticas (Policies). Políticas do Nessus são como arquivos de configurações que dizem ao Nessus como as vulnerabilidades serão verificadas, portas escaneadas, e então rodar o scanner de vulnerabilidades.

Nessus Policies

Para crair uma política, clique em New Policy do lado esquerdo da tela. O wizard de políticas do Nessus ajudará a criar uma política que será útil para escanear seus objetivos, como mostrado abaixo. Neste exemplo, vamos escolher a opção Web Application Test.

Tela - New Policy

Tela – New Policy

Agora você precisa incluir algumas informações básicas sobre a política, como mostrada na figura abaixo, incluindo o nome, a descrição e quais outros usuários do Nessus poderão acessar a política. Outros detalhes que podem ser definidos são Discovery (descoberta e scan de portas), Assessment (verificar vulnerabilidades web), Report (tratamento das informações para relatório) e Advanced (conexões executadas).

Se você tiver credenciais, Nessus pode se autenticar nos hosts e procurar por vulnerabilidades que podem não ser aparentes de uma perspectiva vista pela rede. Esta funcionalidade é sempre usada por times de segurança internos para testar a postura de segurança de suas redes. Você pode definir estas credenciais na aba Credentials. Por enquanto, você pode deixar isto em branco e clicar em Save.

Website Policy

Como mostrado abaixo, nossa nova política é exibida na tela Policies.

Lista com Website Policy

Lista com Website Policy

Escaneando com o Nessus

Agora, vamos trocar para a aba Scans e rodar o Nessus contra nossas máquinas alvos. Clique em Scans > New Scan, e depois clique em User. Veja que sua política vai estar listada. Selecione ela.

Scan - Política Websites

Preencha com as informação do scan. Nessus precisa de um nome (Name) para nosso scan e qual sistema (Targets) iremos escanear.

New Scan Website

Nessus roda uma série de exames contra o alvo em uma tentativa de detectar ou desconsiderar quanto mais problemas forem possíveis. O scan executado é adicionado a aba Scans.

Scan - Lista

Uma vez finalizado o scan, clique no item para ver o resultado.

Nessus poderá encontrar algumas vulnerabilidades críticas, altas, médias e baixas na máquina alvo. Também é possível que ele só encontre dados informacionais. Para ver detalhes sobre um host específico, clique nele. Os detalhes da vulnerabilidade poderá ser visto.

Referência: Penetration Testing – An hands-on introduction to Hacking.

Sou bacharel em Sistemas de Informação pela Estácio de Sá (Alagoas), especialista em Gestão Estratégica da Tecnologia da Informação pela Univ. Gama Filho (UGF) e pós-graduando em Gestão da Segurança da Informação pela Univ. do Sul de Santa Catarina (UNISUL). Tenho interesse por todas as áreas da informática, mas em especial em Gestão, Segurança da Informação, Ethical Hacking e Perícia Forense. Sempre disposto a receber sugestões de assuntos para criar uma postagem.

One Response to “Introdução ao Nessus: Encontrando e analisando vulnerabilidades”

  1. DANILO SANTANA DA SILVA disse:

    Boa noite!

    Gostaria de informações de como fazer Scanner de Web application com autenticação http.

    Pois utilizo o Nessus e não consigo configurar com êxito essa parte.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Quer ficar atualizado?

Inscreva-se em minha newsletter e seja notificado quando eu publicar novos artigos de graça!