Transcript
Page 1: 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]

Page 2: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

$ 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

Page 3: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Agenda

• Introdução

• Utilizando os Scripts

• Teste de Invasão com o NSE

• Desenvolvimento de Scripts

• Conclusão

Page 4: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Agenda

• Introdução

• Utilizando os Scripts

• Teste de Invasão com o NSE

• Desenvolvimento de Scripts

• Conclusão

Page 5: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 6: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

• 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

Page 7: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Introdução

Nmap Scripting Engine

Page 8: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Agenda

• Introdução

• Utilizando os Scripts

• Teste de Invasão com o NSE

• Desenvolvimento de Scripts

• Conclusão

Page 9: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Utilizando os Scripts

Documentação do NSE

Page 10: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 11: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 12: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Agenda

• Introdução

• Utilizando os Scripts

• Teste de Invasão com o NSE

• Desenvolvimento de Scripts

• Conclusão

Page 13: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 14: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Teste de Invasão com NSE

Varredura Padrão do Nmap

Page 15: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 16: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Teste de Invasão com NSE

• Arquivo "descoberta_01.nmap

Informações Interessantes

Page 17: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 18: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Teste de Invasão com NSE

• Arquivo "identificacao_01.nmap

Informações Interessantes

Page 19: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 20: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Teste de Invasão com NSE

• Arquivo "exploracao_01.nmap

Informações Interessantes

Page 21: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Agenda

• Introdução

• Utilizando os Scripts

• Teste de Invasão com o NSE

• Desenvolvimento de Scripts

• Conclusão

Page 22: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 23: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 24: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Desenvolvimento de Scripts

Exemplo de Script

Page 25: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Desenvolvimento de Scripts

Exemplo de Script

Page 26: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Agenda

• Introdução

• Utilizando os Scripts

• Teste de Invasão com o NSE

• Desenvolvimento de Scripts

• Conclusão

Page 27: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

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

Page 28: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Dúvidas?

Perguntas?

Críticas?

Sugestões?

Page 29: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Siga a Clavis

http://clav.is/slideshare

http://clav.is/twitter

http://clav.is/facebook

Page 30: Palestra "Teste de Invasão com o Nmap Scripting Engine"" FISL 13

Muito Obrigado!

[email protected]

Henrique SoaresClavis Segurança da Informação

@hrssoares


Top Related