Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]

2,378 views
2,178 views

Published on

Desde hace tiempo se ha tendido a criminalizar algunas actividades relacionadas con el mundo de la seguridad informática creando nuevas leyes o endureciendo las existentes con el fin de ampliar el control sobre las comunicaciones y los usuarios.

Teniendo en cuenta esta situación que ha sido agravada por las actuaciones de determinados colectivos; algunas practicas de la seguridad informática que antes podían justificarse como pura “”curiosidad”" se han convertido en un delito y pueden terminar en situaciones desagradables.

La charla tratara sobre los métodos que podemos utilizar para evitar que nuestra curiosidad se vuelva contra nosotros y terminemos recibiendo alguna visita “”non grata”". Mostraremos técnicas para conseguir anonimato en Internet y evitar ser trazados, como utilizar “”otros”" sistemas sin que nadie se percate de nuestra presencia, etc… En resumen: como se podría “”curiosear”" sin terminar enjaulado. Todo esto se demostrara utilizando herramientas propias, parte de las cuales serán liberadas al público tras finalizar la conferencia.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,378
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Jaime Peñalba y Javier Rodríguez - Live Free or Die Hacking [RootedCON 2012]

  1. 1. Live Free or Die HackingJaime Peñalba Estébanez @Nighterman Javier Rodríguez @Javiover
  2. 2. Introducción 2
  3. 3. Criminalización del hacking● Reformas en el código penal● Herramientas y exploits “ilegales“● Si usas cifrado eres un terrorista● Problemas tras reportar un fallo● Mayor repercusión mediática● Aumento de la ciberdelincuencia● #fueunhacker
  4. 4. Lo estas haciendo mal...
  5. 5. Lo estas haciendo mal si...● Estas revelando o vendiendo secretos● Estas violando privacidad de los usuarios● Estas sacando algún beneficio económico● No sabes lo que estas haciendo
  6. 6. Sentido común 0 – Potato 1● Utilizas tu dirección IP● Usas la wifi de un sitio publico con cámaras● Usas el wifi de un comercio y pagas con tarjeta de crédito● Utilizas tu cuenta para entrar● No cifras tus conexiones ni tus datos
  7. 7. Requisitos para “curiosear”● Materia prima (Hookle)● Anonimato (tor, ashell, proxys, etc...)● Ocultarse en los sistemas (lsnake)● Poderes de supervaca
  8. 8. Preload Hooking
  9. 9. Pivotar ashell +Tostadores 9
  10. 10. ¿Dispositivos embebidos?● Son objetivos fáciles de explotar● Instalaciones homogéneas● Muchas veces trabajan sobre RAM● Dificultad para realizar análisis forense 10
  11. 11. Pivotar por videos● Kernels 2.6.x● Procesadores ARM, MIPS● 64/128/256Mb RAM● Glibc 2.3.90
  12. 12. Pivotar por routers● Kernels 2.4.x y 2.6.x● Procesadores ARM, MIPSEL, MIPSBE● 32/48/64Mb RAM● uClibc 0.9.27● /var/ == tmpfs
  13. 13. Pivotar por routers
  14. 14. Pivotar por RSC, SSP, RACSun Fire V20z y V40z System Service Processor● Linux Kernel 2.4.18● CPU PPC 64Mhz● 64Mb RAM● Glibc 2.2.3
  15. 15. Pivotar por estaciones GPS● Linux RTOS (Montavista)● Kernels 2.2.x y 2.4.x● CPU PPC 64Mhz● 64Mb RAM● Glibc 2.2.3
  16. 16. Pivotar por estaciones GPS
  17. 17. Pivotar por estaciones GPS
  18. 18. Distribución de Ficheros● Almacenamiento en RAM● Upload via PJL (Printer Job Language)● Download via PJL o HTTP
  19. 19. Distribución de FicherosMas de 38.000 Impresoras en todo el mundo 19
  20. 20. Requisitos● Cross Compilers de todos los colores● Emuladores / Dispositivos para probar● Paciencia, mucha paciencia...● Poderes de super vaca 20
  21. 21. ashell
  22. 22. ashell
  23. 23. Ashell: Funcionamiento
  24. 24. Rootkitlsnake 24
  25. 25. User Space VS Kernel● Multiplataforma● Mayor flexibilidad (standalone, full, netonly)● Menos cambios que en el API de kernel● Mayor persistencia tras actualizar el S.O.● Uso de librerías de user space (OpenSSL) 25
  26. 26. User Space VS Kernel● Mayor exposición a ser descubierto● Dificultad para encontrar un punto de inyección en todos los procesos por S.O.● Hay que comunicar los procesos● Binarios estáticos● Mayor “sobrecarga” del sistema● Dolores de cabeza 26
  27. 27. Instalación● Linux ● /etc/ld.so.preload● Solaris ● crle -E LD_PRELOAD=/lib/secure/libsn.so 27
  28. 28. Funcionalidades de Sistema● Ocultar procesos● Ocultar ficheros● Ocultar conexiones● Garantizar acceso remoto● Garantizar privilegios de root (local) 28
  29. 29. Funcionalidades de Red● Conexiones cifradas● Autenticación X.509● Shell remota● Proxy Socks4● Port Forwarding● Conexión a través de servicios existentes (ssh, apache, mysql, etc...) 29
  30. 30. Opciones de despliegue● Completo (Librería)● Networking (Librería) ● Multiplataforma. ● Se instala sobre un solo servicio ● Shell, Socks4 y Port Forward● Standalone (Demonio) ● Proceso independiente ● Shell, Socks4 y Port Forward 30
  31. 31. Identificar al owner● GID (grupo de sistema) = XXXX● Variables de entorno. VARIABLE=PASS● Remoto: Puerto origen entre XXXX y XXXX● Remoto: Certificado 31
  32. 32. Ocultar procesos / ficherosstat() __xstat() access()stat64() __xstat64() chdir()lstat() __lxstat() closedir()lstat64() __lxstat64() fopen()fstat() __fxstat() fopen64()fstat64() __fxstat64() open() open64() readdir() readdir64() opendir() 32
  33. 33. Ocultar procesos / ficheros 33
  34. 34. Ocultar procesos / ficheros
  35. 35. Elevación de privilegios 35
  36. 36. Elevación de privilegios
  37. 37. Acceso remoto
  38. 38. Acceso remoto
  39. 39. Acceso remoto
  40. 40. Ocultar conexiones● Uso de System V IPC● Hook socket() y accept() ● Agregamos el inodo a shared memory● Hook close() ● Eliminamos el inodo de shared memory● Hook fopen() ● /proc/net/tcp || /proc/net/udp || /proc/net/raw 40
  41. 41. Ocultar conexiones 41
  42. 42. Autenticación X.509
  43. 43. Autenticación X.509● Verificaciones del certificado de rootkit Validez del certificado y firma de la CA Fingerprint SHA1 (Posibles MiTM) Extensión X.509 V3: SSL Client● Verificaciones del certificado de “admin” Validez del certificado y firma de la CA Common name (CN) correcto Extensión X.509 V3: SSL Server 43
  44. 44. Autenticación X.509
  45. 45. sclient: Cliente remoto
  46. 46. sclient: socks4 pivoting 46
  47. 47. sclient: shell remota
  48. 48. “LIVE FREE OR DIE HACKING” Grupo Delitos Telemáticos Unidad Central Operativa Guardia Civil RootedCon 2012
  49. 49. El Escenario (I) “Si conoces al enemigo y te conoces a ti mismo,no tienes por qué temer el resultado de cien batallas.” Sun tzu, El Arte de la Guerra.
  50. 50. El Escenario (II).• Servidores y otros elementos de red vulnerados.• “Troyanización” de infraestructuras informáticas y elementos de red.• Saltos que involucran varios países.• Resumen: Escenario complejo para la investigación.
  51. 51. Perfil del atacante• Amplios conocimientos en el desarrollo de rootkits/malware.• Amplios conocimientos en periféricos y arquitecturas de red.• ¿Motivación? (APT, daños, espionaje, etc).• No es un “niño” del Acunetix.
  52. 52. El resultado• Delito de daños en sistemas informáticos (art. 264).• Delito de descubrimiento y revelación de secretos (art 197).• Perjuicios económicos altos.• Lucro cesante.• Resumen = Pena de prisión + responsabilidad civil.
  53. 53. Comprendiendo el ataque• Análisis forense del binario. – Principio de Locard. – Análisis estático del binario. – Análisis dinámico del binario.• Estudio de los saltos. – Países/Zonas.• Judicialización del caso – Colaboración Interpol / Europol. – Grupos especializados internacionales (24x7). – Apoyos de ISPs y empresas especializadas. – Comisión Rogatoria Internacional / Eurojust.
  54. 54. Análisis del binario (estático)Nivel de debugStringsSímbolosBibliotecasSeccionesEtc.
  55. 55. Análisis del Binario (II).• Valorar realizar análisis dinámico. – Strace, gdb, lsof, etc.• Estudiar las conexiones entrantes/salientes – Del binario. (si es posible). – De la red. (si es posible).• Recursos por parte del denunciante/agraviado. – ¿Qué puede aportar en lo técnico?.
  56. 56. Conclusiones• A pesar de la complejidad del escenario, existen herramientas tanto judiciales como técnicas para el esclarecimiento del hecho.• Investigación larga, falsa sensación de impunidad por parte del atacante.• Importancia del análisis del binario y conexiones de red.• Importancia de la investigación policial clásica.
  57. 57. Dirección Generalde la Guardia Civil ¡GRACIAS POR VUESTRA ATENCIÓN! Grupo Delitos Telemáticos. Unidad Central Operativa Guardia Civil www.gdt.guardiacivil.es
  58. 58. Jaime Peñalba Estébanez @Nighterman Javier Rodríguez @JavioverEspecial agradecimiento al Grupo de Delitos Telemáticos

×