SL- 307

Como verificar vulnerabilidades em qualquer site usando o Nikto

Antes de atacar qualquer site, um hacker ou testador de penetração primeiro compila uma lista de superfícies-alvo. Depois de usarem um bom reconhecimento e encontrarem os lugares certos para apontar seu escopo, eles usarão uma ferramenta de verificação de servidor da Web, como Nikto, para caçar vulnerabilidades que podem ser vetores de ataque em potencial.

O Nikto é um scanner de servidor da Web simples e de código aberto que examina um site e relata as vulnerabilidades encontradas que podem ser usadas para explorar ou invadir o site. Além disso, é uma das ferramentas de vulnerabilidades de sites mais usadas no setor e, em muitos círculos, considerada o padrão do setor.

Embora essa ferramenta seja extremamente eficaz, ela é não furtivo. Qualquer site com um sistema de detecção de intrusão ou outras medidas de segurança em vigor detectará que está sendo verificado. Inicialmente projetado para testes de segurança, a discrição nunca foi uma preocupação.

  • Não Erro: Use o WMAP do Metasploit para escanear aplicativos da Web em busca de vulnerabilidades

A Maneira Certa de Usar o Nikto

Se você apenas executar o Nikto sozinho em um site de destino, talvez não saiba o que fazer com as informações da varredura. Na verdade, Nikto é mais como um apontador laser para chamar um ataque muito maior, e você verá como isso se desenrola daqui a pouco.

Primeiro, vamos falar sobre a superfície do alvo. Isso é praticamente qualquer lugar que um hacker tentará atacar e pode incluir coisas como impressoras expostas à rede e um servidor da web. Quando começarmos a usar o Nikto posteriormente, precisaremos fornecer a ele um dos três tipos diferentes de informações: um endereço IP para um serviço local, um domínio da Web para atacar ou um site SSL/HTTPS.

Antes de mergulhar direto em uma varredura com o Nikto, é melhor fazer algum reconhecimento adicional usando uma ferramenta de inteligência de código aberto como o Maltego. Ferramentas como essa podem ajudar a criar um perfil e uma lista mais focada de alvos disponíveis que devem ser concentrados. Uma vez feito isso, o Nikto pode ser usado para aprimorar as vulnerabilidades potenciais dos alvos da lista.

  • Não perca: Como usar o Maltego para imprimir a impressão digital de uma rede inteira

Se tiver sorte, uma vulnerabilidade com uma exploração armada será encontrada, o que significa que já existe uma ferramenta para tirar proveito da fraqueza. Com a ferramenta apropriada, que explorará automaticamente a vulnerabilidade, um hacker pode obter acesso ao alvo para realizar qualquer número de ataques nos bastidores, como adicionar código para realizar uma atividade maliciosa.

 

 

Passo 1: Instale o Nikto

Se você estiver executando o Kali Linux, o Nikto vem pré-instalado, então você não precisa baixar ou instalar nada. Ele estará localizado na categoria “Análise de vulnerabilidade”. Se você não o tiver por algum motivo, poderá obter o Nikto em seu GitHub ou apenas usar o comando apt install.


apt install nikto

Se estiver fazendo isso em um Mac, você pode usar o Homebrew para instalar o Nikto.

 brew install nikto

Passo 2: Acesse Conheça o Nikto

Antes de mergulhar na digitalização de servidores da web com o Nikto, permite que você use o – Opção Help para ver tudo o que pode ser feito dentro do Nikto.

nikto -Help<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST>

Opções: -pergunte+ Se deve perguntar sobre o envio de atualizações sim Perguntar sobre cada (padrão) não Não pergunte, não pergunte enviar auto Não pergunte, apenas envie -Cgidirs+ Examine estes diretórios CGI: "nenhum", "todos" ou valores como "/cgi/ /cgi-a/" -config+ Use este arquivo de configuração -Display+ Ativar/desativar exibição saídas: 1 Mostrar redirecionamentos 2 Mostrar cookies recebidos 3 Mostrar todas as respostas 200/OK 4 Mostrar URLs que requerem autenticação D Saída de depuração E Exibir todos os erros HTTP P Imprimir progresso para STDOUT S Esfregar saída de IPs e nomes de host V Saída detalhada -dbcheck Verificar banco de dados e outros arquivos-chave para erros de sintaxe -evasion+ Técnica de codificação: 1 Codificação URI aleatória (não-UTF8) 2 Auto-referência de diretório (/./) 3 Finalização prematura de URL 4 Prefixar string aleatória longa 5 Parâmetro falso 6 TAB como espaçador de solicitação 7 Alterar o caso da URL 8 Use o separador de diretório do Windows () A Use um retorno de carro (0x0d) como um espaçador de solicitação B Use o valor binário 0x0b como um espaçador de solicitação -Format+ Salve o arquivo (-o) formato: csv Valor separado por vírgula htm Formato HTML nbe Nessus NBE format sql Generic SQL (consulte a documentação para ver o esquema) txt Texto simples xml Formato XML (se não for especificado  ied, o formato será obtido da extensão do arquivo passada para -output) -Help Informações de ajuda estendida -host+ Host de destino -404code Ignore esses códigos HTTP como respostas negativas (sempre).  O formato é "302.301".  -404string Ignore esta string no conteúdo do corpo da resposta como resposta negativa (sempre).  Pode ser uma expressão regular. -id+ Autenticação do host a ser usada, o formato é id:pass ou id:pass:realm -key+ Arquivo de chave do certificado do cliente -list-plugins Lista todos os plug-ins disponíveis, não realiza testes -maxtime+ Tempo máximo de teste por host (por exemplo, 1h, 60m, 3600s) -mutate+ Adivinha nomes de arquivos adicionais: 1 Testa todos os arquivos com todos os diretórios raiz 2 Adivinha nomes de arquivos de senha 3 Enumera nomes de usuários via Apache (/~pedidos de tipo de usuário) 4 Enumera nomes de usuários via cgiwrap (/cgi-bin/cgiwrap/ ~ solicitações de tipo de usuário) 5 Tentativa de nomes de subdomínio de força bruta, assume que o nome do host é o domínio pai 6 Tentativa de adivinhar nomes de diretório do arquivo de dicionário fornecido -mutate-options Fornece informações para mutates -nointeractive Desativa recursos interativos -nolookup Desativa as pesquisas de DNS -nossl Desativa o uso de SSL -no404 Desativa a tentativa do nikto de adivinhar uma página 404 -Option Sobrepõe uma opção no nikto.conf, pode ser emitida várias vezes -output+ Grava a saída neste arquivo ('.' para auto -name) -Pause+ Pausa entre os testes (segundos,  integer ou float) -Plugins+ Lista de plug-ins a serem executados (padrão: ALL) -port+ Porta a ser usada (padrão 80) -RSAcert+ Arquivo de certificado do cliente -root+ Anexar valor raiz a todas as solicitações, o formato é /diretório -Salvar Salvar respostas positivas para isso diretório ('.' para nome automático) -ssl Força o modo ssl na porta -Tuning+ Scan tuning: 1 Arquivo Interessante / Visto em logs 2 Configuração incorreta / Arquivo padrão 3 Divulgação de informações 4 Injeção (XSS/Script/HTML) 5 Recuperação remota de arquivo - Inside Web Root 6 Negação de Serviço 7 Recuperação Remota de Arquivo - Todo o Servidor 8 Execução de Comandos / Shell Remoto 9 SQL Injection 0 Upload de Arquivo um Bypass de Autenticação b Identificação de Software c Inclusão de Fonte Remota d WebService e Console Administrativo x Opções de Ajuste Reverso (ou seja, incluir todos, exceto especificado) -timeout+ Tempo limite para solicitações (padrão 10 segundos) -Userdbs Carregar apenas bancos de dados do usuário, não os bancos de dados padrão all Desativar dbs padrão e carregar apenas testes de dbs do usuário Desativar apenas db_tests e carregar udb_tests -useragent Over  -utiliza o useragent padrão -até Executar até o tempo ou duração especificado -update Atualiza bancos de dados e plug-ins do CIRT.net -useproxy Use o proxy definido em nikto.conf ou o argumento http://server:port -Version Imprimir plug-in e banco de dados versões -vhost+ Host virtual (para cabeçalho do host) + requer um valor 

Passo 3: Use a Sintaxe Básica

Como você pode ver no passo anterior, Nikto tem muitas opções, mas para nossos propósitos, vamos nos ater à sintaxe básica da seguinte forma. Substituiremos o pelo endereço IP real ou nome do host sem colchetes angulares.

nikto -h

No entanto, o Nikto é capaz de fazer uma varredura que pode ir atrás do SSL e da porta 443, a porta que os sites HTTPS usam (HTTP usa a porta 80 por padrão). Portanto, não estamos apenas limitados a verificar sites antigos, podemos fazer avaliações de vulnerabilidade em sites que usam SSL, o que é praticamente um requisito atualmente para ser indexado nos resultados de pesquisa.

Se sabemos que é um site SSL que estamos direcionando, podemos especificá-lo no Nikto para economizar algum tempo na verificação adicionando -ssl ao final do comando.


nikto -h -ssl

Etapa 4: digitalizar um Site habilitado para SSL

Por exemplo, vamos começar com a varredura pbs.org para ver alguns dos tipos de informações que uma varredura Nikto mostrará . Depois que ele se conecta à porta 443, vemos que há algumas informações úteis sobre a cifra e uma lista de outros detalhes como o servidor Nginx, mas não há muitos dados interessantes aqui para nós.

nikto -h pbs.org -ssl

– Nikto v2.1.6 ————————- ————————————————– — – STATUS: Iniciando! + IP de destino: 54.225.198.196 + Nome do host de destino: pbs.org + Porta de destino: 443 ——————————- ———————————————– + Informações SSl : Assunto: /CN=www.pbs.org Nomes alternativos: account.pbs.org, admin.pgs.org, dipsy-tc.pbs.org, docs.pbs.org, ga.video.cdn.pbs.org, git .pbs.org, heart.ops.pbs.org, hub-dev.pbs.org, image.pbs.org, jaws..pbs.org, kids.pbs.org, koth-qa.svp.pbs.org, login.pbs.org, ops.pbs.org, pbs.org, player.pbs.org, projects.pbs.org, sentry.pbs.org, teacherline.pbs.org, urs.pbs.org, video.pbs. org, weta-qa.svp.pbs.org, whut-qa.svp.pbs.org, wnet.video-qa.pbs. org, wnet.video-staging.pbs.org, www-cache.pbs.org, www.pbs.org Cifras: ECDHE-RSA-AES128-GCM-SHA256 Emissor: /C-US/0=Vamos criptografar/CN= Let’s Encrypt Authority X3 + Hora de início: 2018-12-05 23:34:06 (GMT-8) ————————— ————————————————– – + Servidor: nginx + O cabeçalho X-Frame-Options anti-clickjacking não está presente. + O cabeçalho X-XSS-Protection não está definido. Este cabeçalho pode sugerir ao agente do usuário proteção contra algumas formas de XSS + Cabeçalho incomum ‘x-pbs-fwsrvname’ encontrado, com conteúdo: fwcacheproxy1 + O site usa SSL e o cabeçalho HTTP Strict-Transport-Security não está definido. + O cabeçalho X-Content-Type-Options não está definido. Isso pode permitir que o agente do usuário renderize o conteúdo do site de uma maneira diferente do tipo MIME + Página raiz / redireciona para: https://www.pbs.org/ + Nenhum diretório CGI encontrado (use ‘-C all’ para forçar a verificação de todos os diretórios possíveis) + Endereço IP RC-1918 encontrado no cabeçalho ‘x-pbs-appsvrip’: O IP é “10.137.181.52”. + Cabeçalho incomum ‘x-cache-fs-status’ encontrado, com conteúdo: EXPIRADO + Cabeçalho incomum ‘x-pbs-appsvrname’ encontrado, com conteúdo: fwcacheproxy1 + Cabeçalho incomum ‘x-pbs-appsvrip’ encontrado, com conteúdo: 10.137 .181.52 + Servidor vaza inodes via ETags, cabeçalho encontrado com arquivo /pbs.org.zip, campos: 0x5b96537e 0x1678 + 7446 solicitações: 0 erro(s) e 10 item(ns) relatados no host remoto + Hora final: 2018-12 -06 00:30:29 (GMT-8) (3383 segundos) ———————————- ——————————————– + 1 anfitrião(es) testado

Etapa 5: digitalizar um endereço IP

Agora que realizamos uma varredura rápida de um site, vamos tentar usar o Nikto em uma rede local para encontrar servidores incorporados, como uma página de login para um roteador ou serviço HTTP em outra máquina que é apenas um servidor sem site. Para começar, vamos encontrar nosso endereço IP usando ifconfig.

ifconfig

en0: flags=8863 mtu 1500 inet 192.168.0.48 netmask 0xffffff00 broadcast 192.168.0.255 inet6 XXXX::XXX:XXXX:XXXX:XXXX%en0 prefixlen 64 scopeid seguro 0x8 ether XX:XX:XX:XX:XX:XX txqueuelen 1000 (Ethernet) inet6 XXXX::XXX:XXXX:XXXX:XXXX% en0 prefixlen 64 autoconf protegido inet6 XXXX::XXX:XXXX:XXXX:XXXX%en0 prefixlen 64 autoconf temporário nd6 options=201
mídia: status de seleção automática: ativo en2: sinalizadores=8863<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500 options=60<TS04,TS06> ether XX:XX:XX:XX: Mídia XX:XX: seleção automática status: inativo

<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST>

O endereço IP que queremos é o “i net” um. Em seguida, podemos executar ipcalc nele para obter nosso alcance de rede. Se você não tem ipcalc, você pode instalá-lo com apt install ipcalc e tente novamente. O intervalo estará ao lado de “Rede”, no meu caso, 192.168.0.0/24.

ipcalc 192.168.0.48<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST>

Endereço: 192.168.0.48 11000000.10101000. 00000000.  00110000 Máscara de rede: 255.255.255.0 = 24 11111111.11111111.11111111.  00000000 Curinga: 0.0.0.255 00000000.00000000.00000000.  11111111 => Rede: 192.168.0.0/24 11000000.10101000.00000000.  00000000 HostMin: 192.168.0.1 11000000.10101000.00000000.  00000001 HostMax: 192.168.0.254 11000000.10101000.00000000.  11111110 Transmissão: 192.168.0.255 11000000.10101000.00000000.  11111111 Hosts/Net: 254 Classe C, Internet Privada

Agora, vamos querer rodar o Nmap para encontrar serviços rodando no alcance da rede. Vamos escanear a porta 80 com nosso range e inserir -oG (saída grepable) para extrair apenas os hosts que estão funcionando, ou seja, os que respondem indicando que a porta 80 está aberta. Em seguida, salvaremos tudo em um arquivo, que estou chamando de nullbyte.txt, mas pode ter qualquer nome.

nmap -p 80 192.168.0.0/24 -oG nullbyte.txt

Iniciando o Nmap 7.60 ( https://nmap.org ) em 2018-12-06 00 :43 Relatório de varredura PST Nmap para 192.168.0.1 O host está ativo (latência de 0,021s). PORT STATE SERVICE 80/tcp aberto relatório de varredura Nmap http para 192.168.0.2 O host está ativo (latência de 0,088s). PORT STATE SERVICE 80/tcp aberto relatório de varredura Nmap http para 192.168.0.4 O host está ativo (latência de 0,032s). PORT STATE SERVICE 80/tcp aberto relatório de varredura Nmap http para 192.168.0.5 O host está ativo (latência de 0,020s). PORT STATE SERVICE 80/tcp abrir relatório de varredura Nmap http para 192.168.0.11 O host está ativo (latência de 0,068s). PORT STATE SERVICE 80/tcp fechou relatório de verificação do Nmap http para 192.168.0.24 O host está ativo (latência de 0,023s). PORT STATE SERVICE 80/tcp fechou relatório de verificação do Nmap http para 192.168.0.31 O host está ativo (latência de 0,059s). PORT STATE SERVICE 80/tcp fechou relatório de verificação do Nmap http para 192.168.0.48 O host está ativo (latência de 0,030s). PORT STATE SERVICE 80/tcp fechou relatório de verificação do Nmap http para 192.168.0.60 O host está ativo (latência de 0,092s). PORT STATE SERVICE 80/tcp fechado http Nmap concluído: 256 endereços IP (9 hosts acima) verificados em 8,92 segundos

Há um pequeno truque que pode enviar todos os hosts diretamente para o Nikto para digitalização. Usamos cat para ler a saída armazenada em nosso nullbyte.txt documento (ou o que você nomeou). Em seguida, existe o awk, uma ferramenta do Linux que ajudará a procurar o seguinte padrão, onde Up significa que o host está ativo e print $2 significa imprimir a segunda palavra nessa linha para cada, ou seja, apenas o endereço IP. Em seguida, enviamos esses dados para um novo arquivo chamado targetIP.txt (ou o nome que você quiser).

cat nullbyte.txt | awk ‘/Up$/{print $2}’ | cat >> targetIP.txt

Agora podemos visualizar o conteúdo do nosso novo arquivo com

cat para ver todos os endereços IP que têm a porta 80 aberta.

cat targetIP.txt<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST>
192.168.0.1 192.168.0.2 192.168.0.4 192.168.0.5 192.168.0.11 192.168.0.24 192.168.0.31 192.168.0.48 192.168.0.60

Isso é perfeito para Nikto porque pode facilmente interpretar arquivos como este. Assim, podemos enviar esta saída para Nikto com o seguinte comando.

nikto -h targetIP.txt

Os resultados serão semelhantes aos que obtido ao executar a verificação SSL.

Etapa 6 : Escanear um site HTTP

Verificamos um site seguro e um endereço IP em uma rede local, e agora é hora de ir atrás um domínio da web não seguro usando a porta 80. Para este exemplo, estou usando “afl.com.au”, que não estava usando SSL no momento em que executei esta verificação.

nikto -h www .afl.com.au

- Nikto v2.1.6 ------------------------ ---------------------------------------------- + IP alvo: 159.180.84.10 + Nome do host de destino: www.afl.com.au + Porta de destino: 80 + Hora de início: 2 018-12-05 21:48:32 (GMT-8) ----------------------------------- ---------------------------------------- + Servidor: instart/nginx + Nova tentativa via cabeçalho : 1.1 verniz (Varnish/6.1), 1.1 e9ba0a9a729ff2960a04323bf1833df8.cloudfront.net (CloudFront) + O cabeçalho X-Frame-Options anti-clickjacking não está presente. + O cabeçalho X-XSS-Protection não está definido. Este cabeçalho pode sugerir ao agente do usuário proteção contra algumas formas de XSS + Cabeçalho incomum 'x-cache' encontrado, com conteúdo: Miss from cloudfront + Cabeçalho incomum 'x-instart-cache-id' encontrado, com conteúdo: 17: 12768802731504004780::1544075250 + Cabeçalho incomum 'v-cache-hit' encontrado, com conteúdo: Hit + Cabeçalho incomum 'x-amz-cf-id' encontrado, com conteúdo: Dr-r6OwO5kk9ABt4ejzpc7R7AIF6SuH6kfJHQgP0v6xZoHwMLE55rQ= cabeçalho x-instart request-id' encontrado, com conteúdo: 12814413144077601501:BEQ01-CPVNPPRY18:1552504721:0 + Cabeçalho incomum 'x-oneagent-js-injection' encontrado, com conteúdo: true + Cabeçalho incomum 'grace' encontrado, com conteúdo: cache + O O cabeçalho X-Content-Type-Options não está definido. Isso pode permitir que o agente do usuário renderize o conteúdo do site de uma maneira diferente do tipo MIME + Cabeçalho incomum 'x-ruxit-js-agent' encontrado, com conteúdo: true + Cookie dtCookie criado sem o sinalizador httponly + Banner do servidor mudou de 'instart/nginx' para 'nginx', o que pode sugerir que um WAF, balanceador de carga ou proxy está em vigor + Nenhum diretório CGI encontrado (use '-C all' para forçar a verificação de todos os diretórios possíveis) + Entrada '/sites/ ' em robots.txt retornou um código HTTP não proibido ou de redirecionamento (200) + Entrada '/search/' em robots.txt retornou um código HTTP não proibido ou de redirecionamento (200) + Entrada '*.mobileapp' em robots. txt retornou um código HTTP não proibido ou de redirecionamento (400) + A entrada '*.liveradio' em robots.txt retornou um código HTTP não proibido ou de redirecionamento (400) + A entrada '*.smartmobile' em robots.txt retornou um não -código HTTP proibido ou redirecionado (400) + A entrada '*.responsive' em robots.txt retornou um código HTTP não proibido ou redirecionado (400) + A entrada '/stats?*/' em robots.txt retornou um não-forb idden ou código HTTP de redirecionamento (200) + "robots.txt" contém 8 entradas que devem ser visualizadas manualmente. + OSVDB-3092: /sitemap.xml: Isso fornece uma boa listagem do conteúdo do site. + OSVDB-3092: /psql_history: Isso pode ser interessante... + OSVDB-3092: /global/: Isso pode ser interessante... + OSVDB-3092: /home/: Isso pode ser interessante... + OSVDB- 3092: /news: Isso pode ser interessante... + OSVDB-3092: /search.vts: Isso pode ser interessante... + OSVDB-3092: /stats.htm: Isso pode ser interessante... + OSVDB-3092 : /stats.txt: Isso pode ser interessante... + OSVDB-3092: /stats/: Isso pode ser interessante... + OSVDB-3092: /Stats/: Isso pode ser interessante... + OSVDB-3093: /.wwwacl: Contém informações de autorização + OSVDB-3093: /.www_acl: Contém informações de autorização + OSVDB-3093: /.htpasswd: Contém informações de autorização + OSVDB-3093: /.access: Contém informações de autorização + OSVDB-3093: /. livro de endereços: livro de endereços PINE, pode armazenar informações de contato e notas confidenciais de endereço de e-mail + OSVDB-3093: /.bashrc: o diretório inicial do usuário foi encontrado com um arquivo shell rc. Isso pode revelar informações de arquivo e caminho. + OSVDB-3093: /.bash_history: O diretório inicial de um usuário pode ser definido como a raiz da web, o histórico do shell foi recuperado. Isso não deve ser acessível através da web. + OSVDB-3093: /.forward: O diretório inicial do usuário foi encontrado com um arquivo de encaminhamento de e-mail. Pode revelar para onde o e-mail do usuário está sendo encaminhado. + OSVDB-3093: /.history: O diretório inicial de um usuário pode ser definido como a raiz da web, o histórico do shell foi recuperado. Isso não deve ser acessível através da web. + OSVDB-3093: /.htaccess: Contém informações de configuração e/ou autorização + OSVDB-3093: /.lynx_cookies: Diretório inicial do usuário encontrado com arquivo de cookie LYNX. Pode revelar cookies recebidos de sites arbitrários. + OSVDB-3093: /.mysql_history: Banco de dados SQL? + OSVDB-3093: /.passwd: Contém informações de autorização + OSVDB-3093: /.pinerc: Diretório inicial do usuário encontrado com um arquivo PINE rc. Pode revelar informações do sistema, diretórios e muito mais. + OSVDB-3093: /.plan: Diretório inicial do usuário com um .plan, um arquivo agora desatualizado para fornecer informações através do protocolo finger + OSVDB-3093: /.proclog: Diretório inicial do usuário com um arquivo Procmail rc. Pode revelar o tráfego de correio, diretórios e muito mais. + OSVDB-3093: /.procmailrc: Diretório inicial do usuário com um arquivo Procmail rc. Pode revelar subdiretórios, contatos de e-mail e muito mais. + OSVDB-3093: /.profile: foi encontrado o diretório inicial do usuário com um perfil de shell. Pode revelar informações de diretório e configuração do sistema. + OSVDB-3093: /.rhosts: O diretório inicial de um usuário pode ser definido como a raiz da web, um arquivo .rhosts foi recuperado. Isso não deve ser acessível através da web. + OSVDB-3093: /.sh_history: Um usuário' Se o diretório inicial de s pode ser definido como a raiz da web, o histórico do shell foi recuperado. Isso não deve ser acessível através da web. + OSVDB-3093: /.ssh: O diretório inicial de um usuário pode ser definido como a raiz da web, um arquivo ssh foi recuperado. Isso não deve ser acessível através da web. + OSVDB-5709: /.nsconfig: Contém informações de autorização + /portal/changelog: Log de alterações do editor HTML richtext Vignette encontrado. + 7587 solicitações: 4 erros e 55 itens relatados no host remoto + Hora de término: 2018-12-05 22:42:41 (GMT-8) (3249 segundos) -------- -------------------------------------------------- ----------------- + 1 host(s) testado(s)

Acima, podemos ver que existe um servidor Varnish e alguns cabeçalhos que ajudam a indicar como o site está configurado. No entanto, o mais interessante são os diretórios encontrados, que podem ajudar a bloquear arquivos de configuração que podem conter credenciais ou outras coisas que foram mal configuradas e deixadas involuntariamente acessíveis.

Os itens com o prefixo OSVDB são vulnerabilidades relatado no banco de dados de vulnerabilidades de código aberto (um site que fechou em 2016). É semelhante a outros bancos de dados de vulnerabilidade, como SecurityFocus, Microsoft’s Technet e Common Vulnerabilities and Exposures. Prefiro verificar o National Vulnerability Database.

Embora não haja grandes coisas que possam ser exploradas a partir desta verificação, se houver, você pode usar a ferramenta de referência CVE para traduzir o identificador OSVDB para uma entrada CVE, então você pode usar um dos outros sites acima para ler mais sobre a vulnerabilidade.

Digamos que encontramos alguns que valem a pena explorar, como CVE-2018- 10933, uma vulnerabilidade do Libssh que abordamos em detalhes anteriormente. O CVE contém informações sobre o que pode ser explorado, qual é a pontuação de gravidade (como crítico) e algumas outras informações que podem ajudar a determinar um vetor de ataque. Se valer a pena usar, você pode pesquisar no Metasploit, pois provavelmente alguém já desenvolveu um módulo armado para explorá-lo com mais facilidade.

Etapa 7: Par de varreduras com Metasploit

Uma das melhores coisas sobre o Nikto é que você pode realmente exportar informações para um formato que o Metasploit possa ler quando você estiver executando uma varredura. Para isso, basta utilizar os comandos acima para realizar o scan, mas anexando -Format msf+ ao final dele. O formato pode nos ajudar a emparelhar rapidamente os dados recuperados com uma exploração armada.

nikto -h <PERFORMNUD,DAD> -Formatar msf+

Portanto, neste guia, passamos da determinação da área de superfície do alvo para encontrar uma vulnerabilidade e, em seguida, emparelhá-la com uma exploração armada para que não ‘t tem que fazer todo o trabalho. Como o Nikto não é uma ferramenta furtiva, é aconselhável realizar esses tipos de varreduras com uma VPN, através do Tor ou outro tipo de serviço para que seu endereço IP real não seja sinalizado por comportamento suspeito.

Mostrar mais

Artigos relacionados

Deixe um comentário

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

Botão Voltar ao topo