Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Lorenzo Martínez - Linux DFIR: My Way! [rooted2019]

214 vues

Publié le

Lorenzo Martínez - Linux DFIR: My Way! [rooted2019]

Publié dans : Technologie
  • Soyez le premier à commenter

Lorenzo Martínez - Linux DFIR: My Way! [rooted2019]

  1. 1. © Todos los derechos reservados
  2. 2. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! • ¿Máquina viva? -> Adquisición de elementos volátiles de un sistema • Memoria RAM • Artifacts: Info de sistema operativo, conexiones establecidas, puertos abiertos, carga de la máquina, procesos, usuarios conectados, módulos cargados, timeline de sistema de ficheros, tráfico de red, etc,… • ¿Máquina apagada? -> post-mortem • Imagen de disco Adquisición de evidencias
  3. 3. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! • ¿Máquina viva? -> Adquisición de elementos volátiles de un sistema • Memoria RAM • Artifacts: Info de sistema operativo, conexiones establecidas, puertos abiertos, carga de la máquina, procesos, usuarios conectados, módulos cargados, timeline de sistema de ficheros, tráfico de red, etc,… • ¿Máquina apagada? -> post-mortem • Imagen de disco Adquisición de evidencias
  4. 4. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! • ¿Máquina viva? -> Adquisición de elementos volátiles de un sistema • Memoria RAM • Artifacts: Info de sistema operativo, conexiones establecidas, puertos abiertos, carga de la máquina, procesos, usuarios conectados, módulos cargados, timeline de sistema de ficheros, tráfico de red, etc,… • ¿Máquina apagada? -> post-mortem • Imagen de disco Adquisición de evidencias
  5. 5. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! • ¿Máquina viva? -> Adquisición de elementos volátiles de un sistema • Memoria RAM • Artifacts: Info de sistema operativo, conexiones establecidas, puertos abiertos, carga de la máquina, procesos, usuarios conectados, módulos cargados, timeline de sistema de ficheros, tráfico de red, etc,… • ¿Máquina apagada? -> post-mortem • Imagen de disco Adquisición de evidencias
  6. 6. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Adquisición de evidencias Live en Windows
  7. 7. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Adquisición de evidencias Live en Windows
  8. 8. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Adquisición de evidencias Live en Windows
  9. 9. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Adquisición de evidencias Live en Windows
  10. 10. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Adquisición de evidencias Live en Windows
  11. 11. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! La memoria • Dump • LiME (Linux Memory Extractor) • Módulo que se carga en “ESE” kernel • Linpmem (Proyecto Rekall) • Binario estático* • /proc/kcore • Análisis • Volatility/Rekall -> Profile para ese kernel con System.map + modules.dwarf
  12. 12. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Módulos LiME y Profiles Volatility • Sistemas operativos soportados: • CentOS 5, 6 y 7 • Ubuntu 14.04, 16.04 y 18.04 • https://bitbucket.org/securizame/volatility-profiles- and-lime-modules • https://securizame@bitbucket.org/securizame/ lime.kos.git
  13. 13. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Operativa en Linux • En local: • Ejecución de scripts • Herramientas/librerías “del sistema” • Desde dispositivo USB o recurso compartido por red • En remoto • Instalación de agentes (Ej: Osquery, GRR, etc…) • Copia de herramientas a sistema de ficheros local
  14. 14. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! ¿Es fiable un sistema potencialmente comprometido?
  15. 15. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Una posible solución • Dr. Philip Polstra • Ejecución de script • “Good Binaries” • Modificación de PATH y LD_LIBRARY_PATH • ¿Compatible con SystemV y SystemD?
  16. 16. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Una posible solución • Dr. Philip Polstra • Ejecución de script • “Good Binaries” • Modificación de PATH y LD_LIBRARY_PATH • ¿Compatible con SystemV y SystemD?
  17. 17. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Objetivos • Fiabilidad -> Extracción lo más fiable posible • Cantidad de evidencias -> Lo más completo posible • Interoperable -> SystemV y SystemD • Filosofía UNIX -> Confianza en diferentes herramientas específicas para cada tarea
  18. 18. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! LNX IRTool: Internals • Máquina viva potencialmente comprometida • Usar herramientas fiables • USB con instalación CAINE 7, KALI 2016.2 y partición para destino de datos • Magic sauce -> chroot • LNX IRTool usa los binarios y librerías de CAINE/KALI
  19. 19. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! LNX IRTool: Pasos en víctima • Crear directorios /mnt/tools y /mnt/datos • CAINE 7 -> Si víctima usa System V • KALI 2016.2 -> Si víctima usa Systemd • Montar particiones USB. En modo escritura solo lo necesario. Por ejemplo, para máquina Systemd: –mount -r /dev/sdb3 /mnt/tools –mount /dev/sdb4 /mnt/datos –mkdir /mnt/datos/<caso> –mount --rbind /mnt/datos/<caso> /mnt/tools/mnt/
  20. 20. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! – /mnt/tools/montalo.sh -> monta --bind /dev, /run, /etc, /proc, /sys,… en /mnt/tools // monta --rbind / /mnt/ tools/raiz // chroot /mnt/tools – ./ir_tool01.sh /mnt/ – exit – /mnt/tools/ir_tool02.sh /mnt/datos/<caso> – sync – /mnt/tools/desmontalo.sh -> Debian/Ubuntu vs. RHEL/ CentOS – umount /mnt/tools • ¿¿Tirar del cable de corriente??*** -> OJO a sistemas de ficheros cifrados, SSD, servicios imprescindibles… LNX IRTool: Pasos en víctima
  21. 21. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! – /mnt/tools/montalo.sh -> monta --bind /dev, /run, /etc, /proc, /sys,… en /mnt/tools // monta --rbind / /mnt/ tools/raiz // chroot /mnt/tools – ./ir_tool01.sh /mnt/ – exit – /mnt/tools/ir_tool02.sh /mnt/datos/<caso> – sync – /mnt/tools/desmontalo.sh -> Debian/Ubuntu vs. RHEL/ CentOS – umount /mnt/tools • ¿¿Tirar del cable de corriente??*** -> OJO a sistemas de ficheros cifrados, SSD, servicios imprescindibles… LNX IRTool: Pasos en víctima
  22. 22. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! • Pasos de preparación de puntos de montaje • Ejecución de scripts montalo.sh + irtool01.sh + irtool02.sh + desmontalo.sh LNX IRTool: Resumen
  23. 23. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! • Pasos de preparación de puntos de montaje • Ejecución de scripts montalo.sh + irtool01.sh + irtool02.sh + desmontalo.sh LNX IRTool: Resumen
  24. 24. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way!
  25. 25. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way!
  26. 26. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way!
  27. 27. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! ir_tool01.sh • Se ejecuta en entorno chroot de CAINE o KALI2 – Dump de memoria con LiME o con LinPmem – Sistema -> fecha/hora, kernel, issue, carga de máquina, fecha instalación (lost+found /), búsqueda de unidades cifradas montadas, runlevel -> /etc/rcX.d/S* – Por cada usuario -> historial, variables de entorno y configuración de shell,… – Info de usuarios -> loggeados/existentes/powered/actual, últimos logons, erróneos, logon por cada usuario – Búsqueda de ficheros ocultos – Búsqueda de ficheros *.bin, *.exe, sin usuario y sin grupo
  28. 28. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! ir_tool01.sh – Ficheros y directorios con ACLs – Tareas programadas en cron – Procesos existentes -> ps -eLF (todos -e-, hilos -L-, formato completo -F-) // pstree -Aup (ASCII, ID usuario, ID proceso) // CSV con /proc/PID/exe y cmdline – Información de red y comunicaciones: estado de interfaces de red, rutas, interfaces en modo promiscuo, ficheros de configuración, DNS, sockets y ficheros abiertos -> [netstat | ss] -patun, lsof -i , etc,… – Extracción de config de servidores web comunes
  29. 29. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! ir_tool01.sh – Kernel -> módulos cargados (lsmod) vs. /sys/module/<mod>/ initstate – Localizaciones interesantes /dev/shm, /lost+found, contenido de /etc/ld.so.preload – timeline en formato MACtime* – tar /etc,/var/log, /root, /home, /tmp – logs de systemd -> journald – unhide + chkrootkit – Información de reglas de cortafuegos (filter, nat y mangle) – iftop -> 20 segundos – tcpdump -i any -w tcpdump.pcap -> 30 segundos – top -> 5 veces
  30. 30. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! ir_tool02.sh • Se ejecuta desde shell propia del sistema víctima – Se indica punto de montaje y se crean variables al destino – Puntos de montaje y ocupación de los mismos – Sistema de ficheros: – Timeline del / -> excepto /mnt – ATIME, MTIME, BTIME, permisos inodo, uid, gid, tamaño, nombre de fichero
  31. 31. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! –Paquetes de sistema: rpm -Va y rpm -qa -last // dpkg - l y debsums | grep REPLACED (si existe) // pacman -Qi –Claves públicas gpg existentes en el sistema –Verificación de KeyIDs de RPMs instalados* • Información detallada de módulos cargados • systemctl -> Obtiene servicios instalados (list-units) activos (state=active). Se saca el estado de cada servicio • Se calcula el SHA-256 de cada fichero generado ir_tool02.sh
  32. 32. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! Forense en la nube SystemV -> mount -o loop,offset=$((4196352*512)),noexec, noload / mnt/remote/ir_lnx_usb.dd /mnt/tools/ SystemD -> mount -o loop,offset=$((25167872*512)),noexec, noload / mnt/remote/ir_lnx_usb.dd /mnt/tools/ R/W Read Only
  33. 33. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! @Lawwait @securizame /securizame https://www.securizame.com https://cursos.securizame.com https://certificaciones.securizame.com +34 91 123 11 73 Lorenzo@securizame.com © Todos los derechos reservados @LAWWAIT
  34. 34. © Todos los derechos reservados @LAWWAIT Linux DFIR: My way! @Lawwait @securizame /securizame https://www.securizame.com https://cursos.securizame.com https://certificaciones.securizame.com +34 91 123 11 73 Lorenzo@securizame.com © Todos los derechos reservados @LAWWAIT

×