Tutorial NSE

Tutorial NSE
NSE (NMAP Script Engine) permite funções adicionais no processo de varredura NMAP, permitindo scripts para tarefas adicionais, como força bruta, detecção de vulnerabilidade ou exploração.

O mecanismo de script nmap (NSE) contém um conjunto de scripts classificados por categoria, e os usuários podem escrever seus próprios scripts com recursos personalizados.

Este tutorial explica o básico da NSE, incluindo exemplos práticos mostrando como usar o mecanismo de script nmap para invadir sites do WordPress e credenciais SSH ou executar várias verificações adicionais de segurança.

NSE (NMAP Script Motor) Categorias e tipos de scripts

Os scripts incluídos no NSE são classificados de acordo com diferentes critérios com base no momento da execução, o objetivo do script e os métodos.

A primeira classificação baseada principalmente no momento da execução inclui 4 tipos de script:

  • Scripts pré -rure são executados antes de qualquer fase de varredura NMAP, por exemplo, scripts usados ​​para gerar novos alvos.
  • Scripts host são executados durante o processo de varredura.
  • Scripts de serviço são executados depois que cada lote de hosts é digitalizado, como scripts host.
  • Scripts pós -turle são executados após o processo de varredura; Esses scripts podem explorar uma vulnerabilidade descoberta durante o processo de varredura.

A segunda classificação é baseada nos propósitos e segurança do script. Categorias encomende scripts de acordo com esse critério. As categorias são:

Auth: Os scripts nesta categoria são úteis para lidar com a autenticação. Nesta categoria, você pode encontrar scripts para ignorar os processos de autenticação, como http-method-tamper para ignorar os recursos protegidos por senha, executando o verbo http adulterando. Se uma variedade de caminhos para verificar não estiver definida, ele rastejará o servidor da web e executará o cheque contra qualquer recurso protegido por senha encontrado.

A autenticação da categoria não inclui scripts de força bruta armazenados na categoria bruta. No entanto, em Auth, você pode encontrar funções semelhantes que o script HTTP-DeFault-Accounts para testar o acesso com credenciais padrão em vários aplicativos e dispositivos da Web.

Transmissão: Esses scripts permitem descobrir hosts transmitindo a rede local.

Brute: Esta categoria contém scripts para executar ataques de força bruta, como o script http-wordpress-bruta para atacar sites do WordPress ou rsync-brute para realizar ataques contra o protocolo RSYNC.

Padrão: Esta categoria inclui scripts que atendem aos requisitos com base na velocidade, utilidade, verbosidade, confiabilidade, intrusividade e privacidade. Os scripts nesta categoria devem terminar rapidamente e precisam relatar informações valiosas sobre o alvo. A saída deve ser legível e limitada a informações precisas. Scripts intrusivos que provavelmente travarão o sistema ou serviço de destino são menos adequados para esta categoria.

Descoberta: Scripts nesta categoria tentam descobrir mais sobre o alvo, consultando fontes públicas, dispositivos habilitados para SNM, diretórios e similares. O script http-afiliado-id pega IDs de rede afiliados, como Google Adsense ou Analytics, Amazon, etc., de uma página da web e pode ser usado para identificar páginas com o mesmo proprietário.

DOS: Esses scripts são úteis para testar as metas de vulnerabilidades antes dos ataques do DOS; Esses scripts são propensos a travar um sistema ou serviço vulnerável.

Explorar: Os scripts nesta categoria são usados ​​para explorar vulnerabilidades em alvos.

Externo: Esta categoria contém os scripts envolvendo recursos externos durante o processo de varredura, como solicitações de informações do banco de dados no alvo. Scripts compartilhando informações sobre o processo de digitalização com bancos de dados de terceiros são colocados nesta categoria. O IP-Geolocation-Geoplugin, por exemplo, tenta determinar o local do alvo físico usando http: // www.Geoplugina.coma.

Fuzzher: Esta categoria contém scripts para enviar campos randomizados massivamente para descobrir vulnerabilidades para explorar um estouro de buffer, DOS (negação de serviço), script entre sites ou injeção de SQL.

Intrusivo: Os scripts nesta categoria provavelmente travarão o alvo usando uma quantidade significativa de recursos ou para serem detectados como atividade maliciosa.

Malware: Os scripts de malware são projetados para detectar a possível presença de malware ou backdoors no alvo.

Seguro: Ao contrário dos scripts intrusivos, é improvável que scripts seguros traçam o alvo, o que não precisa de uma quantidade significativa de recursos e é improvável que seja detectado como malicioso pelo alvo pode ser colocado aqui. Scripts nesta categoria lidam principalmente com tarefas de descoberta.

Versão: Scripts de versão estendem o recurso NMAP da versão; Um exemplo é o script docker-version usado para detectar uma versão do Docker de serviço.

Vuln: Os scripts vuln são úteis para testar vulnerabilidades em alvos com precisão.

Os scripts NSE estão localizados em /usr/share/nmap/scripts, e qualquer novo script que você deseja adicionar (e.g., Vulscan) deve ser colocado lá.

Como usar o mecanismo de script nmap (NSE)

O NSE está incluído no NMAP, para começar a instalar o NMAP, caso você ainda não o tenha, executando (nas distribuições Linux baseadas em Debian e Debian):

sudo apt install nmap

Observação: Nas distribuições Linux baseadas em redhat, você pode executar:

yum install nmap

Após a instalação, ou se você já possui o NMAP instalado, execute o seguinte comando para atualizar o banco de dados do mecanismo de script nmap:

NMAP-Script-UpDatedB

O NMAP permite que diferentes sintaxes executem digitalizações; O exemplo a seguir mostra uma varredura NMAP com detecção de versão, chamando o script http-wordpress-brute e passando como um argumento de localização dos dicionários. Esta é uma sintaxe possível quando você sabe qual script você deseja executar.

No primeiro exemplo, mostrarei como o NMAP NSE pode hackear um site WordPress com força bruta usando o script http-wordpress-brute.NSE. Neste exemplo, o site hackeado é o Noticias Mercedes, que eu possuo.

NMAP -SV--Script Http-Wordpress-brute-Script-ARGS 'UserDB = Usuários.txt, passdb = passa.txt 'Noticiasmersmercedes.com

Onde:

NMAP -SV: chama o NMAP e permite a detecção de versão.

-script http-wordpress-brute: Chama o script de broca HTTP-WordPress para sites de WordPress de Força Bruta.

-script-args 'userdb = usuários.txt, passdb = passa.TXT': Especifica os dicionários de usuário e senha, neste caso, criei os usuários dos arquivos.txt e passe.TXT contendo dados fictícios e as credenciais corretas, os arquivos foram localizados no mesmo diretório em que o NMAP foi executado, você também pode especificar o caminho: -script-args 'userdb =/path/to/dicionaty/usuários.txt, passdb =/path/to/dicionaty/pass.TXT'

Como você pode ver na saída, a senha foi invadida com sucesso:

Para o exemplo a seguir, vamos supor que você não tenha certeza sobre o script que deseja executar contra seu alvo, mas você deseja limitar sua varredura às verificações de segurança. Nesse caso, você pode instruir o NMAP a executar todos os scripts pertencentes às categorias seguras ou padrão, ou ambas.

O exemplo a seguir mostra como executar todos os scripts pertencentes às categorias padrão e seguras com uma sintaxe amigável:

NMAP -Script "Padrão e Seguro" Noticiasmercedes.com

O último exemplo mostra como quebrar as credenciais SSH usando o NSE:

NMAP--SSCRIP SSH-BRUTO.NSE localhost

Assim como no brutal HTTP-WordPress, com este script, você também pode especificar dicionários ignorando o argumento:

--script-args userdb = usuários.txt, passdb = passa.TXT

Onde usuários.txt e passe.txt deve ser substituído por seus dicionários (e caminho, se necessário),

Os artigos a seguir incluem exemplos adicionais de NSE:

  • 30 Exemplos de NMAP
  • Como procurar serviços e vulnerabilidades com NMAP
  • Traceroute com NMAP
  • Usando scripts NMAP: NMAP Banner Grab
  • NMAP sinalizadores e o que eles fazem,

Espero que você tenha achado este artigo sobre NSE útil; Continue seguindo Linuxhint para mais dicas e tutoriais do Linux.