Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13
-
Upload
clavis-seguranca-da-informacao -
Category
Documents
-
view
25.282 -
download
1
description
Transcript of Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13
Teste de Invasão com o Nmap Scripting Engine
Henrique SoaresClavis Segurança da Informaçã[email protected]
$ whoami
• Grupo Clavis
• Analista de Segurança da Informação
• Mestrando em Informática
• Testes de invasão em redes, sistemas e aplicações
• Detecção e resposta a incidentes de segurança
Agenda
• Introdução
• Utilizando os Scripts
• Teste de Invasão com o NSE
• Desenvolvimento de Scripts
• Conclusão
Agenda
• Introdução
• Utilizando os Scripts
• Teste de Invasão com o NSE
• Desenvolvimento de Scripts
• Conclusão
Introdução
Nmap Security Scanner
• Varredura de portas, detecção de serviços, versões e SOs, mapeamento de redes, etc...
• Ferramenta livre e código aberto
• Criado por Gordon “Fyodor” Lyon
• Projeto ativo e mantido pela comunidade
• NSE → funcionalidade poderosa e flexível
• Automatização de diversas tarefas
• Integrado à varredura tradicional do Nmap
• Scripts desenvolvidos em Lua
• Black Hat 2010: http://nmap.org/presentations/BHDC10/
Introdução
Nmap Scripting Engine
Introdução
Nmap Scripting Engine
Agenda
• Introdução
• Utilizando os Scripts
• Teste de Invasão com o NSE
• Desenvolvimento de Scripts
• Conclusão
Utilizando os Scripts
Documentação do NSE
Utilizando os Scripts
• Uso padrão do NSE -A ou -sC ou --script=default
• Sintaxe de uso --script script|categoria|diretório|expressão|all
• Uso de expressões --script "default or safe"' ou '--script "default,safe" --script "not intrusive" --script "http-* and not (brute or dos or exploit)"
Sintaxe de uso do NSE
Utilizando os Scripts
• Passando parâmetros para os scripts --script-args "[scr.]arg1=val1[,[scr.]argN=valN]" --script-args-file <arq>
• Limitando escopo dos parâmetros --script-args 'user="foo",pass="bar"' --script-args 'smtp.domain="alvomail.com",
domain="alvo.com"' --script-args 'userdb=user1.txt,passdb=pass1.txt,
smtp-brute={userdb=user2.txt,passdb=pass2.txt}'
Passando Parâmetros
Agenda
• Introdução
• Utilizando os Scripts
• Teste de Invasão com o NSE
• Desenvolvimento de Scripts
• Conclusão
Teste de Invasão com NSE
• Máquina alvo: Metasploitable• Fases do Teste de Invasão:
Obtenção de Informação Identificação de Vulnerabilidades Análise e Exploração
• Objetivo Mostrar funcionalidades do NSE úteis em TDIs Realizar um TDI completo só com Nmap e NSE
Antes de Começarmos
Teste de Invasão com NSE
Varredura Padrão do Nmap
Teste de Invasão com NSE
• Tradicionalmente, o Nmap é usado nesta etapa• Etapa com maior quantidade de scripts• Objetivos desta etapa
Obter informações relevantes sobre os alvos Descobrir vetores de ataque a explorar depois
• Categorias de scripts úteis para esta etapa: broadcast, default, discovery, external, safe,
version
Obtenção de Informação
Teste de Invasão com NSE
• Arquivo "descoberta_01.nmap
Informações Interessantes
Teste de Invasão com NSE
• O Nmap já executa alguns ataques nesta etapa• Etapa com menos scripts disponíveis• Objetivos desta etapa
Averiguar vetores de ataque a explorar depois Identificar vulnerabilidades conhecidas nos alvos
• Categorias de scripts úteis para esta etapa: malware, vuln
Identificação de Vulnerabilidades
Teste de Invasão com NSE
• Arquivo "identificacao_01.nmap
Informações Interessantes
Teste de Invasão com NSE
• Etapa dos ataques• Alguns scripts são os mesmos da etapa anterior • Objetivos desta etapa:
Executar vetores de ataque encontrados nas etapas anteriores
Explorar vulnerabilidades conhecidas encontradas
• Categorias de scripts úteis para esta etapa: auth, brute, dos, exploit, fuzzer, intrusive (malware,
vuln)
Análise e Exploração
Teste de Invasão com NSE
• Arquivo "exploracao_01.nmap
Informações Interessantes
Agenda
• Introdução
• Utilizando os Scripts
• Teste de Invasão com o NSE
• Desenvolvimento de Scripts
• Conclusão
Desenvolvimento de Scripts
• Criada pelo TecGraf/PUC-Rio em 1993• Características da Linguagem
Sintaxe simples e fácil de aprender Pequena e Extensível Portável para diversas plataformas Gerenciamento de memória
• Muito usada pela industria dos jogos• É usada em outras ferramentas de segurança
Exemplos: Wireshark, Snort 3.0
Lua
Desenvolvimento de Scripts
• Bibliotecas de protocolo ou de suporte Facilitam o uso de protocolos mais usados Oferecem suporte a diversas operações
• Módulos de força bruta Manipulação de wordlists
• Suporte a SSL• Sistema de dependências de scripts
Utilização da saída de um script em outro
Adições do Nmap
Desenvolvimento de Scripts
Exemplo de Script
Desenvolvimento de Scripts
Exemplo de Script
Agenda
• Introdução
• Utilizando os Scripts
• Teste de Invasão com o NSE
• Desenvolvimento de Scripts
• Conclusão
Conclusão
• O NSE não é uma solução completa Base de Vulnerabilidades pequena Poucos Exploits
• Lado positivo Melhora da fase Obtenção de Informação
• Mas foi divertido!!!
NSE como ferramenta de TDI
Dúvidas?
Perguntas?
Críticas?
Sugestões?
Siga a Clavis
http://clav.is/slideshare
http://clav.is/twitter
http://clav.is/facebook