SlideShare una empresa de Scribd logo
1 de 45
Descargar para leer sin conexión
Dani Gutiérrez
jdanitxu@gmail.com
2009ko apirilak 25
¿Por qué esta presentación?
¿Por qué esta presentación?




1ª edic. Dic-2008
Software libre con 12 años
    1-sep-97: sin versión, sólo para GNU/Linux,
●


    creada por Gordon “Fyodor” Lyon
    Feb-04: v3.50 denegada a SCO Caldera por no
●


    adhesión a la GPL. Le obliga a rehacer la ISO.
    Dic-06: v4.21ALPHA1 NSE
●



    Ago-08: v4.68 presentada en la Blackhat
●


    Defcon
    Mar-09: v4.85BETA7 Conficker
●
Software libre con 12 años
    Nuevas contribuciones:
●



        Funcionalidades, algoritmos, huellas
    ●


        Google SoC: 2005, 2006, 2007, 2008
    ●
Software libre con 12 años
    Películas:
●



        The Matrix Reloaded (may-03),...
    ●




        Otras: 13 Game of death, The listening, ...
    ●
Usos
   Descubrimiento
                                 Resolución inversa
  de equipos online
                                    de nombres
                             Resolución de nombres:
                             ●Servidores DNS preestablecidos


                              (resolv.conf)
 Información de estado
                             ●Otros servidores DNS
de puertos tcp/udp, etc.     ●S.O. (hosts,nsswitch.conf)




                                  Trazado de rutas
Reconoc. de versiones
servicios de red y S.O.

                                     ncat, ndiff

Detección de agujeros
  de seg. y malware
                                 En otros software's

                                  Nessus, metasploit,...
Cuestiones éticas y legales
    No hay una respuesta sencilla
●




    En general no problemático, pero a veces sí
●


    (políticas, dañar equipos)
Cuestiones éticas y legales
    Consejos:
●



        Focalizar el objetivo: nº IPs y puertos, timing
    ●


        Respetar las políticas establecidas, si existen
    ●


        Avisar de antemano
    ●


        O... stealthiness
    ●
Versión actual: 4.85BETA7
    Licencia GPL v2
●



    Corre en GNU/linux, *BSD, Windows, Mac OS
●


    X,...
    1760 huellas de S.O.
●



    4805 huellas de servicios tcp/udp
●



    55 scripts NSE y 26 librerías LUA
●



    Ejecutables: ncat, ndiff, nmap, zenmap
●



    Otros ficheros: 140 protocolos, 2124 servicios
●


    tcp/udp, 8406 fabricantes de MACs, Servicios
    RPC
Instalación
debian 5.0 lenny: 4.62-1



ubuntu 9.04 jaunty: 4.76



tar.bz2 (v4.85BETA7: 6.2 Mb)
./configure && make && sudo make install


(abierto a lectura desde dic-06)
Descubrimiento equipos
                online
    Técnicas:
●



        (ping [-b] xxx.yyy.zzz[.255])
    ●


        Ping ICMP echo request, timestamp,
    ●


        netmask
        TCP SYN, mejor contra FW stateful
    ●


        TCP ACK, mejor contra FW stateless
    ●


        Ping UDP (por defecto a udp/31338)
    ●


        Otros protocolos IP: ICMP, IGMP, IP-in-IP
    ●


        ARP scan. Más rápido en LANs
    ●
Descubrimiento equipos
                online
    Por defecto:
●



        Superusuario: ICMP y ACK a tcp/80
    ●


        No superusuario: SYN a tcp/80 a través del
    ●


        stack TCP/IP del S.O. (connect syscall). Más
        lenta.
        Si se está en red local: ARP
    ●


        A veces por defecto no se descubre
    ●


    Interesante nombres resueltos
●



    Entidad versus Proveedor servicio
●
Escaneo de puertos
Según RFCs e implement. stacks protocolos.
Ej tcp:

                                closed
         open

                                  SYN
          SYN
                                  RST
        SYN/ACK
          RST

                                 filtered
          SYN
        SYN/ACK
          ACK                     SYN
         Datos                    SYN
          RST                     SYN
Escaneo de puertos
nmap define 6 estados

             open             closed       filtered (*)


         closed|filtered   open|filtered   unfiltered




                             UDP,
                               IP,
                              FIN,
              ACK                             Idle
                             NULL,
                             Xmas

                                                          (*)No depende sólo
                                                          del puerto, también
                                                          del tipo de prueba
Escaneo de puertos
                                                                             Detección
                                  Motor                     Motores
     Sin nmap                                                                versión del
                               ultra_scan                   propios
                                                                              servicio

                      Varios TCP,UDP (ver tabla)        TCP idle
  netstat en         ●                                 ●
 ●

                     ●TCP con flags ad-hoc             ●FTP bounce
 cada equipo
                     ●TCP idle
 ●nc -z

                     ●IP protocol




                                                                TCP
                                              TCP
                                                               NULL,   TCP    TCP      TCP
                                             SYN,     UDP
                                                                FIN,   ACK   Window   Maimon
                                            Connect
                                                               Xmas
TCP SYN/ACK                                   O
UDP                                                    O
ICMP error (tipo 3, cód. 3)                   F        C        F      F       F        F
ICMP error (tipo 3, cód. 1, 2, 9, 10, 13)     F        F        F      F       F        F
(nada)                                        F       O|F      O|F     F       F       O|F
TCP RST non-zero window field                 C                 C      U       O        C
TCP RST zero window field                     C                 C      U       C        C
Escaneo de puertos
    TCP Connect: no requiere privilegios, pero
●


    menos eficiente que SYN (gestión por S.O. y
    no nmap)
    UDP: más lento que TCP. A veces funciona
●


    enviando contenido adecuado
    TCP ACK: apto para diferenciar firewall
●


    statefull/stateless
Escaneo de puertos
    Menos eficientes y más dependientes de S.O.:
●



        TCP FIN, NULL, Xmas: aptos para algunos
    ●


        firewall stateless y filtros de paquetes
        TCP Window: apto para diferenciar firewall
    ●


        statefull/stateless.
Escaneo de puertos
    Fichero nmap-services:
●


    servicio, protocolo, puerto, frecuencia de
    estado abierto.
F=/usr/share/nmap/nmap-services
grep -v ^# $F | sort -t. -k 2 -r -n | grep tcp


    Ej. Puertos tcp más populares:
●


    80, 23, 443, 21, 22, 25,...
Escaneo de puertos
    Router/Firewall reenviando a otros equipos:
●




#PUERTOS=”P_FW1,P_FW2,...,P_REENV1,P_REENV2,...”
#nmap -PN -n -p $PUERTOS --packet-trace IPDESTINO | grep “ SA “

RCVD   (0.3800s) TCP IPDESTINO:P_REENV1 > IPORIGEN:57233 SA ttl=55 …
RCVD   (0.3800s) TCP IPDESTINO:P_REENV2 > IPORIGEN:57233 SA ttl=55 …
...
RCVD   (0.3800s) TCP IPDESTINO:P_FW1    > IPORIGEN:57233 SA ttl=56 …
RCVD   (0.3800s) TCP IPDESTINO:P_FW2    > IPORIGEN:57233 SA ttl=56 …
...
Fingerprinting de servicios
    Resultado: servicio, aplicación y versión
●



    Soporta SSL (mediante OpenSSL) y IPv6
●



    Caso de servicio SunRPC: se lanza un ataque
●


    por fuerza bruta para encontrar programa,
    nombre y versión.
Fingerprinting de servicios
    Técnica: Gramática de pruebas extensible:
●



        Probe: Nombre de la prueba y bytes a enviar
    ●


        ports, sslports: puertos para los que enviar
    ●


        un probe
        match, softmatch: patrón a comparar y
    ●


        servicio/versión asociada
        Otras: Exclude, totalwaitms, rarity, fallback
    ●


    Fichero nmap-service-probes
●
Fingerprinting de S.O.
    Resultado:
●



        Tipo de dispositivo
    ●


        Detalles: versión, fabricante, MAC, hostname
    ●


        Uptime estimado
    ●


        Distancia de red
    ●


        Predicción de secuencia TCP e IP
    ●
Fingerprinting de S.O.
grep ^Class nmap-os-db             |   cut -f 4 -d | | sort -u


            general purpose             telecom-misc
                web server                   PBX
              load balancer             VoIP adapter
               proxy server             VoIP gateway
               print server              VoIP phone
          remote management                 phone
             terminal server                 PDA

                  router                game console
                  switch                media device
                  bridge                power-device
            broadband router            storage-misc
                   WAP                   specialized
          encryption accelerator            printer
                 firewall                  terminal
              security-misc               webcam
Fingerprinting de S.O.
    Técnica:
●



        Interpretación de respuestas a 13 pruebas
    ●


        (ECN, IE, OPS, SEQ, T1,..., T7, U1, WIN)
        mediante envío de 2 paq. ICMP, 13 paq.
        TCP, 1 paq. UDP a puertos abiertos /
        cerrados.
        Ej. ttl por defecto:
    ●


        /proc/sys/net/ipv4/ip_default_ttl
    Fichero nmap-os-db
●
Fingerprinting de S.O.
    Otras técnicas no empleadas:
●



        Fingerprinting pasivo: nmap es activo
    ●


        Exploits de versiones específicas
    ●


        Tiempos de retransmisión de paquetes: lento
    ●


        Fragmentación IP: algunos fw
    ●


        (de)fragmentan
        Qué puertos están abiertos: poco fiable
    ●
Parámetros de calidad
    Fiabilidad:
●



        Cantidad de información
    ●


        No falsos positivos/negativos
    ●


    Velocidad: Tiempo / Cantidad de info
●



    Rendimiento en contextos no favorables (ej.
●


    firewalls)
    Ocultación o discreción (stealthiness)
●



    Recursos (RAM, ancho de banda)
●
Fiabilidad
    ¡No siempre acierta!
●




    Escanear más puertos
●



    Escanear de forma más agresiva
●



    Escanear desde otra ubicación
●
Velocidad
    Paquetes y tiempos (1)
●



        Nº pruebas / segundo (min/máx).
    ●


        Paralelismo:
    ●


          Nº hosts (mín/máx) en paralelo
        –
        – Nº pruebas simultáneas entre todos los
          hosts (mín/máx).
        – Múltiples instancias de nmap no siempre
          aconsejable
Velocidad
    Paquetes y tiempos (2)
●



        Timeouts: estimables ej. con hping2
    ●


           RTT (mín/máx): tiempo de espera a una
        –
           prueba
         – Por host: tiempo máximo para descartarlo

        Máximo nº de reintentos para retransmitir un
    ●


        paquete
        Retardo para envío de paquetes a un host
    ●
Velocidad
    No solicitar servicios innecesarios:
●



        Para ver los equipos online no es necesaria
    ●


        la fase de escaneo de puertos
        Resolución de nombres
    ●


        Detección de versiones de S.O. y servicios
    ●


        Trazado de rutas
    ●


    Qué puertos escanear: los N más típicos (por
●


    defecto 1000), el objetivo,...
    Intensidad de pruebas de detección de versión
●
Velocidad
    Escanear desde puntos con velocidad rápida al
●


    objetivo:
        Desde la red local o detrás del firewall
    ●


        Desde puntos adecuados ej. en conexiones
    ●


        internacionales
    Hacer nmaps por fases: 1) detección rápida de
●


    hosts online, 2) escaneo de puertos,...
    Tiempo estimado a priori/durante
●
Ocultación
    Características de paquetes: tamaño no nulo (--data-
●


    length), TTL, fragmentación, MTU, opciones de
    paquetes IP, checksum TCP/UDP inválido,
    enrutamiento en origen
    Envío de paquetes intermedios con otras IPs origen
●


    (“señuelos”)
    Spoofing de MAC, IP, puerto origen
●



    Proxies abiertos
●



    Orden aleatorio de hosts y puertos destinos
●



    Nº de hosts, nº de puertos y frecuencia de envío
●



    Técnica o tipo de probe
●
Firewalls / IDs / IPs
    Firewalls stateless/statefull, con/sin NAT
●



    IDSs: detección, ej. alarma
●



    IPSs: prevención, ej. bloqueo
●



    Honeypots / Honeynets
●
Denfensas contra nmap
    Cerrar puertos
●



    drop vs reject
●



    IDSs/ Seguimiento de logs (scanlogd,...)
●



    Servicios en puertos no típicos
●



    Port knocking
●



    Honeypots / honeynets
●



    OS Spoofing
●



    Retardos en respuestas (“tar pitting”)
●



    Bloqueo de puertos
●
Formatos de salida
    Fichero:
●



        Normal
    ●


        XML
    ●


        Grepable
    ●


        “Hack3r”
    ●


    Se puede continuar uno ya comenzado
●
NSE
    Nmap Scripting Engine
●



    Por qué:
●



        Detección más sofisticada de S.O. y
    ●


        servicios, ej. skype v2
        Deteccion de vulnerabilidades y malware
    ●


    Scripts clasificados en categorías
●
NSE
    NSE = intérprete LUA + biblioteca NSE
●



    LUA:
●



        Razones: diseñado para ser embebido de
    ●


        forma eficiente, lic. MIT, paralelizable.
        Lenguaje interpretado.
    ●


        Utilizado en wireshark/tshark, snort,
    ●


        OpenWRT, VLC, lighttpd, juegos,...
NSE
    Librería NSE: conexión Nmap y LUA:
●



        Paso de parámetros
    ●


        API de red (connect I/O, raw packet I/O)
    ●


        Ejecución de scripts en paralelo (thread
    ●


        mutexes)
        Gestión de Excepciones
    ●


        Registro de estado
    ●
NSE
      Ejemplo: showSMTPVersion.nse
●


--- Queries the version of an SMTP server.
--@output
-- 25/tcp open smtpn
-- |_ SMTP version: 220 mail.foo.com mx-2.bar.com ESMTP Exim 4.64n
id = quot;SMTP versionquot;
description = quot;Simple script which queries and prints the version of an SMTP server.quot;
author = quot;Diman Todorov <diman.todorov@gmail.com>quot;
license = quot;Same as Nmap--See http://nmap.org/book/man-legal.htmlquot;
categories = {quot;demoquot;}

require quot;commquot;
require quot;shortportquot;

portrule = shortport.port_or_service(25, quot;smtpquot;)
action = function(host, port)
        local status, result = comm.get_banner(host, port, {lines=1})

        if not status then
                return
        end

        return (string.gsub(result, quot;nquot;, quot;quot;))
end
NSE
    Conficker
●




nmap -PN -d -p445 --script=smb-check-vulns --script-args=safe=1 RangoIPs


    Host script results:
    | smb-check-vulns:
    | MS08-067: FIXED
    | Conficker: Likely INFECTED
    |_ regsvc DoS: VULNERABLE
zenmap
    GUI GTK. Otras Qt: knmap, nmapsi4
●



    Qué aporta:
●



        Ayuda en introducción de opciones
    ●


        Usabilidad en presentación de resultados,
    ●


        especialmente representación de topología
zenmap
Otras herramientas
    Libres / Privativas. Gratis / Comerciales.
●



    Ej. en Ubuntu jaunty 9.04:
●


    arp-scan, doscan, ike-scan, knocker, nast,
    nessus, netdiscover, nwatch, openvas*, p0f,
    paketto, php-net-portscan, pnscan, python-
    scapy, scanssh, sslscan, irpas, nikto, xprobe
    Otras, ej. unicornscan
●
Agur eta Ondo eskaneatu!
    Eskerrik asko: Gordon “Fyodor” Lyon & team, blindsec
●



    Licencia de uso de este documento: CC 3.0 by-sa
●




                           ()      /   _                  (
                 | (  ( .(                    )                      _____
                ` `        )               ( ___                  /_     
           (_`     +   . x ( .               /   ____-----------/ (o)    _
      - .-                  + ;            (O                              ____
                                    )        _____________ `                 /
       (__                   +- .( -'.- <. - _ VVVVVVV VV V                    /
        (_____              ._._: <_ - <- _ (--_AAAAAAA__A_/                     |
    .       /./.+- . .- / +-- - .          ______________//_               _______
    (__ ' /x / x _/ (                                         ___'                  /
    ,x/(' ./. /                                                    |                /
         / / _/ /        +                                        /                /
       ' (__/                                                   /                    
                      NMAP IS A POWERFUL TOOL -- USE CAREFULLY AND RESPONSIBLY

Más contenido relacionado

La actualidad más candente

Herramientas administrativas de red en diferentes sistemas operativos
Herramientas administrativas de red en diferentes sistemas operativosHerramientas administrativas de red en diferentes sistemas operativos
Herramientas administrativas de red en diferentes sistemas operativos
YinaGarzon
 
Herramientas de red de los sistemas operativos
Herramientas de red de los sistemas operativosHerramientas de red de los sistemas operativos
Herramientas de red de los sistemas operativos
yoes1053
 
Piam lab-4-ospf-1
Piam lab-4-ospf-1Piam lab-4-ospf-1
Piam lab-4-ospf-1
dherym
 
Presentacion i c m p
Presentacion i c m pPresentacion i c m p
Presentacion i c m p
Jairo Rosas
 
Comandos router cisco
Comandos router ciscoComandos router cisco
Comandos router cisco
Eddy Lojan
 

La actualidad más candente (19)

Servicios de comunicaciones (i)
Servicios de comunicaciones (i)Servicios de comunicaciones (i)
Servicios de comunicaciones (i)
 
Presentación tcp y udp
Presentación tcp y udpPresentación tcp y udp
Presentación tcp y udp
 
Herramientas administrativas de red en diferentes sistemas operativos
Herramientas administrativas de red en diferentes sistemas operativosHerramientas administrativas de red en diferentes sistemas operativos
Herramientas administrativas de red en diferentes sistemas operativos
 
Herramientas de red de los sistemas operativos
Herramientas de red de los sistemas operativosHerramientas de red de los sistemas operativos
Herramientas de red de los sistemas operativos
 
Comandos utilizados en redes anderson alvarado 6to computacion
Comandos utilizados en redes anderson alvarado 6to computacionComandos utilizados en redes anderson alvarado 6to computacion
Comandos utilizados en redes anderson alvarado 6to computacion
 
Apuntes iptables gerardo
Apuntes iptables gerardoApuntes iptables gerardo
Apuntes iptables gerardo
 
Piam lab-4-ospf-1
Piam lab-4-ospf-1Piam lab-4-ospf-1
Piam lab-4-ospf-1
 
Taller
TallerTaller
Taller
 
Curso Redes Linex 5
Curso Redes Linex 5Curso Redes Linex 5
Curso Redes Linex 5
 
Arp
ArpArp
Arp
 
Yersinia - Demostraciones prácticas de nuevos ataques de nivel dos
Yersinia - Demostraciones prácticas de nuevos ataques de nivel dosYersinia - Demostraciones prácticas de nuevos ataques de nivel dos
Yersinia - Demostraciones prácticas de nuevos ataques de nivel dos
 
Presentacion i c m p
Presentacion i c m pPresentacion i c m p
Presentacion i c m p
 
Introducción Administración de Redes
Introducción   Administración de Redes Introducción   Administración de Redes
Introducción Administración de Redes
 
Puertos de linux
Puertos de linuxPuertos de linux
Puertos de linux
 
Comandos router cisco
Comandos router ciscoComandos router cisco
Comandos router cisco
 
Comando De Router
Comando De RouterComando De Router
Comando De Router
 
Utilerías
UtileríasUtilerías
Utilerías
 
Utilerías
UtileríasUtilerías
Utilerías
 
Isma perezishanne p7conexiondosrouters
Isma perezishanne p7conexiondosroutersIsma perezishanne p7conexiondosrouters
Isma perezishanne p7conexiondosrouters
 

Destacado

Genial 112 pags uso de nmap en linux consola manual oficial gobierno-2079201...
Genial 112 pags uso de nmap en linux consola  manual oficial gobierno-2079201...Genial 112 pags uso de nmap en linux consola  manual oficial gobierno-2079201...
Genial 112 pags uso de nmap en linux consola manual oficial gobierno-2079201...
xavazquez
 

Destacado (8)

Clase practica seguridad escaneo con nma pf
Clase practica seguridad   escaneo con nma pfClase practica seguridad   escaneo con nma pf
Clase practica seguridad escaneo con nma pf
 
Genial 112 pags uso de nmap en linux consola manual oficial gobierno-2079201...
Genial 112 pags uso de nmap en linux consola  manual oficial gobierno-2079201...Genial 112 pags uso de nmap en linux consola  manual oficial gobierno-2079201...
Genial 112 pags uso de nmap en linux consola manual oficial gobierno-2079201...
 
Pruebas de penetración nmap
Pruebas de penetración nmapPruebas de penetración nmap
Pruebas de penetración nmap
 
Taller: Exploración de redes con Nmap
Taller: Exploración de redes con NmapTaller: Exploración de redes con Nmap
Taller: Exploración de redes con Nmap
 
Técnicas de escaneo masivo - 11/2013
Técnicas de escaneo masivo - 11/2013Técnicas de escaneo masivo - 11/2013
Técnicas de escaneo masivo - 11/2013
 
Curso Virtual de Nmap
Curso Virtual de NmapCurso Virtual de Nmap
Curso Virtual de Nmap
 
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]
 
Manual Nmap
Manual NmapManual Nmap
Manual Nmap
 

Similar a Nmap, the free scanner

Charla Nmap Jose Luis Chica Murcialanparty 11
Charla Nmap Jose Luis Chica Murcialanparty 11Charla Nmap Jose Luis Chica Murcialanparty 11
Charla Nmap Jose Luis Chica Murcialanparty 11
spankito
 
Escaneo de puertos clase 2 complemento b 28 02-13
Escaneo de puertos clase 2 complemento b 28 02-13Escaneo de puertos clase 2 complemento b 28 02-13
Escaneo de puertos clase 2 complemento b 28 02-13
Tensor
 
Escaneo de puertos clase 2 complemento d 28 02-13
Escaneo de puertos clase 2 complemento d 28 02-13Escaneo de puertos clase 2 complemento d 28 02-13
Escaneo de puertos clase 2 complemento d 28 02-13
Tensor
 
Curso Avanzado Seguridad Redes
Curso Avanzado Seguridad RedesCurso Avanzado Seguridad Redes
Curso Avanzado Seguridad Redes
Antonio Durán
 
Herramientas Administrativas de Red
Herramientas Administrativas de RedHerramientas Administrativas de Red
Herramientas Administrativas de Red
cyberleon95
 

Similar a Nmap, the free scanner (20)

Charla Nmap Jose Luis Chica Murcialanparty 11
Charla Nmap Jose Luis Chica Murcialanparty 11Charla Nmap Jose Luis Chica Murcialanparty 11
Charla Nmap Jose Luis Chica Murcialanparty 11
 
Que es y como usar nmap
Que es y como usar nmapQue es y como usar nmap
Que es y como usar nmap
 
Queesycomousarnmap 150527171529-lva1-app6892
Queesycomousarnmap 150527171529-lva1-app6892Queesycomousarnmap 150527171529-lva1-app6892
Queesycomousarnmap 150527171529-lva1-app6892
 
Sockets ipv4
Sockets ipv4Sockets ipv4
Sockets ipv4
 
tCP.pptx
tCP.pptxtCP.pptx
tCP.pptx
 
escaneo de puertos.pptx
escaneo de puertos.pptxescaneo de puertos.pptx
escaneo de puertos.pptx
 
Resumen
ResumenResumen
Resumen
 
Escaneo de puertos clase 2 complemento b 28 02-13
Escaneo de puertos clase 2 complemento b 28 02-13Escaneo de puertos clase 2 complemento b 28 02-13
Escaneo de puertos clase 2 complemento b 28 02-13
 
Uso del escáner de puertos nmap
Uso del escáner de puertos nmapUso del escáner de puertos nmap
Uso del escáner de puertos nmap
 
Escaneo de puertos clase 2 complemento d 28 02-13
Escaneo de puertos clase 2 complemento d 28 02-13Escaneo de puertos clase 2 complemento d 28 02-13
Escaneo de puertos clase 2 complemento d 28 02-13
 
Curso Avanzado Seguridad Redes
Curso Avanzado Seguridad RedesCurso Avanzado Seguridad Redes
Curso Avanzado Seguridad Redes
 
Webinar Gratuito: "Técnicas para Escaneo de Puertos con Nmap"
Webinar Gratuito: "Técnicas para Escaneo de Puertos con Nmap"Webinar Gratuito: "Técnicas para Escaneo de Puertos con Nmap"
Webinar Gratuito: "Técnicas para Escaneo de Puertos con Nmap"
 
Tipos de Malware
Tipos de MalwareTipos de Malware
Tipos de Malware
 
Nmap
NmapNmap
Nmap
 
Nmap
NmapNmap
Nmap
 
Tcpdump a.2
Tcpdump a.2Tcpdump a.2
Tcpdump a.2
 
Detectando sniffers en nuestra red b
Detectando sniffers en nuestra red bDetectando sniffers en nuestra red b
Detectando sniffers en nuestra red b
 
Linux Redes
Linux RedesLinux Redes
Linux Redes
 
Reconocimiento Activo
Reconocimiento ActivoReconocimiento Activo
Reconocimiento Activo
 
Herramientas Administrativas de Red
Herramientas Administrativas de RedHerramientas Administrativas de Red
Herramientas Administrativas de Red
 

Más de Dani Gutiérrez Porset

Introducción al diseño grafico con software libre
Introducción al diseño grafico con software libreIntroducción al diseño grafico con software libre
Introducción al diseño grafico con software libre
Dani Gutiérrez Porset
 
Intro a los sistemas operativos móviles
Intro a los sistemas operativos móvilesIntro a los sistemas operativos móviles
Intro a los sistemas operativos móviles
Dani Gutiérrez Porset
 

Más de Dani Gutiérrez Porset (20)

Librecon 2016 - Emprendizaje digital y Software libre
Librecon 2016 - Emprendizaje digital y Software libreLibrecon 2016 - Emprendizaje digital y Software libre
Librecon 2016 - Emprendizaje digital y Software libre
 
FFMPEG and LibAV
FFMPEG and LibAVFFMPEG and LibAV
FFMPEG and LibAV
 
Multimedia Services: Video
Multimedia Services: VideoMultimedia Services: Video
Multimedia Services: Video
 
Multimedia Services: Image
Multimedia Services: ImageMultimedia Services: Image
Multimedia Services: Image
 
Multimedia Services: Audio
Multimedia Services: AudioMultimedia Services: Audio
Multimedia Services: Audio
 
Evolución de las Herramientas de aprendizaje online con licencia libre
Evolución de las Herramientas de aprendizaje online con licencia libreEvolución de las Herramientas de aprendizaje online con licencia libre
Evolución de las Herramientas de aprendizaje online con licencia libre
 
Mecanismos IPC system V en Linux
Mecanismos IPC system V en LinuxMecanismos IPC system V en Linux
Mecanismos IPC system V en Linux
 
Señales en Linux
Señales en LinuxSeñales en Linux
Señales en Linux
 
Introducción al diseño grafico con software libre
Introducción al diseño grafico con software libreIntroducción al diseño grafico con software libre
Introducción al diseño grafico con software libre
 
Moodle avanzado - Julio 2012
Moodle avanzado - Julio 2012Moodle avanzado - Julio 2012
Moodle avanzado - Julio 2012
 
Akademy 2013 bilbao_proposal
Akademy 2013 bilbao_proposalAkademy 2013 bilbao_proposal
Akademy 2013 bilbao_proposal
 
Web 2.0 (2010ko abendua) euskeraz
Web 2.0 (2010ko abendua) euskerazWeb 2.0 (2010ko abendua) euskeraz
Web 2.0 (2010ko abendua) euskeraz
 
Sareen kudeaketa, SNMP eta RMON
Sareen kudeaketa, SNMP eta RMONSareen kudeaketa, SNMP eta RMON
Sareen kudeaketa, SNMP eta RMON
 
Cómo hacer una buena presentación
Cómo hacer una buena presentaciónCómo hacer una buena presentación
Cómo hacer una buena presentación
 
Ofimatica con Libreoffice
Ofimatica con LibreofficeOfimatica con Libreoffice
Ofimatica con Libreoffice
 
Gestión de redes, SNMP y RMON
Gestión de redes, SNMP y RMONGestión de redes, SNMP y RMON
Gestión de redes, SNMP y RMON
 
DHCP, DNS, whois
DHCP, DNS, whoisDHCP, DNS, whois
DHCP, DNS, whois
 
Web 2.0 (dic 2010)
Web 2.0 (dic 2010)Web 2.0 (dic 2010)
Web 2.0 (dic 2010)
 
Intro a los sistemas operativos móviles
Intro a los sistemas operativos móvilesIntro a los sistemas operativos móviles
Intro a los sistemas operativos móviles
 
kde on windows
kde on windowskde on windows
kde on windows
 

Último

microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
2024020140
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
Yanitza28
 
Chat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaChat GPT para la educación Latinoamerica
Chat GPT para la educación Latinoamerica
EdwinGarca59
 

Último (20)

herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el tema
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
 
Desarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - EstradaDesarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - Estrada
 
Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024
 
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
 
EL ESPIRITU SANTO en pentecostes2022.pptx
EL ESPIRITU SANTO en pentecostes2022.pptxEL ESPIRITU SANTO en pentecostes2022.pptx
EL ESPIRITU SANTO en pentecostes2022.pptx
 
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxTarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
 
el uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptxel uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptx
 
Editorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfEditorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdf
 
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
 
Introduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptxIntroduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptx
 
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfRedes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
 
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptxAVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
 
Chat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaChat GPT para la educación Latinoamerica
Chat GPT para la educación Latinoamerica
 
10°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-810°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-8
 
Imágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la informaciónImágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la información
 
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptx
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptxTipos de Datos de Microsoft Access-JOEL GARCIA.pptx
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptx
 
Función del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacionFunción del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacion
 

Nmap, the free scanner

  • 2. ¿Por qué esta presentación?
  • 3. ¿Por qué esta presentación? 1ª edic. Dic-2008
  • 4. Software libre con 12 años 1-sep-97: sin versión, sólo para GNU/Linux, ● creada por Gordon “Fyodor” Lyon Feb-04: v3.50 denegada a SCO Caldera por no ● adhesión a la GPL. Le obliga a rehacer la ISO. Dic-06: v4.21ALPHA1 NSE ● Ago-08: v4.68 presentada en la Blackhat ● Defcon Mar-09: v4.85BETA7 Conficker ●
  • 5. Software libre con 12 años Nuevas contribuciones: ● Funcionalidades, algoritmos, huellas ● Google SoC: 2005, 2006, 2007, 2008 ●
  • 6. Software libre con 12 años Películas: ● The Matrix Reloaded (may-03),... ● Otras: 13 Game of death, The listening, ... ●
  • 7. Usos Descubrimiento Resolución inversa de equipos online de nombres Resolución de nombres: ●Servidores DNS preestablecidos (resolv.conf) Información de estado ●Otros servidores DNS de puertos tcp/udp, etc. ●S.O. (hosts,nsswitch.conf) Trazado de rutas Reconoc. de versiones servicios de red y S.O. ncat, ndiff Detección de agujeros de seg. y malware En otros software's Nessus, metasploit,...
  • 8. Cuestiones éticas y legales No hay una respuesta sencilla ● En general no problemático, pero a veces sí ● (políticas, dañar equipos)
  • 9. Cuestiones éticas y legales Consejos: ● Focalizar el objetivo: nº IPs y puertos, timing ● Respetar las políticas establecidas, si existen ● Avisar de antemano ● O... stealthiness ●
  • 10. Versión actual: 4.85BETA7 Licencia GPL v2 ● Corre en GNU/linux, *BSD, Windows, Mac OS ● X,... 1760 huellas de S.O. ● 4805 huellas de servicios tcp/udp ● 55 scripts NSE y 26 librerías LUA ● Ejecutables: ncat, ndiff, nmap, zenmap ● Otros ficheros: 140 protocolos, 2124 servicios ● tcp/udp, 8406 fabricantes de MACs, Servicios RPC
  • 11. Instalación debian 5.0 lenny: 4.62-1 ubuntu 9.04 jaunty: 4.76 tar.bz2 (v4.85BETA7: 6.2 Mb) ./configure && make && sudo make install (abierto a lectura desde dic-06)
  • 12. Descubrimiento equipos online Técnicas: ● (ping [-b] xxx.yyy.zzz[.255]) ● Ping ICMP echo request, timestamp, ● netmask TCP SYN, mejor contra FW stateful ● TCP ACK, mejor contra FW stateless ● Ping UDP (por defecto a udp/31338) ● Otros protocolos IP: ICMP, IGMP, IP-in-IP ● ARP scan. Más rápido en LANs ●
  • 13. Descubrimiento equipos online Por defecto: ● Superusuario: ICMP y ACK a tcp/80 ● No superusuario: SYN a tcp/80 a través del ● stack TCP/IP del S.O. (connect syscall). Más lenta. Si se está en red local: ARP ● A veces por defecto no se descubre ● Interesante nombres resueltos ● Entidad versus Proveedor servicio ●
  • 14. Escaneo de puertos Según RFCs e implement. stacks protocolos. Ej tcp: closed open SYN SYN RST SYN/ACK RST filtered SYN SYN/ACK ACK SYN Datos SYN RST SYN
  • 15. Escaneo de puertos nmap define 6 estados open closed filtered (*) closed|filtered open|filtered unfiltered UDP, IP, FIN, ACK Idle NULL, Xmas (*)No depende sólo del puerto, también del tipo de prueba
  • 16. Escaneo de puertos Detección Motor Motores Sin nmap versión del ultra_scan propios servicio Varios TCP,UDP (ver tabla) TCP idle netstat en ● ● ● ●TCP con flags ad-hoc ●FTP bounce cada equipo ●TCP idle ●nc -z ●IP protocol TCP TCP NULL, TCP TCP TCP SYN, UDP FIN, ACK Window Maimon Connect Xmas TCP SYN/ACK O UDP O ICMP error (tipo 3, cód. 3) F C F F F F ICMP error (tipo 3, cód. 1, 2, 9, 10, 13) F F F F F F (nada) F O|F O|F F F O|F TCP RST non-zero window field C C U O C TCP RST zero window field C C U C C
  • 17. Escaneo de puertos TCP Connect: no requiere privilegios, pero ● menos eficiente que SYN (gestión por S.O. y no nmap) UDP: más lento que TCP. A veces funciona ● enviando contenido adecuado TCP ACK: apto para diferenciar firewall ● statefull/stateless
  • 18. Escaneo de puertos Menos eficientes y más dependientes de S.O.: ● TCP FIN, NULL, Xmas: aptos para algunos ● firewall stateless y filtros de paquetes TCP Window: apto para diferenciar firewall ● statefull/stateless.
  • 19. Escaneo de puertos Fichero nmap-services: ● servicio, protocolo, puerto, frecuencia de estado abierto. F=/usr/share/nmap/nmap-services grep -v ^# $F | sort -t. -k 2 -r -n | grep tcp Ej. Puertos tcp más populares: ● 80, 23, 443, 21, 22, 25,...
  • 20. Escaneo de puertos Router/Firewall reenviando a otros equipos: ● #PUERTOS=”P_FW1,P_FW2,...,P_REENV1,P_REENV2,...” #nmap -PN -n -p $PUERTOS --packet-trace IPDESTINO | grep “ SA “ RCVD (0.3800s) TCP IPDESTINO:P_REENV1 > IPORIGEN:57233 SA ttl=55 … RCVD (0.3800s) TCP IPDESTINO:P_REENV2 > IPORIGEN:57233 SA ttl=55 … ... RCVD (0.3800s) TCP IPDESTINO:P_FW1 > IPORIGEN:57233 SA ttl=56 … RCVD (0.3800s) TCP IPDESTINO:P_FW2 > IPORIGEN:57233 SA ttl=56 … ...
  • 21. Fingerprinting de servicios Resultado: servicio, aplicación y versión ● Soporta SSL (mediante OpenSSL) y IPv6 ● Caso de servicio SunRPC: se lanza un ataque ● por fuerza bruta para encontrar programa, nombre y versión.
  • 22. Fingerprinting de servicios Técnica: Gramática de pruebas extensible: ● Probe: Nombre de la prueba y bytes a enviar ● ports, sslports: puertos para los que enviar ● un probe match, softmatch: patrón a comparar y ● servicio/versión asociada Otras: Exclude, totalwaitms, rarity, fallback ● Fichero nmap-service-probes ●
  • 23. Fingerprinting de S.O. Resultado: ● Tipo de dispositivo ● Detalles: versión, fabricante, MAC, hostname ● Uptime estimado ● Distancia de red ● Predicción de secuencia TCP e IP ●
  • 24. Fingerprinting de S.O. grep ^Class nmap-os-db | cut -f 4 -d | | sort -u general purpose telecom-misc web server PBX load balancer VoIP adapter proxy server VoIP gateway print server VoIP phone remote management phone terminal server PDA router game console switch media device bridge power-device broadband router storage-misc WAP specialized encryption accelerator printer firewall terminal security-misc webcam
  • 25. Fingerprinting de S.O. Técnica: ● Interpretación de respuestas a 13 pruebas ● (ECN, IE, OPS, SEQ, T1,..., T7, U1, WIN) mediante envío de 2 paq. ICMP, 13 paq. TCP, 1 paq. UDP a puertos abiertos / cerrados. Ej. ttl por defecto: ● /proc/sys/net/ipv4/ip_default_ttl Fichero nmap-os-db ●
  • 26. Fingerprinting de S.O. Otras técnicas no empleadas: ● Fingerprinting pasivo: nmap es activo ● Exploits de versiones específicas ● Tiempos de retransmisión de paquetes: lento ● Fragmentación IP: algunos fw ● (de)fragmentan Qué puertos están abiertos: poco fiable ●
  • 27. Parámetros de calidad Fiabilidad: ● Cantidad de información ● No falsos positivos/negativos ● Velocidad: Tiempo / Cantidad de info ● Rendimiento en contextos no favorables (ej. ● firewalls) Ocultación o discreción (stealthiness) ● Recursos (RAM, ancho de banda) ●
  • 28. Fiabilidad ¡No siempre acierta! ● Escanear más puertos ● Escanear de forma más agresiva ● Escanear desde otra ubicación ●
  • 29. Velocidad Paquetes y tiempos (1) ● Nº pruebas / segundo (min/máx). ● Paralelismo: ● Nº hosts (mín/máx) en paralelo – – Nº pruebas simultáneas entre todos los hosts (mín/máx). – Múltiples instancias de nmap no siempre aconsejable
  • 30. Velocidad Paquetes y tiempos (2) ● Timeouts: estimables ej. con hping2 ● RTT (mín/máx): tiempo de espera a una – prueba – Por host: tiempo máximo para descartarlo Máximo nº de reintentos para retransmitir un ● paquete Retardo para envío de paquetes a un host ●
  • 31. Velocidad No solicitar servicios innecesarios: ● Para ver los equipos online no es necesaria ● la fase de escaneo de puertos Resolución de nombres ● Detección de versiones de S.O. y servicios ● Trazado de rutas ● Qué puertos escanear: los N más típicos (por ● defecto 1000), el objetivo,... Intensidad de pruebas de detección de versión ●
  • 32. Velocidad Escanear desde puntos con velocidad rápida al ● objetivo: Desde la red local o detrás del firewall ● Desde puntos adecuados ej. en conexiones ● internacionales Hacer nmaps por fases: 1) detección rápida de ● hosts online, 2) escaneo de puertos,... Tiempo estimado a priori/durante ●
  • 33. Ocultación Características de paquetes: tamaño no nulo (--data- ● length), TTL, fragmentación, MTU, opciones de paquetes IP, checksum TCP/UDP inválido, enrutamiento en origen Envío de paquetes intermedios con otras IPs origen ● (“señuelos”) Spoofing de MAC, IP, puerto origen ● Proxies abiertos ● Orden aleatorio de hosts y puertos destinos ● Nº de hosts, nº de puertos y frecuencia de envío ● Técnica o tipo de probe ●
  • 34. Firewalls / IDs / IPs Firewalls stateless/statefull, con/sin NAT ● IDSs: detección, ej. alarma ● IPSs: prevención, ej. bloqueo ● Honeypots / Honeynets ●
  • 35. Denfensas contra nmap Cerrar puertos ● drop vs reject ● IDSs/ Seguimiento de logs (scanlogd,...) ● Servicios en puertos no típicos ● Port knocking ● Honeypots / honeynets ● OS Spoofing ● Retardos en respuestas (“tar pitting”) ● Bloqueo de puertos ●
  • 36. Formatos de salida Fichero: ● Normal ● XML ● Grepable ● “Hack3r” ● Se puede continuar uno ya comenzado ●
  • 37. NSE Nmap Scripting Engine ● Por qué: ● Detección más sofisticada de S.O. y ● servicios, ej. skype v2 Deteccion de vulnerabilidades y malware ● Scripts clasificados en categorías ●
  • 38. NSE NSE = intérprete LUA + biblioteca NSE ● LUA: ● Razones: diseñado para ser embebido de ● forma eficiente, lic. MIT, paralelizable. Lenguaje interpretado. ● Utilizado en wireshark/tshark, snort, ● OpenWRT, VLC, lighttpd, juegos,...
  • 39. NSE Librería NSE: conexión Nmap y LUA: ● Paso de parámetros ● API de red (connect I/O, raw packet I/O) ● Ejecución de scripts en paralelo (thread ● mutexes) Gestión de Excepciones ● Registro de estado ●
  • 40. NSE Ejemplo: showSMTPVersion.nse ● --- Queries the version of an SMTP server. --@output -- 25/tcp open smtpn -- |_ SMTP version: 220 mail.foo.com mx-2.bar.com ESMTP Exim 4.64n id = quot;SMTP versionquot; description = quot;Simple script which queries and prints the version of an SMTP server.quot; author = quot;Diman Todorov <diman.todorov@gmail.com>quot; license = quot;Same as Nmap--See http://nmap.org/book/man-legal.htmlquot; categories = {quot;demoquot;} require quot;commquot; require quot;shortportquot; portrule = shortport.port_or_service(25, quot;smtpquot;) action = function(host, port) local status, result = comm.get_banner(host, port, {lines=1}) if not status then return end return (string.gsub(result, quot;nquot;, quot;quot;)) end
  • 41. NSE Conficker ● nmap -PN -d -p445 --script=smb-check-vulns --script-args=safe=1 RangoIPs Host script results: | smb-check-vulns: | MS08-067: FIXED | Conficker: Likely INFECTED |_ regsvc DoS: VULNERABLE
  • 42. zenmap GUI GTK. Otras Qt: knmap, nmapsi4 ● Qué aporta: ● Ayuda en introducción de opciones ● Usabilidad en presentación de resultados, ● especialmente representación de topología
  • 44. Otras herramientas Libres / Privativas. Gratis / Comerciales. ● Ej. en Ubuntu jaunty 9.04: ● arp-scan, doscan, ike-scan, knocker, nast, nessus, netdiscover, nwatch, openvas*, p0f, paketto, php-net-portscan, pnscan, python- scapy, scanssh, sslscan, irpas, nikto, xprobe Otras, ej. unicornscan ●
  • 45. Agur eta Ondo eskaneatu! Eskerrik asko: Gordon “Fyodor” Lyon & team, blindsec ● Licencia de uso de este documento: CC 3.0 by-sa ● () / _ ( | ( ( .( ) _____ ` ` ) ( ___ /_ (_` + . x ( . / ____-----------/ (o) _ - .- + ; (O ____ ) _____________ ` / (__ +- .( -'.- <. - _ VVVVVVV VV V / (_____ ._._: <_ - <- _ (--_AAAAAAA__A_/ | . /./.+- . .- / +-- - . ______________//_ _______ (__ ' /x / x _/ ( ___' / ,x/(' ./. / | / / / _/ / + / / ' (__/ / NMAP IS A POWERFUL TOOL -- USE CAREFULLY AND RESPONSIBLY