SlideShare uma empresa Scribd logo
1 de 53
Baixar para ler offline
From Kernel Sp ce

 To User Heaven
     Jaime	
  Sánchez
     	
  


     @segofensiva
WHO	
  AM	
  I
§	
  Ingeniero	
  Informá,ca	
  de	
  Sistemas	
  y	
  Execu,ve	
  MBA

§	
  Soy	
  un	
  apasionado	
  de	
  la	
  seguridad	
  informá,ca,	
  con	
  más	
  de	
  
10	
  años	
  de	
  experiencia	
  profesional.

§	
  Comencé,	
  como	
  muchos	
  otros,	
  en	
  la	
  edad	
  de	
  oro	
  del	
  Phreak	
  
español

§	
  Mi	
  alma	
  sigue	
  siendo	
  Old	
  School,	
  aunque	
  desconozco	
  
cuando	
  la	
  vendí	
  para	
  trabajar	
  en	
  Seguridad	
  Copora,va	
  ;)

§	
  Estoy	
  tratando	
  de	
  retomar	
  mis	
  andaduras,	
  con	
  el	
  inicio	
  de	
  
un	
  nuevo	
  blog	
  www.seguridadofensiva.com

§	
  Contacto:	
  jsanchez@seguridadofensiva.com




                                                                                                   2
§	
  Trabajo	
  actualmente	
  en	
  un	
  SOC	
  (Security	
  Opera,ons	
  Center)




                                                                                       3
§	
  Evolución	
  de	
  los	
  ataques	
  informá,cos	
  durante	
  el	
  2012
       §	
  Incremento	
  del	
  Espionaje	
  Industrial,	
  HackBvismo	
  y	
  Ciberguerra
       §	
  Ataques	
  a	
  grandes	
  empresas	
  como	
  Facebook,	
  Apple,	
  TwiHer,	
  New	
  York	
  Times
       §	
  Intereses	
  económicos	
  y	
  polí,cos,	
  como	
  APT1,	
  Stuxnet	
  etc.




                                                                                                                     5
METODOLOGÍA	
  DE   RECONOCIMIENTO
 UNA	
  INTRUSIÓN
                                 EXPLORACIÓN




                                 COMPROMISO
                                  DEL	
  SISTEMA




                                MANTENIMIENTO
                                 DEL	
  ACCESO




                           BORRADO	
  DE	
  HUELLAS




                                                      6
IN	
  A	
  NUTSHELL




                      7
ARQUITECTURA
                                             §	
  Diferentes	
  nivels	
  de	
  acceso	
  a	
  recursos
                  Ring	
  3
                                             §	
  Forzado	
  por	
  hardware	
  en	
  la	
  CPU,	
  ofreciendo	
  
                  Ring	
  2
                                             diferentes	
  modos	
  a	
  nivel	
  de	
  hardware	
  o	
  
                  Ring	
  1                  microcódigo
                  Ring	
  0
                                             §	
  Organización	
  en	
  una	
  jerarquía	
  de	
  más	
  
                 Kernel
                                             privilegiado	
  (ring0)	
  a	
  menos	
  privilegiado	
  (número	
  
                                             de	
  anillo	
  más	
  alto)
               DisposiBvos
                                             §	
  El	
  anillo	
  0	
  es	
  el	
  nivel	
  con	
  la	
  mayoría	
  de	
  los	
  
               DisposiBvos
                                             privilegios	
  e	
  interactua	
  directamente	
  con	
  el	
  
               Aplicaciones                  hardware	
  ^sico,	
  como	
  la	
  CPU	
  y	
  memoria

                                             §	
  El	
  anillo	
  0	
  posee	
  el	
  nivel	
  más	
  bajo	
  de	
  protección,	
  
                                             se	
  espera	
  que	
  nunca	
  se	
  cuelgue.	
  En	
  ese	
  caso,	
  todo	
  
    Más                         Menos
Privilegiado                  Privilegiado
                                             el	
  sistema	
  caerá	
  con	
  él.

                                                                                                                                     8
KERNEL	
  vs	
  USER	
  SPACE
v KERNEL	
  SPACE:	
  área	
  protegida	
  donde	
  el	
  kernel	
  ejecuta	
  y	
  presta	
  
   sus	
  servicios:
   	
       *	
  Creación	
  de	
  procesos,	
  asignación	
  de	
  ,empos	
  de	
  
         atención	
  y	
  sincronización
   	
       *	
  Asignación	
  de	
  la	
  atención	
  de	
  la	
  CPU	
  a	
  los	
  procesos	
  que	
  lo	
  
         requieran
   	
       *	
  Administración	
  del	
  espacio	
  en	
  el	
  sistema	
  de	
  archivos:	
  
         acceso,	
  protección,	
  comunicación,	
  E/S	
  y	
  periféricos.
   	
       *	
  Ges,ón	
  del	
  hardware:	
  memoria,	
  procesasor	
  y	
  formas	
  de	
  
         almacenamiento

   v 	
  	
  	
  USER	
  SPACE:	
  espacio	
  reservado	
  para	
  aplicaciones	
  del	
  usuario:
	
                   *	
  Cada	
  proceso	
  normalmente	
  ejecuta	
  su	
  memoria	
  virtual,	
  
y	
  a	
  menos	
  que	
  se	
  solicite	
  de	
  forma	
  explícita,	
  no	
  se	
  puede	
  acceder	
  a	
  
la	
  memoria	
  de	
  otros	
  procesos.
	
                   *	
  Comienza	
  cuando	
  el	
  kernel	
  monta	
  roocs.	
  El	
  primer	
  
programa	
  en	
  ser	
  ejecutado	
  por	
  defecto	
  es	
  /sbin/init

                                                                                                                 9
WTF	
  !?
KERNEL	
  vs	
  USER	
  SPACE
                  Applica,on	
  Code
Your	
  Program                               User	
  Space
                      C	
  Library




                  System	
  Interface

Linux	
  Kernel   Generic	
  Services        Kernel	
  Space


                   Device	
  Drivers




  Hardware


                                                               11
How i your
   met
packet


             12
13
14
IPTables
§	
  Necilter	
  permite	
  interceptar	
  y	
  manipular	
  paquetes	
  de	
  red,	
  permi,endo	
  el	
  
manejo	
  en	
  diferentes	
  estados	
  de	
  procesamiento.

§	
  El	
  componente	
  más	
  popular	
  construído	
  sobre	
  Necilter	
  es	
  iptables,	
  una	
  
herramienta	
  de	
  firewall	
  que	
  permite:
               •	
  Filtrar	
  paquetes
               •	
  Realizar	
  traducciones	
  de	
  direcciones	
  de	
  red	
  (NAT)
               •	
  Mantener	
  registros	
  de	
  LOG
               •	
  Soporte	
  para	
  IPv4	
  e	
  IPv6
               •	
  Stateless	
  /	
  Statefull	
  packet	
  filtering

§	
  El	
  nombre	
  de	
  iptables	
  se	
  u,liza	
  de	
  forma	
  errónea	
  para	
  referirse	
  a	
  toda	
  la	
  
infraestructura	
  ofrecida	
  por	
  el	
  proyecto	
  Necilter.

§	
  El	
  proyecto	
  ofrece	
  otros	
  subsistemas	
  independientes	
  de	
  iptables,	
  tales	
  como	
  
el	
  connec,on	
  tracking	
  system,	
  que	
  permite	
  encolar	
  paquetes	
  para	
  que	
  sean	
  
tratados	
  desde	
  el	
  espacio	
  de	
  usuario.
                                                                                                                             15
FUNCIONAMIENTO
§	
  Sencillez	
  para	
  la	
  escritura	
  de	
  reglas

§	
  Sencillez	
  para	
  crear	
  nuevas	
  reglas,	
  con	
  frases	
  básicas	
  del	
  ,po:
      1.	
  "Quiero	
  autorizar	
  el	
  acceso	
  	
  a	
  mi	
  servidor	
  web	
  a	
  través	
  de	
  mi	
  firewall"
      2.	
  "Quiero	
  autorizar	
  a	
  los	
  usuarios	
  de	
  la	
  LAN	
  a	
  conectarse	
  a	
  la	
  web	
  a	
  través	
  de	
  mi	
  
            firewall"
      3.	
  "Acepto	
  que	
  gente	
  pueda	
  conectarse	
  al	
  servidor	
  ssh	
  a	
  través	
  firewall".
      4.	
  "Quiero	
  que	
  desde	
  mi	
  firewall	
  se	
  permita	
  hacer	
  ping	
  a	
  todo	
  Internet."

§	
  Así	
  que	
  una	
  manera	
  sencilla	
  de	
  clasificar	
  los	
  paquetes	
  que	
  ges,ona	
  un	
  servidor	
  de	
  
seguridad	
  se	
  va	
  a	
  dividir	
  el	
  flujo	
  en	
  tres	
  partes:
       1.	
  paquetes	
  dirigidos	
  al	
  servidor	
  de	
  seguridad	
  (tercer	
  caso)
       2.	
  paquetes	
  que	
  pasan	
  por	
  el	
  firewall	
  (los	
  casos	
  primero	
  y	
  segundo)
       3.	
  paquetes	
  emi,dos	
  por	
  el	
  servidor	
  (cuarto	
  caso)
§	
  
§Hay	
  tres	
  cadenas	
  básicas:
             •	
  INPUT:	
  entrada
             •	
  OUTPUT:	
  salida
             •	
  FORWARD:	
  reenvío                                                                                                             16
FUNCIONAMIENTO
§	
  Para	
  los	
  paquetes	
  salientes	
  que	
  tenemos	
  dos	
  cadenas:
                      •	
  Paquetes	
  que	
  llegan	
  desde	
  el	
  firewall:	
  la	
  cadena	
  OUTPUT
                      •	
  Paquetes	
  que	
  pasan	
  por	
  el	
  firewall:	
  la	
  cadena	
  FORWARD

§	
  Existe	
  tres	
  tablas	
  incorporadas,	
  cada	
  una	
  de	
  las	
  cuales	
  ,ene	
  cadenas	
  predefinidas:
         •	
  filter	
  table:	
  responsable	
  del	
  filtrado.	
  Todos	
  los	
  paquetes	
  pasan	
  a	
  través	
  de	
  la	
  
         tabla	
  de	
  filtros.	
  Con,ene	
  las	
  siguientes	
  cadenas	
  predefinidas:
	
               	
              INPUT	
  /	
  OUTPUT	
  /	
  FORWARD

       •	
  net	
  table:	
  responsable	
  de	
  configurar	
  las	
  reglas	
  de	
  reescritura	
  de	
  direcciones	
  o	
  de	
  
       puertos	
  de	
  los	
  paquetes.	
  El	
  primer	
  paquete	
  en	
  cualquier	
  conexión	
  pasa	
  por	
  esta	
  
       tabla:
	
            	
               PREROUTING	
  /	
  POSTROUTING	
  /	
  OUTPUT

       •	
  mangle	
  table:	
  responsable	
  de	
  ajustar	
  las	
  opciones	
  de	
  los	
  paquetes.	
  Todos	
  los	
  
       paquetes	
  pasan	
  por	
  esta	
  tabla.	
  Con,ene	
  todas	
  las	
  cadenas	
  predefinidas	
  posibles:
	
            	
          PREROUTING	
  /	
  INPUT	
  /	
  FORWARD	
  /	
  OUTPUT	
  /	
  POSTROUTING
                                                                                                                                      17
DESTINOS	
  DE	
  REGLAS
§	
  Existen	
  los	
  siguientes	
  des,nos	
  ya	
  incorporados:
         •	
  ACCEPT:	
  necilter	
  acepta	
  el	
  paquete
         •	
  DROP:	
  necilter	
  descarta	
  el	
  paquete	
  sin	
  ningún	
  otro	
  ,po	
  
         de	
  procesamiento
         •	
  QUEUE:	
  este	
  des,no	
  hace	
  que	
  el	
  paquete	
  sea	
  enviado	
  a	
             IMPORTANTE
         una	
  cola	
  en	
  el	
  espacio	
  de	
  usuario.	
  Una	
  aplicación	
  puede	
  
         usar	
  la	
  biblioteca	
  libipq	
  (parte	
  del	
  proyecto	
  necilter)	
  para	
  
         alterar	
  el	
  paquete.	
  Si	
  no	
  existe	
  ninguna	
  aplicación	
  que	
  lea	
  
         la	
  cola,	
  este	
  des,no	
  equivale	
  a	
  DROP.
         •	
  RETURN:	
  el	
  paquete	
  deja	
  de	
  circular	
  por	
  la	
  cadena	
  en	
  cuya	
  regla	
  se	
  ejecutó	
  el	
  des,no	
  
         RETURN.

§	
  Otras	
  extensiones:
         •	
  REJECT:	
  mismo	
  efecto	
  que	
  DROP,	
  pero	
  envía	
  un	
  mensaje	
  de	
  error	
  a	
  quien	
  lo	
  envió	
  
         originalmente:	
  tcp-­‐reset	
  para	
  conexiones	
  tcp	
  denegadas,	
  icmp-­‐port-­‐unreachable	
  para	
  
         sesiones	
  UDP	
  denegadas	
  etc.
         •	
  LOG	
  /	
  ULOG:	
  log	
  de	
  los	
  paquetes	
  o	
  mul,difusión	
  a	
  un	
  socket
         •	
  DNAT	
  /	
  SNAT:	
  reescritura	
  de	
  des,no/origen	
  para	
  traducción	
  NAT
         •	
  MASQUERADE:	
  forma	
  especial	
  de	
  SNAT	
  para	
  direcciones	
  IP	
  dinámicas                                   18
13
NFQUEUE
§	
  NFQUEUE	
  permite	
  delegar	
  la	
  decisión	
  de	
  los	
  paquetes	
  en	
  el	
  espacio	
  de	
  usuario

§	
  Es	
  necesario	
  disponer	
  de	
  un	
  sosware	
  que	
  esté	
  a	
  la	
  escucha	
  en	
  la	
  cola	
  que	
  queramos	
  
u,lizar,	
  que	
  obtenenga	
  los	
  paquetes	
  del	
  kernel	
  y	
  devuelva	
  un	
  veredicto	
  con	
  cada	
  uno

§	
  La	
  cola	
  es	
  una	
  lista	
  enlazada,	
  cuyos	
  elementos	
  son	
  el	
  paquete	
  y	
  metadatos,	
  que	
  posee	
  
las	
  siguientes	
  caracterís,cas:
       §	
  Longitud	
  Fija
       §	
  Los	
  elementos	
  se	
  almacenan	
  e	
  indexan	
  con	
  un	
  entero
       §	
  Un	
  paquete	
  es	
  liberado	
  cuando	
  se	
  devuelve	
  el	
  veredicto	
  desde	
  el	
  espacio	
  de	
  
       usuario	
  a	
  un	
  determinado	
  índice
       §	
  Cuando	
  la	
  cola	
  se	
  llena,	
  no	
  es	
  posible	
  encolar	
  más	
  paquetes

§	
  Implicaciones:
       §	
  Podemos	
  devolver	
  los	
  veredictos	
  en	
  el	
  orden	
  que	
  queramos
       §	
  Es	
  posible	
  leer	
  múl,ples	
  pauqetes	
  antes	
  de	
  devolver	
  el	
  veredicto.	
  Si	
  devolvemos	
  
       los	
  veredictos	
  de	
  forma	
  lenta,	
  la	
  cola	
  se	
  llenará	
  y	
  el	
  comenzaremos	
  a	
  ,rar	
  los	
  
       paquetes	
  nuevos	
  que	
  lleguen	
  a	
  nosotros
                                                                                                                                           20
EJEMPLOS




           21
SNIFFER	
  BÁSICO	
  TCP




                           22
CAPTURAR	
  TRAFICO	
  HTTP




                              23
Block	
  DNS	
  Tunneling
Fake	
  Traceroute
SSH	
  Fake	
  Source


                            24
FAKE	
  SSH	
  SOURCE




                             Atacante

                             $	
  _
                                                                 Router

                                                                                             www.rootedcon.es




                          Servidor	
  SSH


-­‐	
  Ocultaremos	
  	
  nuestra	
  direción	
  IP	
  de	
  origen	
  y	
  podremos	
  modificarla	
  con	
  cualquier	
  otro	
  
valor	
  que	
  necesitemos	
  en	
  nuestra	
  máquina	
  comprome,da	
  Servidor	
  SSH.
	
  

-­‐	
  Ú,l	
  para	
  saltarte	
  filtros	
  o	
  para	
  no	
  llamar	
  la	
  atención	
  del	
  administrador.
                                                                                                                                     25
PORT	
  KNOCKING
El	
  Port	
  Knocking	
  es	
  una	
  técnica	
  para	
  establecer	
  una	
  conexión	
  a	
  un	
  ordenador	
  de	
  la	
  red	
  
que	
  no	
  ,ene	
  puertos	
  abiertos.




                                                                                                 Imágenes:	
  www.portknocking.com


 Antes	
  de	
  que	
  una	
  conexión	
  se	
  establezca,	
  los	
  puertos	
  se	
  abren	
  mediante	
  una	
  secuencia,	
  
 que	
  es	
  una	
  serie	
  de	
  intentos	
  de	
  conexión	
  para	
  puertos	
  cerrados.
                                                                                                                                         26
BLACK	
  OPS	
  OF	
  DNS
§	
  El	
  DNS	
  Tunneling	
  permite	
  crear	
  un	
  tunel	
  IP	
  sobre	
  el	
  protocolo	
  DNS,	
  para	
  conseguir	
  salir	
  a	
  
Internet	
  en	
  un	
  entorno	
  donde	
  al	
  unico	
  servicio	
  que	
  podemos	
  acceder	
  es	
  un	
  DNS	
  que	
  nos	
  
resuelve	
  direcciones	
  de	
  Internet.

§	
  Dos	
  formas	
  de	
  encapsular	
  datos	
  en	
  DNS:
        §	
  Base64	
  para	
  registros	
  TXT	
  (~220	
  bytes/paquete)
        §	
  Base32	
  para	
  registros	
  CNAME	
  (~110	
  bytes/paquete)




                                                                                                                                           27
TRACEROUTE	
  FUN




                    28
DETECCIÓN	
  REMOTA
DEL	
  SISTEMA	
  OPERATIVO




                          29
Técnicas	
  de	
  detección	
  de	
  Sistema	
  opera,vo

       Pasivo                                                              Ac,vo


Análisis	
  de	
  Tráfico                            Captura                           Pe,ciones	
  TCP/IP




                                                                                                            30
31
32
TÉCNICAS	
  CLÁSICAS




                       33
§	
  Aunque	
  cada	
  día	
  es	
  más	
  sencillo	
  buscar	
  un	
  target	
  con	
  una	
  versión	
  específica.




                                                                                                                        34
NMAP




§	
  Nos	
  centraremos	
  en	
  el	
  resultado	
  interesante	
  para	
  el	
  reconocimiento	
  remoto	
  del	
  sistema	
  
opera,vo,	
  como:
	
              -­‐	
  Device	
  Type	
     	
           	
           -­‐	
  Network	
  Distance
	
              -­‐	
  Running	
  	
        	
           	
           -­‐	
  TCP	
  Sequence	
  Predic,on
	
              -­‐	
  OS	
  Details	
      	
           	
           -­‐	
  IP	
  ID	
  Sequence	
  Genera,on
	
              -­‐	
  Up,me	
  Guess
                                                                                                                               35
36
37
38
MÉTODOS	
  UTILIZADOS	
  POR	
  NMAP

§	
  El	
  método	
  u,lizado	
  por	
  nmap	
  envía	
  15	
  pruebas	
  TCP,	
  UDP	
  e	
  ICMP,	
  tanto	
  a	
  puertos	
  
abiertos	
  del	
  sistema,	
  como	
  a	
  cerrados.	
  Estas	
  pruebas	
  están	
  especialmente	
  diseñadas	
  para	
  
explorar	
  ambigüedades	
  respecto	
  a	
  los	
  estándares	
  del	
  RFC	
  y	
  escucha	
  las	
  respuestas.

§	
  SEQUENCE	
  GENERATION	
  (SEQ,	
  OPS,	
  WIN	
  y	
  T1):	
  se	
  envían	
  6	
  pruebas	
  TCP	
  a	
  un	
  puerto	
  que	
  
haya	
  comprobado	
  que	
  esté	
  abierto.	
  Estos	
  paquetes	
  varían	
  en	
  las	
  opciones	
  TCP	
  y	
  el	
  valor	
  de	
  
ventana:
         §	
  Paquete	
  1:	
  WS(10),NOP,MSS(1460),TS(Tval:0xFFFFFFFF.	
  Tsecr:0),	
  SACK	
  y	
  W(1)
         §	
  Paquete	
  2:	
  MSS(1400),	
  WS(0),SACK,	
  TS(Tval:0xFFFFFFFF.	
  Tsecr:0),EOL	
  y	
  W(63)
         §	
  Paquete	
  3:	
  TS(Tval:0xFFFFFFFF.	
  Tsecr:0),NOP,NOP,WS(5),NOP,MSS(640)	
  y	
  W(4)
         §	
  Paquete	
  4:	
  SACK,	
  TS(Tval:0xFFFFFFFF.	
  Tsecr:0),WS(10),EOL	
  y	
  W(4)
         §	
  Paquete	
  5:	
  MSS(536),SACK,	
  TS(Tval:0xFFFFFFFF.	
  Tsecr:0),	
  WS(10),EOL	
  y	
  W(16)
         §	
  Paquete	
  6:	
  MSS(265),SACK,	
  TS(Tval:0xFFFFFFFF.	
  Tsecr:0)	
  y	
  W(512)

§	
  ICMP	
  ECHO	
  (IE):	
  se	
  realiza	
  el	
  envío	
  de	
  dos	
  paquetes	
  ICMP	
  ECHO.

§	
  TCP	
  explicit	
  congesBon	
  noBficaBon	
  (ECN):	
  Se	
  realiza	
  el	
  envío	
  a	
  un	
  puerto	
  abierto,	
  con	
  los	
  
flags	
  ECN	
  CWN	
  y	
  ECE	
  ac,vados,	
  WS(10),	
  NOP,	
  MSS(1460),SACK,NOP,NOP	
  y	
  W3)
                                                                                                                                       39
§	
  TCP	
  T2-­‐T7:	
  cada	
  prueba	
  se	
  genera	
  realizando	
  el	
  envío	
  de	
  un	
  paquete	
  TCP.	
  Salvo	
  uno	
  de	
  
ellos,	
  las	
  opciones	
  en	
  este	
  caso	
  corresponden	
  a	
  WS(10),	
  NOP,	
  MSS(265),	
  TS	
  (Tval:	
  
0xFFFFFFFF,	
  Tsecr:0).
         §	
  T2:	
  sin	
  flags,	
  IP	
  DF	
  y	
  W(128)	
  a	
  un	
  puerto	
  abierto
         §	
  T3:	
  SYN,	
  FIN,	
  URG,	
  PSH	
  y	
  W(256)	
  a	
  un	
  puerto	
  abierto
         §	
  T4:	
  ACK	
  con	
  IP	
  DF	
  y	
  W(1024)	
  a	
  un	
  puerto	
  abierto
         §	
  T5:	
  SYN	
  con	
  W(31337)	
  a	
  un	
  puerto	
  cerrado
         §	
  T6:	
  ACK	
  con	
  IP	
  DF	
  y	
  W(32768)	
  a	
  un	
  puerto	
  cerrado
         §	
  T7:	
  FIN,	
  PSH,	
  URG	
  con	
  W(65535)	
  a	
  un	
  puerto	
  cerrado

§	
  UDP:	
  se	
  trata	
  de	
  un	
  paquete	
  UDP	
  enviado	
  a	
  un	
  puerto	
  cerrado.	
  El	
  payload	
  del	
  paquete	
  
consisten	
  en	
  el	
  carácter	
  ‘C’	
  (0x43)	
  repeBdo	
  300	
  veces.	
  Si	
  el	
  puerto	
  está	
  cerrado	
  y	
  no	
  hay	
  
un	
  firewall	
  entre	
  medias,	
  se	
  espera	
  recibir	
  un	
  paquete	
  ICMP	
  port	
  unreachable	
  de	
  
respuesta.




                                                                                                                                            40
§	
  Lanzamos	
  el	
  nmap	
  para	
  detectar	
  sistema	
  opera,vo	
  con	
  la	
  opción	
  –packet-­‐trace:




§	
  Comprobamos	
  si	
  somos	
  capaz	
  de	
  detectar	
  el	
  escaneo:




                                                                                                                     41
ANÁLISIS	
  DE	
  LAS	
  RESPUESTAS
 Fingerprint Linux 2.6.17 - 2.6.24
 Class Linux | Linux | 2.6.X | general purpose
 SEQ(SP=A5-D5%GCD=1-6%ISR=A7-D7%TI=Z%II=I%TS=U)
 OPS(O1=M400C%O2=M400C%O3=M400C%O4=M400C%O5=M400C%O6=M400C)
 WIN(W1=8018%W2=8018%W3=8018%W4=8018%W5=8018%W6=8018)
 ECN(R=Y%DF=Y%T=3B-45%TG=40%W=8018%O=M400C%CC=N%Q=)
 T1(R=Y%DF=Y%T=3B-45%TG=40%S=O%A=S+%F=AS%RD=0%Q=)
 T2(R=N)
 T3(R=Y%DF=Y%T=3B-45%TG=40%W=8018%S=O%A=S+%F=AS%O=M400C%RD=0%Q=)
 T4(R=Y%DF=Y%T=3B-45%TG=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)
 T5(R=Y%DF=Y%T=3B-45%TG=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)
 T6(R=Y%DF=Y%T=3B-45%TG=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)
 T7(R=Y%DF=Y%T=3B-45%TG=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)
 U1(DF=N%T=3B-45%TG=40%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUD=G)
 IE(DFI=N%T=3B-45%TG=40%CD=S)
Destacaremos:                                                          Aunque	
  hay	
  muchas	
  más:
       §	
  TCP	
  ISN	
  greatest	
  common	
  divisor	
  (GDC)               §	
  TCP	
  ISN	
  counter	
  rate	
  (ISR)
       §	
  TCP	
  IP	
  ID	
  sequence	
  genera,on	
  alg	
  (TI)            §	
  ICMP	
  IP	
  ID	
  sequence	
  genera,on	
  alg	
  (II)
       §	
  TCP	
  ,mestamp	
  op,on	
  alg	
  (TS)                            §	
  Shared	
  IP	
  ID	
  sequence	
  Boolean	
  (SS)
       §	
  TCP	
  Op,ons	
  (O,	
  O1-­‐O6)                                   §	
  Don’t	
  Fragment	
  ICMP	
  (DFI)
       §	
  TCP	
  ini,al	
  Window	
  Size	
  (W,	
  W1-­‐W6)                 §	
  Explicit	
  conges,on	
  no,fica,on	
  (C)
       §	
  Responsiveness	
  (R)                                              §	
  TCP	
  miscellaneous	
  quirks	
  (Q)
       §	
  IP	
  don’t	
  fragment	
  bit	
  (DF)                             §	
  TCP	
  sequence	
  number	
  (S)
       §	
  IP	
  ini,al	
  ,me-­‐to-­‐live	
  guess	
  (TG)                   §	
  etc.                                            42
43
FUCK	
  YEAH!




                44
FUCK	
  YEAH!




                45
FORMAS	
  DE	
  PROTEGERSE
§	
  Existen	
  una	
  serie	
  de	
  herramientas	
  an,guas	
  que	
  permizan	
  defenderse	
  y	
  falsear	
  las	
  
respuestas	
  de	
  los	
  escaneos	
  de	
  la	
  herramienta	
  nmap.	
  Algunas	
  de	
  ellas	
  son:

       •	
  IP	
  Personality:	
  se	
  trata	
  de	
  un	
  módulo	
  de	
  necilter	
  solamente	
  disponible	
  para	
  la	
  
       versión	
  2.4	
  del	
  Kernel	
  de	
  Linux,	
  que	
  permite	
  variar	
  ciertos	
  parámetros	
  del	
  
       comportamiento	
  de	
  la	
  pila	
  TCP/IP	
  y	
  modificar	
  la	
  ‘personalidad’	
  de	
  nuestro	
  equipo.

       •	
  Stealth	
  Patch:	
  parche	
  disponible	
  para	
  el	
  kernel	
  2.2.x

       •	
  Fingerprint	
  Fucker:	
  módulo	
  de	
  kernel	
  para	
  versiones	
  2.2.x	
  que	
  permite	
  variar	
  el	
  
       comportamiento	
  de	
  las	
  respuestas	
  de	
  nuestro	
  equipo.	
  Se	
  trata	
  también	
  de	
  un	
  módulo	
  
       de	
  kernel.	
  Sólo	
  responde	
  a	
  ciertas	
  pruebas	
  an,guas	
  de	
  nmap	
  (T1,	
  T2	
  y	
  T7).

       •	
  IPLog:	
  es	
  un	
  logger	
  que	
  permite	
  detectar	
  escaneos	
  (XMAS,	
  FIN,	
  SYN…).	
  Permite	
  
       engañar	
  a	
  nmap	
  a	
  través	
  de	
  la	
  opción	
  ‘-­‐z’.

       •	
  Blackhole:	
  opción	
  existente	
  en	
  el	
  kernel	
  *BSD	
  que	
  permite	
  manejar	
  el	
  
       comportamiento	
  de	
  las	
  respuestas	
  del	
  equipo	
  cuando	
  alguien	
  se	
  conecta	
  a	
  puertos	
  
       TCP/UDP	
  cerrados.                                                                                                 46
47
48
p0f




	
  -­‐	
  Los	
  modos	
  p0f	
  nos	
  permite	
  para	
  realizar	
  el	
  análisis	
  del	
  sistema	
  opera,vo	
  son:
               §	
  SYN	
  Mode
               §	
  SYN+ACK	
  Mode
               §	
  RST+	
  Mode

	
  -­‐	
  Escaneo	
  pasivo
	
  -­‐	
  No	
  se	
  envía	
  tráfico	
  por	
  la	
  red
	
  -­‐	
  No	
  detectable

                                                                                                                               49
FORMATO	
  DE	
  FIRMAS
8192:32:1:48:M*,N,N,S:.:Windows:98
                                                                                                                         Sistema	
  Opera,vo
                                                                                                                         	
  	
  -­‐	
  Familia
                                                                                                                         	
  	
  -­‐	
  Versión

                                                             Tamaño                                         Quirks
                                                                                                            	
  	
  	
  -­‐	
  Datos	
  en	
  paquetes	
  SYN	
  
                                                                                                            	
  	
  	
  -­‐	
  Opciones	
  después	
  del	
  EOL
                                                                                                            	
  	
  	
  -­‐	
  Campo	
  IP	
  ID	
  a	
  cero
                                                 Bit	
  DF	
  (0/1)                                         	
  	
  	
  -­‐	
  ACK	
  dis,nto	
  de	
  cero
                                                                                                            	
  	
  	
  -­‐	
  Flags	
  no	
  habituales
                                  TTL	
  Inicial                                                            	
  	
  	
  -­‐	
  Decodificación	
  de	
  opciones	
  errónea

  Window	
  Size                                                         Opciones	
  TCP	
  y	
  con	
  su	
  orden
  	
  	
  	
  -­‐	
  *	
  Cualquier	
  valor                             	
  	
  	
  -­‐	
  N:	
  NOP
  	
  	
  	
  -­‐	
  %nnn	
  Valor	
  múl,plo	
  de	
  nnn               	
  	
  	
  -­‐	
  E:	
  EOL
  	
  	
  	
  -­‐	
  Sxx	
  Múl,plo	
  de	
  MSS                         	
  	
  	
  -­‐	
  Wnnn:	
  WS
  	
  	
  	
  -­‐	
  Txx	
  Múl,plo	
  de	
  MTU                         	
  	
  	
  -­‐	
  Mnnn:	
  MSS
  	
  	
  	
  -­‐	
  xxx	
  Valor	
  concreto                            	
  	
  	
  -­‐	
  S:	
  SACK
                                                                         	
  	
  	
  -­‐	
  T	
  /	
  T0:	
  Timestamp	
  	
  
                                                                         	
  	
  	
  -­‐	
  ?n
                                                                                                                                                                    50
SOURCEFIRE




                                                La	
  tecnología	
  Sourcefire	
  FireSight	
  está	
  
                                     incorporada	
  en	
  la	
  úl,ma	
  generación	
  de	
  sensores	
  
                                       de	
  	
  Sourcefire,	
  proporcionando	
  inteligencia	
  a	
  
                                          red	
  y	
  contexto,	
  a	
  través	
  de	
  un	
  motor	
  de	
  
                                      detección	
  inteligente	
  que	
  permite,	
  entre	
  otras	
  
                                        funciones,	
  obtener	
  información	
  del	
  sistema	
  
                                         opera,vo	
  de	
  las	
  máquinas	
  de	
  nuestra	
  red.
Fichero:	
  rna_fingerprints.oucile
                                                                                                       51
¿	
  PREGUNTAS	
  ?



                      52
Long	
  	
  story	
  	
  short:
         Gracias
 SYN ACK FIN



                                  53

Mais conteúdo relacionado

Mais procurados

Joaquín Moreno Garijo – Forense a bajo nivel en Mac OS X [Rooted CON 2014]
Joaquín Moreno Garijo – Forense a bajo nivel en Mac OS X [Rooted CON 2014]Joaquín Moreno Garijo – Forense a bajo nivel en Mac OS X [Rooted CON 2014]
Joaquín Moreno Garijo – Forense a bajo nivel en Mac OS X [Rooted CON 2014]RootedCON
 
Contrucción de Cortafuego (Firewall) con IPTABLES
Contrucción de Cortafuego (Firewall) con IPTABLESContrucción de Cortafuego (Firewall) con IPTABLES
Contrucción de Cortafuego (Firewall) con IPTABLESpablo
 
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]RootedCON
 
Tecnologías libres para túneles y VPNs
Tecnologías libres para túneles y VPNsTecnologías libres para túneles y VPNs
Tecnologías libres para túneles y VPNsRodolfo Pilas
 
SNMP males y beneficios en VoIP - Elastixcom Caracas 2016
SNMP males y beneficios en VoIP - Elastixcom Caracas 2016SNMP males y beneficios en VoIP - Elastixcom Caracas 2016
SNMP males y beneficios en VoIP - Elastixcom Caracas 2016Luis Sanchez
 
Seguridad Informatica (Live Cd)
Seguridad Informatica (Live Cd)Seguridad Informatica (Live Cd)
Seguridad Informatica (Live Cd)Manuel Mujica
 

Mais procurados (12)

Almacenamiento En OpenSolaris
Almacenamiento En OpenSolarisAlmacenamiento En OpenSolaris
Almacenamiento En OpenSolaris
 
Joaquín Moreno Garijo – Forense a bajo nivel en Mac OS X [Rooted CON 2014]
Joaquín Moreno Garijo – Forense a bajo nivel en Mac OS X [Rooted CON 2014]Joaquín Moreno Garijo – Forense a bajo nivel en Mac OS X [Rooted CON 2014]
Joaquín Moreno Garijo – Forense a bajo nivel en Mac OS X [Rooted CON 2014]
 
ARSO-M7: Article Snort
ARSO-M7: Article SnortARSO-M7: Article Snort
ARSO-M7: Article Snort
 
Contrucción de Cortafuego (Firewall) con IPTABLES
Contrucción de Cortafuego (Firewall) con IPTABLESContrucción de Cortafuego (Firewall) con IPTABLES
Contrucción de Cortafuego (Firewall) con IPTABLES
 
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
 
Pfsense
PfsensePfsense
Pfsense
 
Instalacion de pf sense
Instalacion de pf senseInstalacion de pf sense
Instalacion de pf sense
 
Servidores
ServidoresServidores
Servidores
 
Tecnologías libres para túneles y VPNs
Tecnologías libres para túneles y VPNsTecnologías libres para túneles y VPNs
Tecnologías libres para túneles y VPNs
 
Iptables
IptablesIptables
Iptables
 
SNMP males y beneficios en VoIP - Elastixcom Caracas 2016
SNMP males y beneficios en VoIP - Elastixcom Caracas 2016SNMP males y beneficios en VoIP - Elastixcom Caracas 2016
SNMP males y beneficios en VoIP - Elastixcom Caracas 2016
 
Seguridad Informatica (Live Cd)
Seguridad Informatica (Live Cd)Seguridad Informatica (Live Cd)
Seguridad Informatica (Live Cd)
 

Destaque

David López - Hackers, encerrados en la viñeta [RootedCON 2010]
David López - Hackers, encerrados en la viñeta [RootedCON 2010]David López - Hackers, encerrados en la viñeta [RootedCON 2010]
David López - Hackers, encerrados en la viñeta [RootedCON 2010]RootedCON
 
Roberto Baratta – Monetización de seguridad: de más con menos a más con nada ...
Roberto Baratta – Monetización de seguridad: de más con menos a más con nada ...Roberto Baratta – Monetización de seguridad: de más con menos a más con nada ...
Roberto Baratta – Monetización de seguridad: de más con menos a más con nada ...RootedCON
 
Antonio Ramos - ¿Y si la seguridad afectara al valor contable de la empresa? ...
Antonio Ramos - ¿Y si la seguridad afectara al valor contable de la empresa? ...Antonio Ramos - ¿Y si la seguridad afectara al valor contable de la empresa? ...
Antonio Ramos - ¿Y si la seguridad afectara al valor contable de la empresa? ...RootedCON
 
Antonio Ramos – Agilidad. La vía a la seguridad [Rooted CON 2014]
Antonio Ramos – Agilidad. La vía a la seguridad [Rooted CON 2014]Antonio Ramos – Agilidad. La vía a la seguridad [Rooted CON 2014]
Antonio Ramos – Agilidad. La vía a la seguridad [Rooted CON 2014]RootedCON
 
Andrés Tarasco – Ataques dirigidos con APTs Wi-Fi [Rooted CON 2014]
Andrés Tarasco – Ataques dirigidos con APTs Wi-Fi [Rooted CON 2014]Andrés Tarasco – Ataques dirigidos con APTs Wi-Fi [Rooted CON 2014]
Andrés Tarasco – Ataques dirigidos con APTs Wi-Fi [Rooted CON 2014]RootedCON
 
José Luis Quintero & Felix Estrada - Ciberguerra. De Juegos de Guerra a La Ju...
José Luis Quintero & Felix Estrada - Ciberguerra. De Juegos de Guerra a La Ju...José Luis Quintero & Felix Estrada - Ciberguerra. De Juegos de Guerra a La Ju...
José Luis Quintero & Felix Estrada - Ciberguerra. De Juegos de Guerra a La Ju...RootedCON
 
Fermín J. Serna - Exploits & Mitigations: EMET [RootedCON 2010]
Fermín J. Serna - Exploits & Mitigations: EMET [RootedCON 2010]Fermín J. Serna - Exploits & Mitigations: EMET [RootedCON 2010]
Fermín J. Serna - Exploits & Mitigations: EMET [RootedCON 2010]RootedCON
 
Alejandro Ramos - Operación Triunfo Profesional [RootedCON 2010]
Alejandro Ramos - Operación Triunfo Profesional [RootedCON 2010]Alejandro Ramos - Operación Triunfo Profesional [RootedCON 2010]
Alejandro Ramos - Operación Triunfo Profesional [RootedCON 2010]RootedCON
 
{RootedPanel] Grupo de Hackers Históricos: Apòstols [RootedCON 2010]
{RootedPanel] Grupo de Hackers Históricos: Apòstols [RootedCON 2010]{RootedPanel] Grupo de Hackers Históricos: Apòstols [RootedCON 2010]
{RootedPanel] Grupo de Hackers Históricos: Apòstols [RootedCON 2010]RootedCON
 
Roberto Baratta - eFraude: ganar gestionando la derrota [Rooted CON 2013]
Roberto Baratta - eFraude: ganar gestionando la derrota [Rooted CON 2013]Roberto Baratta - eFraude: ganar gestionando la derrota [Rooted CON 2013]
Roberto Baratta - eFraude: ganar gestionando la derrota [Rooted CON 2013]RootedCON
 
David López Paz - Global Warfare [RootedCON 2011]
David López Paz - Global Warfare [RootedCON 2011]David López Paz - Global Warfare [RootedCON 2011]
David López Paz - Global Warfare [RootedCON 2011]RootedCON
 
Lorenzo Martínez - Cooking an APT in the paranoid way [RootedSatellite Valen...
Lorenzo Martínez  - Cooking an APT in the paranoid way [RootedSatellite Valen...Lorenzo Martínez  - Cooking an APT in the paranoid way [RootedSatellite Valen...
Lorenzo Martínez - Cooking an APT in the paranoid way [RootedSatellite Valen...RootedCON
 
Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]
Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]
Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]RootedCON
 
Jorge Bermúdez - Botnets y troyanos: los artículos 197 y 264 CP llevados a la...
Jorge Bermúdez - Botnets y troyanos: los artículos 197 y 264 CP llevados a la...Jorge Bermúdez - Botnets y troyanos: los artículos 197 y 264 CP llevados a la...
Jorge Bermúdez - Botnets y troyanos: los artículos 197 y 264 CP llevados a la...RootedCON
 
CCN-CERT - Servicio De Respuesta A Incidentes [RootedCON 2010]
CCN-CERT - Servicio De Respuesta A Incidentes [RootedCON 2010]CCN-CERT - Servicio De Respuesta A Incidentes [RootedCON 2010]
CCN-CERT - Servicio De Respuesta A Incidentes [RootedCON 2010]RootedCON
 
Layakk - Atacando 3G Vol. 2 [rootedvlc2]
Layakk - Atacando 3G Vol. 2 [rootedvlc2]Layakk - Atacando 3G Vol. 2 [rootedvlc2]
Layakk - Atacando 3G Vol. 2 [rootedvlc2]RootedCON
 
Blueliv - Information Tracking with Optos [Rooted CON 2011]
Blueliv - Information Tracking with Optos [Rooted CON 2011]Blueliv - Information Tracking with Optos [Rooted CON 2011]
Blueliv - Information Tracking with Optos [Rooted CON 2011]RootedCON
 

Destaque (17)

David López - Hackers, encerrados en la viñeta [RootedCON 2010]
David López - Hackers, encerrados en la viñeta [RootedCON 2010]David López - Hackers, encerrados en la viñeta [RootedCON 2010]
David López - Hackers, encerrados en la viñeta [RootedCON 2010]
 
Roberto Baratta – Monetización de seguridad: de más con menos a más con nada ...
Roberto Baratta – Monetización de seguridad: de más con menos a más con nada ...Roberto Baratta – Monetización de seguridad: de más con menos a más con nada ...
Roberto Baratta – Monetización de seguridad: de más con menos a más con nada ...
 
Antonio Ramos - ¿Y si la seguridad afectara al valor contable de la empresa? ...
Antonio Ramos - ¿Y si la seguridad afectara al valor contable de la empresa? ...Antonio Ramos - ¿Y si la seguridad afectara al valor contable de la empresa? ...
Antonio Ramos - ¿Y si la seguridad afectara al valor contable de la empresa? ...
 
Antonio Ramos – Agilidad. La vía a la seguridad [Rooted CON 2014]
Antonio Ramos – Agilidad. La vía a la seguridad [Rooted CON 2014]Antonio Ramos – Agilidad. La vía a la seguridad [Rooted CON 2014]
Antonio Ramos – Agilidad. La vía a la seguridad [Rooted CON 2014]
 
Andrés Tarasco – Ataques dirigidos con APTs Wi-Fi [Rooted CON 2014]
Andrés Tarasco – Ataques dirigidos con APTs Wi-Fi [Rooted CON 2014]Andrés Tarasco – Ataques dirigidos con APTs Wi-Fi [Rooted CON 2014]
Andrés Tarasco – Ataques dirigidos con APTs Wi-Fi [Rooted CON 2014]
 
José Luis Quintero & Felix Estrada - Ciberguerra. De Juegos de Guerra a La Ju...
José Luis Quintero & Felix Estrada - Ciberguerra. De Juegos de Guerra a La Ju...José Luis Quintero & Felix Estrada - Ciberguerra. De Juegos de Guerra a La Ju...
José Luis Quintero & Felix Estrada - Ciberguerra. De Juegos de Guerra a La Ju...
 
Fermín J. Serna - Exploits & Mitigations: EMET [RootedCON 2010]
Fermín J. Serna - Exploits & Mitigations: EMET [RootedCON 2010]Fermín J. Serna - Exploits & Mitigations: EMET [RootedCON 2010]
Fermín J. Serna - Exploits & Mitigations: EMET [RootedCON 2010]
 
Alejandro Ramos - Operación Triunfo Profesional [RootedCON 2010]
Alejandro Ramos - Operación Triunfo Profesional [RootedCON 2010]Alejandro Ramos - Operación Triunfo Profesional [RootedCON 2010]
Alejandro Ramos - Operación Triunfo Profesional [RootedCON 2010]
 
{RootedPanel] Grupo de Hackers Históricos: Apòstols [RootedCON 2010]
{RootedPanel] Grupo de Hackers Históricos: Apòstols [RootedCON 2010]{RootedPanel] Grupo de Hackers Históricos: Apòstols [RootedCON 2010]
{RootedPanel] Grupo de Hackers Históricos: Apòstols [RootedCON 2010]
 
Roberto Baratta - eFraude: ganar gestionando la derrota [Rooted CON 2013]
Roberto Baratta - eFraude: ganar gestionando la derrota [Rooted CON 2013]Roberto Baratta - eFraude: ganar gestionando la derrota [Rooted CON 2013]
Roberto Baratta - eFraude: ganar gestionando la derrota [Rooted CON 2013]
 
David López Paz - Global Warfare [RootedCON 2011]
David López Paz - Global Warfare [RootedCON 2011]David López Paz - Global Warfare [RootedCON 2011]
David López Paz - Global Warfare [RootedCON 2011]
 
Lorenzo Martínez - Cooking an APT in the paranoid way [RootedSatellite Valen...
Lorenzo Martínez  - Cooking an APT in the paranoid way [RootedSatellite Valen...Lorenzo Martínez  - Cooking an APT in the paranoid way [RootedSatellite Valen...
Lorenzo Martínez - Cooking an APT in the paranoid way [RootedSatellite Valen...
 
Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]
Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]
Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]
 
Jorge Bermúdez - Botnets y troyanos: los artículos 197 y 264 CP llevados a la...
Jorge Bermúdez - Botnets y troyanos: los artículos 197 y 264 CP llevados a la...Jorge Bermúdez - Botnets y troyanos: los artículos 197 y 264 CP llevados a la...
Jorge Bermúdez - Botnets y troyanos: los artículos 197 y 264 CP llevados a la...
 
CCN-CERT - Servicio De Respuesta A Incidentes [RootedCON 2010]
CCN-CERT - Servicio De Respuesta A Incidentes [RootedCON 2010]CCN-CERT - Servicio De Respuesta A Incidentes [RootedCON 2010]
CCN-CERT - Servicio De Respuesta A Incidentes [RootedCON 2010]
 
Layakk - Atacando 3G Vol. 2 [rootedvlc2]
Layakk - Atacando 3G Vol. 2 [rootedvlc2]Layakk - Atacando 3G Vol. 2 [rootedvlc2]
Layakk - Atacando 3G Vol. 2 [rootedvlc2]
 
Blueliv - Information Tracking with Optos [Rooted CON 2011]
Blueliv - Information Tracking with Optos [Rooted CON 2011]Blueliv - Information Tracking with Optos [Rooted CON 2011]
Blueliv - Information Tracking with Optos [Rooted CON 2011]
 

Semelhante a Jaime Sánchez - From kernel space to user heaven [Rooted CON 2013]

Semelhante a Jaime Sánchez - From kernel space to user heaven [Rooted CON 2013] (20)

From Kernel Space to User Heaven
From Kernel Space to User HeavenFrom Kernel Space to User Heaven
From Kernel Space to User Heaven
 
Implementacion de NAT - JUGM 2010
Implementacion de NAT - JUGM 2010Implementacion de NAT - JUGM 2010
Implementacion de NAT - JUGM 2010
 
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
 
Openvp non redhat
Openvp non redhatOpenvp non redhat
Openvp non redhat
 
Openvp non redhat
Openvp non redhatOpenvp non redhat
Openvp non redhat
 
COMO INSTALAR MySQL EN LINUX
COMO INSTALAR  MySQL EN LINUXCOMO INSTALAR  MySQL EN LINUX
COMO INSTALAR MySQL EN LINUX
 
Proyecto 7
Proyecto 7Proyecto 7
Proyecto 7
 
Apuntes iptables gerardo
Apuntes iptables gerardoApuntes iptables gerardo
Apuntes iptables gerardo
 
Linux Redes
Linux RedesLinux Redes
Linux Redes
 
Trabajo sistemas operativos de camilo pinzon
Trabajo sistemas operativos de camilo pinzonTrabajo sistemas operativos de camilo pinzon
Trabajo sistemas operativos de camilo pinzon
 
Seguridad en Open Solaris
Seguridad en Open SolarisSeguridad en Open Solaris
Seguridad en Open Solaris
 
Tarea migue[1]
Tarea migue[1]Tarea migue[1]
Tarea migue[1]
 
¿Qué es OpenSolaris?
¿Qué es OpenSolaris?¿Qué es OpenSolaris?
¿Qué es OpenSolaris?
 
Informe linux
Informe linuxInforme linux
Informe linux
 
Sistemas operativos
Sistemas  operativosSistemas  operativos
Sistemas operativos
 
Vpn
VpnVpn
Vpn
 
Controles de acceso iniciales
Controles de acceso inicialesControles de acceso iniciales
Controles de acceso iniciales
 
Unidad III: Seguridad de las Redes
Unidad III: Seguridad de las RedesUnidad III: Seguridad de las Redes
Unidad III: Seguridad de las Redes
 
Enrutadores
EnrutadoresEnrutadores
Enrutadores
 
Seguridad
SeguridadSeguridad
Seguridad
 

Mais de RootedCON

Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro VillaverdeRooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro VillaverdeRootedCON
 
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...RootedCON
 
Rooted2020 hunting malware-using_process_behavior-roberto_amado
Rooted2020 hunting malware-using_process_behavior-roberto_amadoRooted2020 hunting malware-using_process_behavior-roberto_amado
Rooted2020 hunting malware-using_process_behavior-roberto_amadoRootedCON
 
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_RootedCON
 
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...RootedCON
 
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...RootedCON
 
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...RootedCON
 
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguerRooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguerRootedCON
 
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...RootedCON
 
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemy
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemyRooted2020 stefano maccaglia--_the_enemy_of_my_enemy
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemyRootedCON
 
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...RootedCON
 
Rooted2020 virtual pwned-network_-_manel_molina
Rooted2020 virtual pwned-network_-_manel_molinaRooted2020 virtual pwned-network_-_manel_molina
Rooted2020 virtual pwned-network_-_manel_molinaRootedCON
 
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...RootedCON
 
Rooted2020 todo a-siem_-_marta_lopez
Rooted2020 todo a-siem_-_marta_lopezRooted2020 todo a-siem_-_marta_lopez
Rooted2020 todo a-siem_-_marta_lopezRootedCON
 
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valeroRooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valeroRootedCON
 
Rooted2020 live coding--_jesus_jara
Rooted2020 live coding--_jesus_jaraRooted2020 live coding--_jesus_jara
Rooted2020 live coding--_jesus_jaraRootedCON
 
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...RootedCON
 
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...RootedCON
 
Rooted2020 evading deep-learning_malware_detectors_-_javier_yuste
Rooted2020 evading deep-learning_malware_detectors_-_javier_yusteRooted2020 evading deep-learning_malware_detectors_-_javier_yuste
Rooted2020 evading deep-learning_malware_detectors_-_javier_yusteRootedCON
 
Rooted2020 encontrando 0days-en_2020_-_antonio_morales
Rooted2020 encontrando 0days-en_2020_-_antonio_moralesRooted2020 encontrando 0days-en_2020_-_antonio_morales
Rooted2020 encontrando 0days-en_2020_-_antonio_moralesRootedCON
 

Mais de RootedCON (20)

Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro VillaverdeRooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
 
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
 
Rooted2020 hunting malware-using_process_behavior-roberto_amado
Rooted2020 hunting malware-using_process_behavior-roberto_amadoRooted2020 hunting malware-using_process_behavior-roberto_amado
Rooted2020 hunting malware-using_process_behavior-roberto_amado
 
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
 
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
 
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
 
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
 
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguerRooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
 
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
 
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemy
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemyRooted2020 stefano maccaglia--_the_enemy_of_my_enemy
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemy
 
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
 
Rooted2020 virtual pwned-network_-_manel_molina
Rooted2020 virtual pwned-network_-_manel_molinaRooted2020 virtual pwned-network_-_manel_molina
Rooted2020 virtual pwned-network_-_manel_molina
 
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
 
Rooted2020 todo a-siem_-_marta_lopez
Rooted2020 todo a-siem_-_marta_lopezRooted2020 todo a-siem_-_marta_lopez
Rooted2020 todo a-siem_-_marta_lopez
 
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valeroRooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
 
Rooted2020 live coding--_jesus_jara
Rooted2020 live coding--_jesus_jaraRooted2020 live coding--_jesus_jara
Rooted2020 live coding--_jesus_jara
 
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
 
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
 
Rooted2020 evading deep-learning_malware_detectors_-_javier_yuste
Rooted2020 evading deep-learning_malware_detectors_-_javier_yusteRooted2020 evading deep-learning_malware_detectors_-_javier_yuste
Rooted2020 evading deep-learning_malware_detectors_-_javier_yuste
 
Rooted2020 encontrando 0days-en_2020_-_antonio_morales
Rooted2020 encontrando 0days-en_2020_-_antonio_moralesRooted2020 encontrando 0days-en_2020_-_antonio_morales
Rooted2020 encontrando 0days-en_2020_-_antonio_morales
 

Jaime Sánchez - From kernel space to user heaven [Rooted CON 2013]

  • 1. From Kernel Sp ce To User Heaven Jaime  Sánchez   @segofensiva
  • 2. WHO  AM  I §  Ingeniero  Informá,ca  de  Sistemas  y  Execu,ve  MBA §  Soy  un  apasionado  de  la  seguridad  informá,ca,  con  más  de   10  años  de  experiencia  profesional. §  Comencé,  como  muchos  otros,  en  la  edad  de  oro  del  Phreak   español §  Mi  alma  sigue  siendo  Old  School,  aunque  desconozco   cuando  la  vendí  para  trabajar  en  Seguridad  Copora,va  ;) §  Estoy  tratando  de  retomar  mis  andaduras,  con  el  inicio  de   un  nuevo  blog  www.seguridadofensiva.com §  Contacto:  jsanchez@seguridadofensiva.com 2
  • 3. §  Trabajo  actualmente  en  un  SOC  (Security  Opera,ons  Center) 3
  • 4.
  • 5. §  Evolución  de  los  ataques  informá,cos  durante  el  2012 §  Incremento  del  Espionaje  Industrial,  HackBvismo  y  Ciberguerra §  Ataques  a  grandes  empresas  como  Facebook,  Apple,  TwiHer,  New  York  Times §  Intereses  económicos  y  polí,cos,  como  APT1,  Stuxnet  etc. 5
  • 6. METODOLOGÍA  DE RECONOCIMIENTO UNA  INTRUSIÓN EXPLORACIÓN COMPROMISO DEL  SISTEMA MANTENIMIENTO DEL  ACCESO BORRADO  DE  HUELLAS 6
  • 8. ARQUITECTURA §  Diferentes  nivels  de  acceso  a  recursos Ring  3 §  Forzado  por  hardware  en  la  CPU,  ofreciendo   Ring  2 diferentes  modos  a  nivel  de  hardware  o   Ring  1 microcódigo Ring  0 §  Organización  en  una  jerarquía  de  más   Kernel privilegiado  (ring0)  a  menos  privilegiado  (número   de  anillo  más  alto) DisposiBvos §  El  anillo  0  es  el  nivel  con  la  mayoría  de  los   DisposiBvos privilegios  e  interactua  directamente  con  el   Aplicaciones hardware  ^sico,  como  la  CPU  y  memoria §  El  anillo  0  posee  el  nivel  más  bajo  de  protección,   se  espera  que  nunca  se  cuelgue.  En  ese  caso,  todo   Más Menos Privilegiado Privilegiado el  sistema  caerá  con  él. 8
  • 9. KERNEL  vs  USER  SPACE v KERNEL  SPACE:  área  protegida  donde  el  kernel  ejecuta  y  presta   sus  servicios:   *  Creación  de  procesos,  asignación  de  ,empos  de   atención  y  sincronización   *  Asignación  de  la  atención  de  la  CPU  a  los  procesos  que  lo   requieran   *  Administración  del  espacio  en  el  sistema  de  archivos:   acceso,  protección,  comunicación,  E/S  y  periféricos.   *  Ges,ón  del  hardware:  memoria,  procesasor  y  formas  de   almacenamiento v      USER  SPACE:  espacio  reservado  para  aplicaciones  del  usuario:   *  Cada  proceso  normalmente  ejecuta  su  memoria  virtual,   y  a  menos  que  se  solicite  de  forma  explícita,  no  se  puede  acceder  a   la  memoria  de  otros  procesos.   *  Comienza  cuando  el  kernel  monta  roocs.  El  primer   programa  en  ser  ejecutado  por  defecto  es  /sbin/init 9
  • 11. KERNEL  vs  USER  SPACE Applica,on  Code Your  Program User  Space C  Library System  Interface Linux  Kernel Generic  Services Kernel  Space Device  Drivers Hardware 11
  • 12. How i your met packet 12
  • 13. 13
  • 14. 14
  • 15. IPTables §  Necilter  permite  interceptar  y  manipular  paquetes  de  red,  permi,endo  el   manejo  en  diferentes  estados  de  procesamiento. §  El  componente  más  popular  construído  sobre  Necilter  es  iptables,  una   herramienta  de  firewall  que  permite: •  Filtrar  paquetes •  Realizar  traducciones  de  direcciones  de  red  (NAT) •  Mantener  registros  de  LOG •  Soporte  para  IPv4  e  IPv6 •  Stateless  /  Statefull  packet  filtering §  El  nombre  de  iptables  se  u,liza  de  forma  errónea  para  referirse  a  toda  la   infraestructura  ofrecida  por  el  proyecto  Necilter. §  El  proyecto  ofrece  otros  subsistemas  independientes  de  iptables,  tales  como   el  connec,on  tracking  system,  que  permite  encolar  paquetes  para  que  sean   tratados  desde  el  espacio  de  usuario. 15
  • 16. FUNCIONAMIENTO §  Sencillez  para  la  escritura  de  reglas §  Sencillez  para  crear  nuevas  reglas,  con  frases  básicas  del  ,po: 1.  "Quiero  autorizar  el  acceso    a  mi  servidor  web  a  través  de  mi  firewall" 2.  "Quiero  autorizar  a  los  usuarios  de  la  LAN  a  conectarse  a  la  web  a  través  de  mi   firewall" 3.  "Acepto  que  gente  pueda  conectarse  al  servidor  ssh  a  través  firewall". 4.  "Quiero  que  desde  mi  firewall  se  permita  hacer  ping  a  todo  Internet." §  Así  que  una  manera  sencilla  de  clasificar  los  paquetes  que  ges,ona  un  servidor  de   seguridad  se  va  a  dividir  el  flujo  en  tres  partes: 1.  paquetes  dirigidos  al  servidor  de  seguridad  (tercer  caso) 2.  paquetes  que  pasan  por  el  firewall  (los  casos  primero  y  segundo) 3.  paquetes  emi,dos  por  el  servidor  (cuarto  caso) §   §Hay  tres  cadenas  básicas: •  INPUT:  entrada •  OUTPUT:  salida •  FORWARD:  reenvío 16
  • 17. FUNCIONAMIENTO §  Para  los  paquetes  salientes  que  tenemos  dos  cadenas: •  Paquetes  que  llegan  desde  el  firewall:  la  cadena  OUTPUT •  Paquetes  que  pasan  por  el  firewall:  la  cadena  FORWARD §  Existe  tres  tablas  incorporadas,  cada  una  de  las  cuales  ,ene  cadenas  predefinidas: •  filter  table:  responsable  del  filtrado.  Todos  los  paquetes  pasan  a  través  de  la   tabla  de  filtros.  Con,ene  las  siguientes  cadenas  predefinidas:     INPUT  /  OUTPUT  /  FORWARD •  net  table:  responsable  de  configurar  las  reglas  de  reescritura  de  direcciones  o  de   puertos  de  los  paquetes.  El  primer  paquete  en  cualquier  conexión  pasa  por  esta   tabla:     PREROUTING  /  POSTROUTING  /  OUTPUT •  mangle  table:  responsable  de  ajustar  las  opciones  de  los  paquetes.  Todos  los   paquetes  pasan  por  esta  tabla.  Con,ene  todas  las  cadenas  predefinidas  posibles:     PREROUTING  /  INPUT  /  FORWARD  /  OUTPUT  /  POSTROUTING 17
  • 18. DESTINOS  DE  REGLAS §  Existen  los  siguientes  des,nos  ya  incorporados: •  ACCEPT:  necilter  acepta  el  paquete •  DROP:  necilter  descarta  el  paquete  sin  ningún  otro  ,po   de  procesamiento •  QUEUE:  este  des,no  hace  que  el  paquete  sea  enviado  a   IMPORTANTE una  cola  en  el  espacio  de  usuario.  Una  aplicación  puede   usar  la  biblioteca  libipq  (parte  del  proyecto  necilter)  para   alterar  el  paquete.  Si  no  existe  ninguna  aplicación  que  lea   la  cola,  este  des,no  equivale  a  DROP. •  RETURN:  el  paquete  deja  de  circular  por  la  cadena  en  cuya  regla  se  ejecutó  el  des,no   RETURN. §  Otras  extensiones: •  REJECT:  mismo  efecto  que  DROP,  pero  envía  un  mensaje  de  error  a  quien  lo  envió   originalmente:  tcp-­‐reset  para  conexiones  tcp  denegadas,  icmp-­‐port-­‐unreachable  para   sesiones  UDP  denegadas  etc. •  LOG  /  ULOG:  log  de  los  paquetes  o  mul,difusión  a  un  socket •  DNAT  /  SNAT:  reescritura  de  des,no/origen  para  traducción  NAT •  MASQUERADE:  forma  especial  de  SNAT  para  direcciones  IP  dinámicas 18
  • 19. 13
  • 20. NFQUEUE §  NFQUEUE  permite  delegar  la  decisión  de  los  paquetes  en  el  espacio  de  usuario §  Es  necesario  disponer  de  un  sosware  que  esté  a  la  escucha  en  la  cola  que  queramos   u,lizar,  que  obtenenga  los  paquetes  del  kernel  y  devuelva  un  veredicto  con  cada  uno §  La  cola  es  una  lista  enlazada,  cuyos  elementos  son  el  paquete  y  metadatos,  que  posee   las  siguientes  caracterís,cas: §  Longitud  Fija §  Los  elementos  se  almacenan  e  indexan  con  un  entero §  Un  paquete  es  liberado  cuando  se  devuelve  el  veredicto  desde  el  espacio  de   usuario  a  un  determinado  índice §  Cuando  la  cola  se  llena,  no  es  posible  encolar  más  paquetes §  Implicaciones: §  Podemos  devolver  los  veredictos  en  el  orden  que  queramos §  Es  posible  leer  múl,ples  pauqetes  antes  de  devolver  el  veredicto.  Si  devolvemos   los  veredictos  de  forma  lenta,  la  cola  se  llenará  y  el  comenzaremos  a  ,rar  los   paquetes  nuevos  que  lleguen  a  nosotros 20
  • 21. EJEMPLOS 21
  • 24. Block  DNS  Tunneling Fake  Traceroute SSH  Fake  Source 24
  • 25. FAKE  SSH  SOURCE Atacante $  _ Router www.rootedcon.es Servidor  SSH -­‐  Ocultaremos    nuestra  direción  IP  de  origen  y  podremos  modificarla  con  cualquier  otro   valor  que  necesitemos  en  nuestra  máquina  comprome,da  Servidor  SSH.   -­‐  Ú,l  para  saltarte  filtros  o  para  no  llamar  la  atención  del  administrador. 25
  • 26. PORT  KNOCKING El  Port  Knocking  es  una  técnica  para  establecer  una  conexión  a  un  ordenador  de  la  red   que  no  ,ene  puertos  abiertos. Imágenes:  www.portknocking.com Antes  de  que  una  conexión  se  establezca,  los  puertos  se  abren  mediante  una  secuencia,   que  es  una  serie  de  intentos  de  conexión  para  puertos  cerrados. 26
  • 27. BLACK  OPS  OF  DNS §  El  DNS  Tunneling  permite  crear  un  tunel  IP  sobre  el  protocolo  DNS,  para  conseguir  salir  a   Internet  en  un  entorno  donde  al  unico  servicio  que  podemos  acceder  es  un  DNS  que  nos   resuelve  direcciones  de  Internet. §  Dos  formas  de  encapsular  datos  en  DNS: §  Base64  para  registros  TXT  (~220  bytes/paquete) §  Base32  para  registros  CNAME  (~110  bytes/paquete) 27
  • 30. Técnicas  de  detección  de  Sistema  opera,vo Pasivo Ac,vo Análisis  de  Tráfico Captura Pe,ciones  TCP/IP 30
  • 31. 31
  • 32. 32
  • 34. §  Aunque  cada  día  es  más  sencillo  buscar  un  target  con  una  versión  específica. 34
  • 35. NMAP §  Nos  centraremos  en  el  resultado  interesante  para  el  reconocimiento  remoto  del  sistema   opera,vo,  como:   -­‐  Device  Type       -­‐  Network  Distance   -­‐  Running         -­‐  TCP  Sequence  Predic,on   -­‐  OS  Details       -­‐  IP  ID  Sequence  Genera,on   -­‐  Up,me  Guess 35
  • 36. 36
  • 37. 37
  • 38. 38
  • 39. MÉTODOS  UTILIZADOS  POR  NMAP §  El  método  u,lizado  por  nmap  envía  15  pruebas  TCP,  UDP  e  ICMP,  tanto  a  puertos   abiertos  del  sistema,  como  a  cerrados.  Estas  pruebas  están  especialmente  diseñadas  para   explorar  ambigüedades  respecto  a  los  estándares  del  RFC  y  escucha  las  respuestas. §  SEQUENCE  GENERATION  (SEQ,  OPS,  WIN  y  T1):  se  envían  6  pruebas  TCP  a  un  puerto  que   haya  comprobado  que  esté  abierto.  Estos  paquetes  varían  en  las  opciones  TCP  y  el  valor  de   ventana: §  Paquete  1:  WS(10),NOP,MSS(1460),TS(Tval:0xFFFFFFFF.  Tsecr:0),  SACK  y  W(1) §  Paquete  2:  MSS(1400),  WS(0),SACK,  TS(Tval:0xFFFFFFFF.  Tsecr:0),EOL  y  W(63) §  Paquete  3:  TS(Tval:0xFFFFFFFF.  Tsecr:0),NOP,NOP,WS(5),NOP,MSS(640)  y  W(4) §  Paquete  4:  SACK,  TS(Tval:0xFFFFFFFF.  Tsecr:0),WS(10),EOL  y  W(4) §  Paquete  5:  MSS(536),SACK,  TS(Tval:0xFFFFFFFF.  Tsecr:0),  WS(10),EOL  y  W(16) §  Paquete  6:  MSS(265),SACK,  TS(Tval:0xFFFFFFFF.  Tsecr:0)  y  W(512) §  ICMP  ECHO  (IE):  se  realiza  el  envío  de  dos  paquetes  ICMP  ECHO. §  TCP  explicit  congesBon  noBficaBon  (ECN):  Se  realiza  el  envío  a  un  puerto  abierto,  con  los   flags  ECN  CWN  y  ECE  ac,vados,  WS(10),  NOP,  MSS(1460),SACK,NOP,NOP  y  W3) 39
  • 40. §  TCP  T2-­‐T7:  cada  prueba  se  genera  realizando  el  envío  de  un  paquete  TCP.  Salvo  uno  de   ellos,  las  opciones  en  este  caso  corresponden  a  WS(10),  NOP,  MSS(265),  TS  (Tval:   0xFFFFFFFF,  Tsecr:0). §  T2:  sin  flags,  IP  DF  y  W(128)  a  un  puerto  abierto §  T3:  SYN,  FIN,  URG,  PSH  y  W(256)  a  un  puerto  abierto §  T4:  ACK  con  IP  DF  y  W(1024)  a  un  puerto  abierto §  T5:  SYN  con  W(31337)  a  un  puerto  cerrado §  T6:  ACK  con  IP  DF  y  W(32768)  a  un  puerto  cerrado §  T7:  FIN,  PSH,  URG  con  W(65535)  a  un  puerto  cerrado §  UDP:  se  trata  de  un  paquete  UDP  enviado  a  un  puerto  cerrado.  El  payload  del  paquete   consisten  en  el  carácter  ‘C’  (0x43)  repeBdo  300  veces.  Si  el  puerto  está  cerrado  y  no  hay   un  firewall  entre  medias,  se  espera  recibir  un  paquete  ICMP  port  unreachable  de   respuesta. 40
  • 41. §  Lanzamos  el  nmap  para  detectar  sistema  opera,vo  con  la  opción  –packet-­‐trace: §  Comprobamos  si  somos  capaz  de  detectar  el  escaneo: 41
  • 42. ANÁLISIS  DE  LAS  RESPUESTAS Fingerprint Linux 2.6.17 - 2.6.24 Class Linux | Linux | 2.6.X | general purpose SEQ(SP=A5-D5%GCD=1-6%ISR=A7-D7%TI=Z%II=I%TS=U) OPS(O1=M400C%O2=M400C%O3=M400C%O4=M400C%O5=M400C%O6=M400C) WIN(W1=8018%W2=8018%W3=8018%W4=8018%W5=8018%W6=8018) ECN(R=Y%DF=Y%T=3B-45%TG=40%W=8018%O=M400C%CC=N%Q=) T1(R=Y%DF=Y%T=3B-45%TG=40%S=O%A=S+%F=AS%RD=0%Q=) T2(R=N) T3(R=Y%DF=Y%T=3B-45%TG=40%W=8018%S=O%A=S+%F=AS%O=M400C%RD=0%Q=) T4(R=Y%DF=Y%T=3B-45%TG=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=) T5(R=Y%DF=Y%T=3B-45%TG=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=) T6(R=Y%DF=Y%T=3B-45%TG=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=) T7(R=Y%DF=Y%T=3B-45%TG=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=) U1(DF=N%T=3B-45%TG=40%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUD=G) IE(DFI=N%T=3B-45%TG=40%CD=S) Destacaremos: Aunque  hay  muchas  más: §  TCP  ISN  greatest  common  divisor  (GDC) §  TCP  ISN  counter  rate  (ISR) §  TCP  IP  ID  sequence  genera,on  alg  (TI) §  ICMP  IP  ID  sequence  genera,on  alg  (II) §  TCP  ,mestamp  op,on  alg  (TS) §  Shared  IP  ID  sequence  Boolean  (SS) §  TCP  Op,ons  (O,  O1-­‐O6) §  Don’t  Fragment  ICMP  (DFI) §  TCP  ini,al  Window  Size  (W,  W1-­‐W6) §  Explicit  conges,on  no,fica,on  (C) §  Responsiveness  (R) §  TCP  miscellaneous  quirks  (Q) §  IP  don’t  fragment  bit  (DF) §  TCP  sequence  number  (S) §  IP  ini,al  ,me-­‐to-­‐live  guess  (TG) §  etc. 42
  • 43. 43
  • 46. FORMAS  DE  PROTEGERSE §  Existen  una  serie  de  herramientas  an,guas  que  permizan  defenderse  y  falsear  las   respuestas  de  los  escaneos  de  la  herramienta  nmap.  Algunas  de  ellas  son: •  IP  Personality:  se  trata  de  un  módulo  de  necilter  solamente  disponible  para  la   versión  2.4  del  Kernel  de  Linux,  que  permite  variar  ciertos  parámetros  del   comportamiento  de  la  pila  TCP/IP  y  modificar  la  ‘personalidad’  de  nuestro  equipo. •  Stealth  Patch:  parche  disponible  para  el  kernel  2.2.x •  Fingerprint  Fucker:  módulo  de  kernel  para  versiones  2.2.x  que  permite  variar  el   comportamiento  de  las  respuestas  de  nuestro  equipo.  Se  trata  también  de  un  módulo   de  kernel.  Sólo  responde  a  ciertas  pruebas  an,guas  de  nmap  (T1,  T2  y  T7). •  IPLog:  es  un  logger  que  permite  detectar  escaneos  (XMAS,  FIN,  SYN…).  Permite   engañar  a  nmap  a  través  de  la  opción  ‘-­‐z’. •  Blackhole:  opción  existente  en  el  kernel  *BSD  que  permite  manejar  el   comportamiento  de  las  respuestas  del  equipo  cuando  alguien  se  conecta  a  puertos   TCP/UDP  cerrados. 46
  • 47. 47
  • 48. 48
  • 49. p0f  -­‐  Los  modos  p0f  nos  permite  para  realizar  el  análisis  del  sistema  opera,vo  son: §  SYN  Mode §  SYN+ACK  Mode §  RST+  Mode  -­‐  Escaneo  pasivo  -­‐  No  se  envía  tráfico  por  la  red  -­‐  No  detectable 49
  • 50. FORMATO  DE  FIRMAS 8192:32:1:48:M*,N,N,S:.:Windows:98 Sistema  Opera,vo    -­‐  Familia    -­‐  Versión Tamaño Quirks      -­‐  Datos  en  paquetes  SYN        -­‐  Opciones  después  del  EOL      -­‐  Campo  IP  ID  a  cero Bit  DF  (0/1)      -­‐  ACK  dis,nto  de  cero      -­‐  Flags  no  habituales TTL  Inicial      -­‐  Decodificación  de  opciones  errónea Window  Size Opciones  TCP  y  con  su  orden      -­‐  *  Cualquier  valor      -­‐  N:  NOP      -­‐  %nnn  Valor  múl,plo  de  nnn      -­‐  E:  EOL      -­‐  Sxx  Múl,plo  de  MSS      -­‐  Wnnn:  WS      -­‐  Txx  Múl,plo  de  MTU      -­‐  Mnnn:  MSS      -­‐  xxx  Valor  concreto      -­‐  S:  SACK      -­‐  T  /  T0:  Timestamp          -­‐  ?n 50
  • 51. SOURCEFIRE La  tecnología  Sourcefire  FireSight  está   incorporada  en  la  úl,ma  generación  de  sensores   de    Sourcefire,  proporcionando  inteligencia  a   red  y  contexto,  a  través  de  un  motor  de   detección  inteligente  que  permite,  entre  otras   funciones,  obtener  información  del  sistema   opera,vo  de  las  máquinas  de  nuestra  red. Fichero:  rna_fingerprints.oucile 51
  • 53. Long    story    short: Gracias SYN ACK FIN 53