palestra "teste de invasão com o nmap scripting engine"" fisl 13
DESCRIPTION
A Clavis esteve presente no FISL nesta sexta e sábado através de duas palestras de membros do time da Equipe Técnica da Clavis Segurança da Informação. No sábado Rafael Soares Ferreira, Diretor Técnico do Grupo Clavis Segurança da Informação, palestrou sobre o tema: "Ferramentas Livres para Auditoria de Segurança em Redes sem Fio".E na sexta-feira Henrique Soares, analista técnico do Grupo Clavis Segurança da Informação, palestrou sobre o tema :"Teste de Invasão com o Nmap Scripting Engine".http://www.blog.clavis.com.brTRANSCRIPT
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