SlideShare uma empresa Scribd logo
1 de 31
Automatizando o Nmap com NSE


Tiago Natel de Moura
About Me



• Tiago Natel de Moura aka i4k
• Co-Fundador do BugSec Security Team
     • http://bugsec.googlecode.com/
• Co-Fundador do OWASP Florianópolis.
• Consultor de Segurança na SEC+
     • www.secplus.com.br
Porque automatizar?




• O processo do teste de penetração é
  repetitivo.
• Deixe a parte chata para a máquina e use seu
  tempo para estudar coisas novas ou fazer
  testes mais avançados.
• Diminui o tempo de pentest ...
Porque automatizar?



• Rede
  • Levantamento de Informações
     o Footprinting
     o Enumeration (dns-discover, network map)
     o Fingerprinting
  • Análise de Vulnerabilidades
     • Análise de Vulnerabilidades em serviços.
Porque automatizar?


• Aplicações Web
   • Levantamento de Informações
        o Footprinting
        o Enumeration (spidering, brute directories and files)
        o Fingerprinting (Versão de tecnologias)
    • Análise de Vulnerabilidades
       • Testes de Autenticação
       • Validação de entradas
       • Gerencia de Sessões
       • Testes da Regra de Negócio
       • Testes de WebService
       • outros
Nmap




 Nmap (Network Mapper) é uma ferramenta
opensource para descobrimento e auditoria de
                   redes.
Nmap




•   Network Mapper
•   Port Scanner
•   OS Fingerprinter
•   Service Fingerprinter
•   Traceroute
•   Ping
•   Security
NSE – Nmap Scripting Engine




• NSE é uma das funcionalidades mais
  poderosas do Nmap.
• Permite que usuários escrevam scripts em Lua
  para automatizar tarefas ou estender as
  funcionalidades do Nmap.
• Scripts executados em paralelo usando toda a
  eficiência e velocidade da API do Nmap.
NSE




• NSE iniciou com o Nmap 5 e durante esse
  release foram criados 59 scripts homologados.
• O Nmap 6 foi lançado dia 21/05/2012 com 6x
  mais scripts, agora possui 348 homologados.
• Alguns scripts não criam nenhum tráfego,
  simplesmente consomem dados de outros
  scripts (address-info, creds-summary, etc).
Nmap 6



• Adicionado a biblioteca “vulns”, que pode ser
  usada por scripts para reportar e armazenar
  vulnerabilidades num formato comum.
• Adicionado uma biblioteca “httpspider” para
  crawling de páginas web.
• Adicionado 54 scripts para web scanner (http-
  title, http-backup-finder, http-enum, http-
  grep, etc).
• Completo suporte ao IPv6 (Raw IPv6, OS IPv6
  Detection, etc).
Objetivos do NSE




•   Sofisticadas técnicas de detecção.
•   Detecção de vulnerabilidades.
•   Detecção de backdoors.
•   Exploração de vulnerabilidades.
Linguagem Lua




• Criada no Brasil (PUC-RJ)
• Opensource (MIT License)
• Programada em ISO C
• Extensivel através de uma pequena API C.
• Leve e Rápida. Versão 5.2.0 têm 241Kb com
  docs e 20k LoC.
• Multiparadigma (OOP, procedural, funcional,
  etc).
Categorias de Scripts


• Auth: x11-access, ftp-anon,oracle-enum-users
• Broadcast: Scripts para descobrimentos de outros
  hosts não passados na linha de comando.
• Brute: http-brute, oracle-brute, snmp-brute
• Default
• Discovery: smb-enum-shares
• Dos: Denial Of Service
• Exploit: Explora vulnerabilidades
Categorias de Scripts


• External: Scripts que enviam dados para um banco de
  dados de terceiros ou algum recurso remoto.
• Fuzzer: dns-fuzz
• Intrusive: Scripts que não podem estar na categoria
  “safe” pois possuem riscos de danos aos hosts ou a rede.
  (snmp-brute)
• Malware: Verifica se o alvo está infectado (smtp-
  strangeport).
• Safe: html-title, ssh-hostkey, etc
• Version: skypev2-version, pptp-version, iax2-version.
• Vuln: realvnc-auth-bypass, afp-path-vuln, etc.
Tipos de Scripts e Fases


• Prerule Scripts: Estes scripts rodam antes da fase de scan do Nmap,
  então ele não tem nenhuma informação coletada sobre a rede. Ex.:
  Query DHCP ou DNS.
• Host Scripts: Scripts nesta fase rodam durante o processo normal
  de scaneamento. Depois do host discovery, port scanning, version
  detection e OS detection. Este tipo de script é invocado sempre que
  o host casa com algum valor em “hostrule”.
• Service Scripts: Estes scripts rodam contra serviços. Estes são os
  scripts mais comuns e são distinguidos por possuirem a função
  “portrule” para decidir contra qual serviço detectado o script deve
  rodar.
• Postrule Scripts: Estes scripts rodam depois que o Nmap scaneou
  todos os alvos.Eles são úteis para report e apresentação das
  informações.
Linha de comando


• -sC
   •    Utiliza o conjunto de scripts default
• --script <filename>|<category>|<directory>|<expression>[…]
   •    Roda o scanner usando a lista de arquivos separados por virgula, categorias de
        scripts e diretórios.
• --datadir
   •    Diretório de dados (scripts, wordlists, executavel, etc)
• --script-args <args>
   •    Argumentos para os scripts.
• --script-args-file
   •    Passa um arquivo para o script.
• --script-help <filename>|<category>|<directory>|all[…]
   •    Help about script.
Linha de comando




• --script-trace
   • Debug script
• --script-updatedb
   • Atualiza o banco de scripts.
http-title
Formato NSE




Um script NSE consiste em:
  • Campos de descrição:
     • Description
     • Categories
     • Author
     • License
     • Dependencies
Formato NSE


• Rules:
   • Rules são usados pra decidir quando que o script pode
     executar contra o alvo.
   • Deve conter um dos seguintes tipos:
       • prerule() : Roda 1x antes, antes de qualquer host
         ser escaneado.
       • hostrule(host) : Recebe uma tabela de hosts e deve
         verificar nessa tabela se pode executar.
       • portrule(host, port) : Utiliza uma tabela de hosts e
         portas pra decidir se deve rodar.
       • postrule() : Roda 1x depois de todos os hosts
         escaneados.
Formato NSE




• Action: Todas as instruções que devem ser
  executadas quando alguma das rules for
  satisfeita.
NSE Library




NSE Library é composta de módulos Lua e C/C+
 +. Recomenda-se escrever todos os módulos
 em Lua, mas sempre há casos que se precise
 do C para otimização ou porque precisa-se
 linkar com alguma biblioteca externa.
Scripts: http-headers
Scripts: http-headers
http-headers
http-headers
Use Nmap




O Nmap já tem toda a parte difícil pronta (TCP/
  UDP scan, Raw scan, bypass IDS/IPS, OS
  version detection, Advanced Service Version
  Detection, etc). Utilize todo esse poder com
  Lua e estenda o poder do seu pentest.
Jboss Exploit



• Exploit que desenvolvi para explorar o
  CVE-2010-0738 do JBoss.
• Simplesmente reescrita em Lua/NSE do
  exploit daytona_bsh.pl do Kingcope.
• Retorna uma shell reversa na máquina alvo.
• Mais informações:
  https://github.com/tiago4orion/nmap-scripts
Jboss-vuln-CVE2010-0738
Fim




     Obrigado!

Perguntas & Respostas
  natel@owasp.org

Mais conteúdo relacionado

Mais procurados

Palestra: Pentest - Intrusão de Redes
Palestra: Pentest - Intrusão de RedesPalestra: Pentest - Intrusão de Redes
Palestra: Pentest - Intrusão de RedesBruno Alexandre
 
Zabbix + SNMP: Compartilhando experiências sobre SNMP
Zabbix + SNMP: Compartilhando experiências sobre SNMPZabbix + SNMP: Compartilhando experiências sobre SNMP
Zabbix + SNMP: Compartilhando experiências sobre SNMPAndré Déo
 
SNMP - Rafael Rodriques
SNMP - Rafael RodriquesSNMP - Rafael Rodriques
SNMP - Rafael Rodriquesmarleigrolli
 
Técnicas avancadas de seguranca com iptables - Marcus Augustus Pereira Burgh...
Técnicas avancadas de seguranca com iptables  - Marcus Augustus Pereira Burgh...Técnicas avancadas de seguranca com iptables  - Marcus Augustus Pereira Burgh...
Técnicas avancadas de seguranca com iptables - Marcus Augustus Pereira Burgh...Tchelinux
 
Curso hacking com BT5
Curso hacking com BT5Curso hacking com BT5
Curso hacking com BT5Cassio Ramos
 
Gerenciamento de Vulnerabilidades em Redes Corporativas - CNASI - DF
Gerenciamento de Vulnerabilidades em Redes Corporativas - CNASI - DFGerenciamento de Vulnerabilidades em Redes Corporativas - CNASI - DF
Gerenciamento de Vulnerabilidades em Redes Corporativas - CNASI - DFClavis Segurança da Informação
 
9 - segurança - ataques buffer-injection
9 - segurança -  ataques buffer-injection9 - segurança -  ataques buffer-injection
9 - segurança - ataques buffer-injectionAndre Peres
 
Uso de ferramentas OpenSource para Análise Forense (pós mortem)
Uso de ferramentas OpenSource para Análise Forense (pós mortem)Uso de ferramentas OpenSource para Análise Forense (pós mortem)
Uso de ferramentas OpenSource para Análise Forense (pós mortem)debian-rs
 
5 - segurança - firewall
5  - segurança - firewall5  - segurança - firewall
5 - segurança - firewallAndre Peres
 
Zabbix FLISOL Campinas 28-04-2012
Zabbix FLISOL Campinas 28-04-2012Zabbix FLISOL Campinas 28-04-2012
Zabbix FLISOL Campinas 28-04-2012André Déo
 
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with ZabbixZabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with ZabbixZabbix
 

Mais procurados (15)

Palestra: Pentest - Intrusão de Redes
Palestra: Pentest - Intrusão de RedesPalestra: Pentest - Intrusão de Redes
Palestra: Pentest - Intrusão de Redes
 
Pentest
Pentest Pentest
Pentest
 
Zabbix + SNMP: Compartilhando experiências sobre SNMP
Zabbix + SNMP: Compartilhando experiências sobre SNMPZabbix + SNMP: Compartilhando experiências sobre SNMP
Zabbix + SNMP: Compartilhando experiências sobre SNMP
 
Unidade 2.2.1 nmap
Unidade 2.2.1 nmapUnidade 2.2.1 nmap
Unidade 2.2.1 nmap
 
SNMP - Rafael Rodriques
SNMP - Rafael RodriquesSNMP - Rafael Rodriques
SNMP - Rafael Rodriques
 
Técnicas avancadas de seguranca com iptables - Marcus Augustus Pereira Burgh...
Técnicas avancadas de seguranca com iptables  - Marcus Augustus Pereira Burgh...Técnicas avancadas de seguranca com iptables  - Marcus Augustus Pereira Burgh...
Técnicas avancadas de seguranca com iptables - Marcus Augustus Pereira Burgh...
 
Curso hacking com BT5
Curso hacking com BT5Curso hacking com BT5
Curso hacking com BT5
 
Gerenciamento de Vulnerabilidades em Redes Corporativas - CNASI - DF
Gerenciamento de Vulnerabilidades em Redes Corporativas - CNASI - DFGerenciamento de Vulnerabilidades em Redes Corporativas - CNASI - DF
Gerenciamento de Vulnerabilidades em Redes Corporativas - CNASI - DF
 
Autenticação
AutenticaçãoAutenticação
Autenticação
 
9 - segurança - ataques buffer-injection
9 - segurança -  ataques buffer-injection9 - segurança -  ataques buffer-injection
9 - segurança - ataques buffer-injection
 
Backtrack 4 rc1 fatec mogi-mirim
Backtrack 4 rc1 fatec mogi-mirimBacktrack 4 rc1 fatec mogi-mirim
Backtrack 4 rc1 fatec mogi-mirim
 
Uso de ferramentas OpenSource para Análise Forense (pós mortem)
Uso de ferramentas OpenSource para Análise Forense (pós mortem)Uso de ferramentas OpenSource para Análise Forense (pós mortem)
Uso de ferramentas OpenSource para Análise Forense (pós mortem)
 
5 - segurança - firewall
5  - segurança - firewall5  - segurança - firewall
5 - segurança - firewall
 
Zabbix FLISOL Campinas 28-04-2012
Zabbix FLISOL Campinas 28-04-2012Zabbix FLISOL Campinas 28-04-2012
Zabbix FLISOL Campinas 28-04-2012
 
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with ZabbixZabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
Zabbix Conference LatAm 2016 - Jessian Ferreira - Wireless with Zabbix
 

Destaque

Enhancing Pilot Ability to Perform Continuous Descent Approach with Descript...
Enhancing Pilot Ability to Perform Continuous Descent Approach with  Descript...Enhancing Pilot Ability to Perform Continuous Descent Approach with  Descript...
Enhancing Pilot Ability to Perform Continuous Descent Approach with Descript...Michael LaMarr
 
Portando sua aplicação web para iphone
Portando sua aplicação web para iphonePortando sua aplicação web para iphone
Portando sua aplicação web para iphoneRenato Nitta
 
We told you so ver 2.0
We told you so ver 2.0We told you so ver 2.0
We told you so ver 2.0Sudhindra Rao
 
Apresentação Sistavac Building Efficiency BMS
Apresentação Sistavac Building Efficiency  BMSApresentação Sistavac Building Efficiency  BMS
Apresentação Sistavac Building Efficiency BMSAntonio Fernandes
 
Island Aid Aceh, Nias and Mentawai aid work
Island Aid Aceh, Nias and Mentawai aid workIsland Aid Aceh, Nias and Mentawai aid work
Island Aid Aceh, Nias and Mentawai aid workSelf-Employed
 
Nueva aplicacion gesia adaptada a las nias
Nueva aplicacion gesia adaptada a las niasNueva aplicacion gesia adaptada a las nias
Nueva aplicacion gesia adaptada a las niasEsteban Uyarra Encalado
 
Analisando pacotes for fun and packet - Conceito de Network Security Monitori...
Analisando pacotes for fun and packet - Conceito de Network Security Monitori...Analisando pacotes for fun and packet - Conceito de Network Security Monitori...
Analisando pacotes for fun and packet - Conceito de Network Security Monitori...Rodrigo Montoro
 
[Estácio] Trabalho de Comunicação Institucional
[Estácio] Trabalho de Comunicação Institucional[Estácio] Trabalho de Comunicação Institucional
[Estácio] Trabalho de Comunicação InstitucionalBruno Gomes Dias
 
Presentacion loaiza
Presentacion loaizaPresentacion loaiza
Presentacion loaizaLuzma Loaiza
 
Nias2011, enhanced publications, scharnhorst, 19 march2011
Nias2011, enhanced publications, scharnhorst, 19 march2011Nias2011, enhanced publications, scharnhorst, 19 march2011
Nias2011, enhanced publications, scharnhorst, 19 march2011Nick Jankowski
 
54311457 mbf-ias-english-summaries-standards
54311457 mbf-ias-english-summaries-standards54311457 mbf-ias-english-summaries-standards
54311457 mbf-ias-english-summaries-standardsOmnia Hassan
 
Samsung - Câmera Digital - PL120 - 14.2 Megapixels - Duplo LCD - LCD Frontal ...
Samsung - Câmera Digital - PL120 - 14.2 Megapixels - Duplo LCD - LCD Frontal ...Samsung - Câmera Digital - PL120 - 14.2 Megapixels - Duplo LCD - LCD Frontal ...
Samsung - Câmera Digital - PL120 - 14.2 Megapixels - Duplo LCD - LCD Frontal ...moriainformatica
 

Destaque (20)

Enhancing Pilot Ability to Perform Continuous Descent Approach with Descript...
Enhancing Pilot Ability to Perform Continuous Descent Approach with  Descript...Enhancing Pilot Ability to Perform Continuous Descent Approach with  Descript...
Enhancing Pilot Ability to Perform Continuous Descent Approach with Descript...
 
Campos da serra catarinense
Campos da serra catarinenseCampos da serra catarinense
Campos da serra catarinense
 
GOVERNANCA ESSENCIAL 1
GOVERNANCA ESSENCIAL 1GOVERNANCA ESSENCIAL 1
GOVERNANCA ESSENCIAL 1
 
Portando sua aplicação web para iphone
Portando sua aplicação web para iphonePortando sua aplicação web para iphone
Portando sua aplicação web para iphone
 
We told you so ver 2.0
We told you so ver 2.0We told you so ver 2.0
We told you so ver 2.0
 
Apresentação Sistavac Building Efficiency BMS
Apresentação Sistavac Building Efficiency  BMSApresentação Sistavac Building Efficiency  BMS
Apresentação Sistavac Building Efficiency BMS
 
Trucksafe Intel
Trucksafe IntelTrucksafe Intel
Trucksafe Intel
 
Island Aid Aceh, Nias and Mentawai aid work
Island Aid Aceh, Nias and Mentawai aid workIsland Aid Aceh, Nias and Mentawai aid work
Island Aid Aceh, Nias and Mentawai aid work
 
Nueva aplicacion gesia adaptada a las nias
Nueva aplicacion gesia adaptada a las niasNueva aplicacion gesia adaptada a las nias
Nueva aplicacion gesia adaptada a las nias
 
Analisando pacotes for fun and packet - Conceito de Network Security Monitori...
Analisando pacotes for fun and packet - Conceito de Network Security Monitori...Analisando pacotes for fun and packet - Conceito de Network Security Monitori...
Analisando pacotes for fun and packet - Conceito de Network Security Monitori...
 
Vs 8124
Vs 8124Vs 8124
Vs 8124
 
Rebuilding together
Rebuilding togetherRebuilding together
Rebuilding together
 
[Estácio] Trabalho de Comunicação Institucional
[Estácio] Trabalho de Comunicação Institucional[Estácio] Trabalho de Comunicação Institucional
[Estácio] Trabalho de Comunicação Institucional
 
Presentacion loaiza
Presentacion loaizaPresentacion loaiza
Presentacion loaiza
 
Monitoramento ambiental
Monitoramento ambientalMonitoramento ambiental
Monitoramento ambiental
 
Nias2011, enhanced publications, scharnhorst, 19 march2011
Nias2011, enhanced publications, scharnhorst, 19 march2011Nias2011, enhanced publications, scharnhorst, 19 march2011
Nias2011, enhanced publications, scharnhorst, 19 march2011
 
54311457 mbf-ias-english-summaries-standards
54311457 mbf-ias-english-summaries-standards54311457 mbf-ias-english-summaries-standards
54311457 mbf-ias-english-summaries-standards
 
Samsung - Câmera Digital - PL120 - 14.2 Megapixels - Duplo LCD - LCD Frontal ...
Samsung - Câmera Digital - PL120 - 14.2 Megapixels - Duplo LCD - LCD Frontal ...Samsung - Câmera Digital - PL120 - 14.2 Megapixels - Duplo LCD - LCD Frontal ...
Samsung - Câmera Digital - PL120 - 14.2 Megapixels - Duplo LCD - LCD Frontal ...
 
Ruidos
RuidosRuidos
Ruidos
 
Thesis
ThesisThesis
Thesis
 

Semelhante a Automatizando o Nmap com NSE

Mini Curso - Pen Test - Univem
Mini Curso - Pen Test - UnivemMini Curso - Pen Test - Univem
Mini Curso - Pen Test - Univemevandrovv
 
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...Bruno Castelucci
 
Manobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
Manobras Evasivas: Técnicas de Evasão para Varreduras com o NmapManobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
Manobras Evasivas: Técnicas de Evasão para Varreduras com o NmapClavis Segurança da Informação
 
Back track apresentação
Back track   apresentaçãoBack track   apresentação
Back track apresentaçãoKleber Santos
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nívelIgor Sobreira
 
Ferramentas GPL para segurança de redes - Vanderlei Pollon
Ferramentas GPL para segurança de redes - Vanderlei PollonFerramentas GPL para segurança de redes - Vanderlei Pollon
Ferramentas GPL para segurança de redes - Vanderlei PollonTchelinux
 
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters) iG - Internet Group do Brasil S/A
 
Datacenter na nuvem
Datacenter na nuvemDatacenter na nuvem
Datacenter na nuvemIgnacio Nin
 
O bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsO bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsNuno Paz
 
Slide Palestra "Metasploit Framework"
Slide Palestra "Metasploit Framework"Slide Palestra "Metasploit Framework"
Slide Palestra "Metasploit Framework"Roberto Soares
 
Ferramentas livres para teste de invasao
Ferramentas livres para teste de invasao Ferramentas livres para teste de invasao
Ferramentas livres para teste de invasao gleydsonslim
 
Segurança em servidores Linux
Segurança em servidores LinuxSegurança em servidores Linux
Segurança em servidores LinuxImpacta Eventos
 
Arp e DNS Spoof - Prática de Ataques
Arp e DNS Spoof - Prática de AtaquesArp e DNS Spoof - Prática de Ataques
Arp e DNS Spoof - Prática de AtaquesAndre Peres
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open SourceEdgar Silva
 
Forense Remota utilizando ferramentas Open Source
Forense Remota utilizando ferramentas Open SourceForense Remota utilizando ferramentas Open Source
Forense Remota utilizando ferramentas Open SourceJulio Cesar Roque Benatto
 
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Jeronimo Zucco
 
Seguranca em Servidores Linux
Seguranca em Servidores LinuxSeguranca em Servidores Linux
Seguranca em Servidores LinuxAlessandro Silva
 

Semelhante a Automatizando o Nmap com NSE (20)

Mini Curso - Pen Test - Univem
Mini Curso - Pen Test - UnivemMini Curso - Pen Test - Univem
Mini Curso - Pen Test - Univem
 
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
Aceleração em Hardware para OpenSSL em Sistemas Embarcados: Introdução e conc...
 
Manobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
Manobras Evasivas: Técnicas de Evasão para Varreduras com o NmapManobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
Manobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
 
Metasploit Framework: Software Livre para PoC de Vulnerabilidades
Metasploit Framework: Software Livre para PoC de VulnerabilidadesMetasploit Framework: Software Livre para PoC de Vulnerabilidades
Metasploit Framework: Software Livre para PoC de Vulnerabilidades
 
Back track apresentação
Back track   apresentaçãoBack track   apresentação
Back track apresentação
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nível
 
Kali linux
Kali linux Kali linux
Kali linux
 
Ferramentas GPL para segurança de redes - Vanderlei Pollon
Ferramentas GPL para segurança de redes - Vanderlei PollonFerramentas GPL para segurança de redes - Vanderlei Pollon
Ferramentas GPL para segurança de redes - Vanderlei Pollon
 
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
 
Datacenter na nuvem
Datacenter na nuvemDatacenter na nuvem
Datacenter na nuvem
 
O bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsO bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.js
 
Dev vs. Ops
Dev vs. OpsDev vs. Ops
Dev vs. Ops
 
Slide Palestra "Metasploit Framework"
Slide Palestra "Metasploit Framework"Slide Palestra "Metasploit Framework"
Slide Palestra "Metasploit Framework"
 
Ferramentas livres para teste de invasao
Ferramentas livres para teste de invasao Ferramentas livres para teste de invasao
Ferramentas livres para teste de invasao
 
Segurança em servidores Linux
Segurança em servidores LinuxSegurança em servidores Linux
Segurança em servidores Linux
 
Arp e DNS Spoof - Prática de Ataques
Arp e DNS Spoof - Prática de AtaquesArp e DNS Spoof - Prática de Ataques
Arp e DNS Spoof - Prática de Ataques
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
 
Forense Remota utilizando ferramentas Open Source
Forense Remota utilizando ferramentas Open SourceForense Remota utilizando ferramentas Open Source
Forense Remota utilizando ferramentas Open Source
 
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
 
Seguranca em Servidores Linux
Seguranca em Servidores LinuxSeguranca em Servidores Linux
Seguranca em Servidores Linux
 

Automatizando o Nmap com NSE

  • 1. Automatizando o Nmap com NSE Tiago Natel de Moura
  • 2. About Me • Tiago Natel de Moura aka i4k • Co-Fundador do BugSec Security Team • http://bugsec.googlecode.com/ • Co-Fundador do OWASP Florianópolis. • Consultor de Segurança na SEC+ • www.secplus.com.br
  • 3. Porque automatizar? • O processo do teste de penetração é repetitivo. • Deixe a parte chata para a máquina e use seu tempo para estudar coisas novas ou fazer testes mais avançados. • Diminui o tempo de pentest ...
  • 4. Porque automatizar? • Rede • Levantamento de Informações o Footprinting o Enumeration (dns-discover, network map) o Fingerprinting • Análise de Vulnerabilidades • Análise de Vulnerabilidades em serviços.
  • 5. Porque automatizar? • Aplicações Web • Levantamento de Informações o Footprinting o Enumeration (spidering, brute directories and files) o Fingerprinting (Versão de tecnologias) • Análise de Vulnerabilidades • Testes de Autenticação • Validação de entradas • Gerencia de Sessões • Testes da Regra de Negócio • Testes de WebService • outros
  • 6. Nmap Nmap (Network Mapper) é uma ferramenta opensource para descobrimento e auditoria de redes.
  • 7. Nmap • Network Mapper • Port Scanner • OS Fingerprinter • Service Fingerprinter • Traceroute • Ping • Security
  • 8. NSE – Nmap Scripting Engine • NSE é uma das funcionalidades mais poderosas do Nmap. • Permite que usuários escrevam scripts em Lua para automatizar tarefas ou estender as funcionalidades do Nmap. • Scripts executados em paralelo usando toda a eficiência e velocidade da API do Nmap.
  • 9. NSE • NSE iniciou com o Nmap 5 e durante esse release foram criados 59 scripts homologados. • O Nmap 6 foi lançado dia 21/05/2012 com 6x mais scripts, agora possui 348 homologados. • Alguns scripts não criam nenhum tráfego, simplesmente consomem dados de outros scripts (address-info, creds-summary, etc).
  • 10. Nmap 6 • Adicionado a biblioteca “vulns”, que pode ser usada por scripts para reportar e armazenar vulnerabilidades num formato comum. • Adicionado uma biblioteca “httpspider” para crawling de páginas web. • Adicionado 54 scripts para web scanner (http- title, http-backup-finder, http-enum, http- grep, etc). • Completo suporte ao IPv6 (Raw IPv6, OS IPv6 Detection, etc).
  • 11. Objetivos do NSE • Sofisticadas técnicas de detecção. • Detecção de vulnerabilidades. • Detecção de backdoors. • Exploração de vulnerabilidades.
  • 12. Linguagem Lua • Criada no Brasil (PUC-RJ) • Opensource (MIT License) • Programada em ISO C • Extensivel através de uma pequena API C. • Leve e Rápida. Versão 5.2.0 têm 241Kb com docs e 20k LoC. • Multiparadigma (OOP, procedural, funcional, etc).
  • 13. Categorias de Scripts • Auth: x11-access, ftp-anon,oracle-enum-users • Broadcast: Scripts para descobrimentos de outros hosts não passados na linha de comando. • Brute: http-brute, oracle-brute, snmp-brute • Default • Discovery: smb-enum-shares • Dos: Denial Of Service • Exploit: Explora vulnerabilidades
  • 14. Categorias de Scripts • External: Scripts que enviam dados para um banco de dados de terceiros ou algum recurso remoto. • Fuzzer: dns-fuzz • Intrusive: Scripts que não podem estar na categoria “safe” pois possuem riscos de danos aos hosts ou a rede. (snmp-brute) • Malware: Verifica se o alvo está infectado (smtp- strangeport). • Safe: html-title, ssh-hostkey, etc • Version: skypev2-version, pptp-version, iax2-version. • Vuln: realvnc-auth-bypass, afp-path-vuln, etc.
  • 15. Tipos de Scripts e Fases • Prerule Scripts: Estes scripts rodam antes da fase de scan do Nmap, então ele não tem nenhuma informação coletada sobre a rede. Ex.: Query DHCP ou DNS. • Host Scripts: Scripts nesta fase rodam durante o processo normal de scaneamento. Depois do host discovery, port scanning, version detection e OS detection. Este tipo de script é invocado sempre que o host casa com algum valor em “hostrule”. • Service Scripts: Estes scripts rodam contra serviços. Estes são os scripts mais comuns e são distinguidos por possuirem a função “portrule” para decidir contra qual serviço detectado o script deve rodar. • Postrule Scripts: Estes scripts rodam depois que o Nmap scaneou todos os alvos.Eles são úteis para report e apresentação das informações.
  • 16. Linha de comando • -sC • Utiliza o conjunto de scripts default • --script <filename>|<category>|<directory>|<expression>[…] • Roda o scanner usando a lista de arquivos separados por virgula, categorias de scripts e diretórios. • --datadir • Diretório de dados (scripts, wordlists, executavel, etc) • --script-args <args> • Argumentos para os scripts. • --script-args-file • Passa um arquivo para o script. • --script-help <filename>|<category>|<directory>|all[…] • Help about script.
  • 17. Linha de comando • --script-trace • Debug script • --script-updatedb • Atualiza o banco de scripts.
  • 18.
  • 20. Formato NSE Um script NSE consiste em: • Campos de descrição: • Description • Categories • Author • License • Dependencies
  • 21. Formato NSE • Rules: • Rules são usados pra decidir quando que o script pode executar contra o alvo. • Deve conter um dos seguintes tipos: • prerule() : Roda 1x antes, antes de qualquer host ser escaneado. • hostrule(host) : Recebe uma tabela de hosts e deve verificar nessa tabela se pode executar. • portrule(host, port) : Utiliza uma tabela de hosts e portas pra decidir se deve rodar. • postrule() : Roda 1x depois de todos os hosts escaneados.
  • 22. Formato NSE • Action: Todas as instruções que devem ser executadas quando alguma das rules for satisfeita.
  • 23. NSE Library NSE Library é composta de módulos Lua e C/C+ +. Recomenda-se escrever todos os módulos em Lua, mas sempre há casos que se precise do C para otimização ou porque precisa-se linkar com alguma biblioteca externa.
  • 28. Use Nmap O Nmap já tem toda a parte difícil pronta (TCP/ UDP scan, Raw scan, bypass IDS/IPS, OS version detection, Advanced Service Version Detection, etc). Utilize todo esse poder com Lua e estenda o poder do seu pentest.
  • 29. Jboss Exploit • Exploit que desenvolvi para explorar o CVE-2010-0738 do JBoss. • Simplesmente reescrita em Lua/NSE do exploit daytona_bsh.pl do Kingcope. • Retorna uma shell reversa na máquina alvo. • Mais informações: https://github.com/tiago4orion/nmap-scripts
  • 31. Fim Obrigado! Perguntas & Respostas natel@owasp.org