Tipus de document
Treball de fi de grauData de publicació
Llicència de publicació
Si us plau utilitzeu sempre aquest identificador per citar o enllaçar aquest document: https://hdl.handle.net/2445/232105
ForensicXM: Una herramienta nativa de análisis forense para sistemas GNU/Linux
Títol de la revista
Autors
Director/Tutor
Contribució addicional
ISSN de la revista
Títol del volum
Resum
[eng] The GNU/Linux ecosystem now underpins the majority of server, cloud and IoT infrastructure, and has become a prime target for advanced persistent threats. Forensic analysis of these systems faces two intertwined challenges: post-mortem (dead-box) investigations require the systematic review of vast amounts of static evidence, while live analysis must obtain reliable data from a kernel whose system calls may have been subverted by a rootkit. Existing tools tend to address only one of these scenarios, or rely on high-level APIs that an attacker can hook to hide processes, network connections and persistence mechanisms.
This Final Degree Project presents ForensicXM, a native, modular forensic tool written in C for GNU/Linux systems. The tool unifies both methodologies behind a single interface and reads the kernel data structures exposed through /proc and /sys directly, bypassing tampered user-space utilities. Ten analytical modules cover system identification, users, persistence, authentication logs, binary login records (wtmp), network sockets, process memory, Linux capabilities, kernel modules and file integrity with native SHA-256 signatures and MACB timestamping via the statx system call. The tool runs in two modes: live on a running system and dead-box on a mounted image, automatically disabling volatile modules when applicable.
The implementation has been empirically validated on eight virtual machines (seven Ubuntu 24.04 and one Fedora 44), with twenty-two controlled artefacts injected covering hidden root accounts, passwordless users, weak hashes, cron and systemd persistence, timestomping, network listeners on non-standard ports, in-memory injection patterns, stolen capabilities and a real loadable kernel module (LKM) rootkit. The validation campaign drove five iterative refinements of the codebase, leading to zero false positives on the control system and twenty-one full detections plus one partial out of the twenty-two artefacts. The project demonstrates that a focused, purpose-built tool can produce reliable forensic evidence on modern Linux distributions without depending on potentially compromised high-level utilities.
[cat] L’ecosistema GNU/Linux és avui la base de la majoria d’infraestructures de servidor, de núvol i d’IoT i s’ha convertit en un dels objectius preferents de les amenaces persistents avançades. L’anàlisi forense d’aquests sistemes s’enfronta a dos reptes entrellaçats: les investigacions post-mortem (dead-box) requereixen revisar grans volums d’evidència estàtica, mentre que l’anàlisi en viu (live) ha d’obtenir dades fiables d’un nucli les crides del qual poden haver estat manipulades per un rootkit. Les eines existents solen cobrir només un d’aquests escenaris o es recolzen en API d’alt nivell que un atacant pot interceptar per ocultar processos, connexions de xarxa i mecanismes de persistència.
Aquest Treball de Fi de Grau presenta ForensicXM, una eina forense nativa, modular i escrita en C per a sistemes GNU/Linux. L’eina unifica les dues metodologies darrere d’una sola interfície i llegeix directament les estructures del nucli exposades a través de /proc i /sys, evitant les utilitats d’espai d’usuari que un atacant podria haver manipulat. Deu mòduls analítics cobreixen identificació del sistema, usuaris, persistència, registres d’autenticació, registres de login binaris (wtmp), sòcols de xarxa, memòria de processos, capacitats de Linux, mòduls del nucli i integritat de fitxers amb signatures SHA-256 natives i marques de temps MACB mitjançant la crida al sistema statx. L’eina opera en dos modes: live sobre un sistema en execució i dead-box sobre una imatge muntada, desactivant automàticament els mòduls volàtils quan escau.
La implementació s’ha validat empíricament sobre vuit màquines virtuals (set Ubuntu 24.04 i una Fedora 44), amb vint-i-dos artefactes controlats injectats que cobreixen comptes root ocults, usuaris sense contrasenya, hashes dèbils, persistència per cron i systemd, timestomping, escoltadors de xarxa en ports no estàndard, patrons d’injecció en memòria, capacitats robades i un mòdul del nucli (LKM) real amb tècniques d’ocultació. La campanya de validació ha provocat cinc refinaments iteratius del codi, obtenint zero falsos positius sobre el sistema de control i vint-i-una deteccions completes més una parcial dels vint-i-dos artefactes. El projecte demostra que una eina focalitzada i construïda específicament per a aquest objectiu pot produir evidència forense fiable sobre distribucions Linux modernes sense dependre d’utilitats d’alt nivell potencialment compromeses.
Descripció
Treballs Finals de Grau d'Enginyeria Informàtica, Facultat de Matemàtiques, Universitat de Barcelona, Any: 2026, Director: Raul Roca Canovas
Recurs relacionat
Citació
Citació
MARZO PELAZ, Xavier. ForensicXM: Una herramienta nativa de análisis forense para sistemas GNU/Linux. [consulted: 27 of October of 2026]. Available at: https://hdl.handle.net/2445/232105