File Integrity Monitoring
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Bazno stanje
Bazno stanje podrazumeva snimanje određenih delova sistema kako bi se uporedili sa budućim stanjem i istakle promene.
Na primer, možete izračunati i sačuvati hash svakog fajla u filesystemu kako biste utvrdili koji su fajlovi izmenjeni.
Isto se može primeniti na kreirane korisničke naloge, procese koji su pokrenuti, servise koji rade i sve druge stavke koje se ne bi mnogo, ili uopšte, trebale menjati.
Jedno korisno bazno stanje obično čuva više od samog digesta: dozvole, vlasnik, grupa, vremenske oznake, inode, symlink target, ACLs i odabrani prošireni atributi takođe vredi pratiti. Iz perspektive traganja za napadačima, ovo pomaže u otkrivanju permission-only tampering, atomic file replacement, i persistence via modified service/unit files čak i kada sadržaj fajla nije prvi parametar koji se menja.
File Integrity Monitoring
File Integrity Monitoring (FIM) je kritična bezbednosna tehnika koja štiti IT okruženja i podatke praćenjem promena u fajlovima. Obično kombinuje:
- Baseline comparison: čuvanje metapodataka i kriptografskih checksuma (preporučeno
SHA-256ili bolji) za buduća poređenja. - Real-time notifications: pretplatite se na OS-nativne događaje fajl sistema da biste znali koji fajl se menjao, kada i po mogućstvu koji proces/korisnik ga je dirnuo.
- Periodic re-scan: obnovite poverenje nakon reboot-ova, izgubljenih događaja, prekida agenta ili namernih anti-forenzičkih aktivnosti.
Za traganje za pretnjama, FIM je obično korisniji kada je fokusiran na high-value paths kao što su:
/etc,/boot,/usr/local/bin,/usr/local/sbinsystemdunits, cron locations, SSH material, PAM modules, web roots- Windows persistence locations, service binaries, scheduled task files, startup folders
- Container writable layers and bind-mounted secrets/configuration
Backendi u realnom vremenu i slepe tačke
Linux
Back-end za prikupljanje podataka je bitan:
inotify/fsnotify: jednostavno i često, ali limiti za watch mogu biti iscrpljeni i neki ivični slučajevi mogu biti propušteni.auditd/ audit framework: bolji kada treba da znate ko je izmenio fajl (auid, process, pid, executable).eBPF/kprobes: novije opcije koje koriste moderni FIM stack-ovi da obogate događaje i smanje deo operativne muke plaininotifydeployment-a.
Neke praktične zamke:
- Ako program zameni fajl koristeći
write temp -> rename, praćenje samog fajla može prestati da bude korisno. Pratite roditeljski direktorijum, ne samo fajl. - Kolektori zasnovani na
inotify-ju mogu promašiti ili degradirati rad na ogromnim stabljikama direktorijuma, kod aktivnosti sa hard-linkovima, ili nakon što je nadgledani fajl obrisan. - Veoma veliki rekurzivni setovi za watch mogu se ćutke srušiti ako su
fs.inotify.max_user_watches,max_user_instances, ilimax_queued_eventspostavljeni prenisko. - Mrežni fajl sistemi obično nisu dobri ciljevi za FIM kada je cilj nisko-šumno praćenje.
Primer baznog stanja + verifikacija sa AIDE:
aide --init
mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
aide --check
Primer osquery FIM konfiguracije fokusirane na putanje koje napadači koriste za održavanje prisustva:
{
"schedule": {
"fim": {
"query": "SELECT * FROM file_events;",
"interval": 300,
"removed": false
}
},
"file_paths": {
"etc": ["/etc/%%"],
"systemd": ["/etc/systemd/system/%%", "/usr/lib/systemd/system/%%"],
"ssh": ["/root/.ssh/%%", "/home/%/.ssh/%%"]
}
}
Ako vam treba process attribution umesto samo promena na nivou putanje, preferirajte audit-backed telemetry kao što su osquery process_file_events ili Wazuh whodata mode.
Windows
Na Windowsu je FIM efikasniji kada kombinujete change journals sa high-signal process/file telemetry:
- NTFS USN Journal obezbeđuje trajan zapis po volumenu o promenama fajlova.
- Sysmon Event ID 11 je koristan za kreiranje/prepisivanje fajlova.
- Sysmon Event ID 2 pomaže u detekciji timestomping.
- Sysmon Event ID 15 je koristan za named alternate data streams (ADS) kao što su
Zone.Identifierili skriveni payload streamovi.
Brzi primeri USN triaže:
fsutil usn queryjournal C:
fsutil usn readjournal C:
fsutil usn readdata C:\Windows\Temp\sample.bin
Za dublje anti-forenzičke ideje oko timestamp manipulation, ADS abuse, i USN tampering, pogledajte Anti-Forensic Techniques.
Kontejneri
Container FIM često promašuje stvarni put zapisa. Sa Docker overlay2, izmene se upisuju u writable upper layer (upperdir/diff) kontejnera, a ne u read-only image slojeve. Dakle:
- Praćenje samo putanja iz inside kratkotrajnog kontejnera može propustiti izmene nakon ponovnog kreiranja kontejnera.
- Praćenje putanje na hostu koja stoji iza writable sloja ili odgovarajućeg bind-mounted volumena često je korisnije.
- FIM na image slojevima razlikuje se od FIM na pokrenutom container filesystemu.
Beleške za lov na napadače
- Pratite service definitions i task schedulers jednako pažljivo kao i binarije. Napadači često dobijaju persistenciju modifikovanjem unit fajla, cron unosa ili task XML-a umesto da patchuju
/bin/sshd. - Samo content hash nije dovoljan. Mnogi kompromisi se prvo jave kao owner/mode/xattr/ACL drift.
- Ako sumnjate na zrelu intruziju, uradite oboje: real-time FIM za svežu aktivnost i cold baseline comparison sa pouzdanim medijima.
- Ako napadač ima root ili kernel execution, pretpostavite da FIM agent, njegova baza podataka i čak izvor događaja mogu biti podmetnuti. Čuvajte logove i baseline-ove na daljinu ili na read-only medijima kad god je moguće.
Alati
Reference
- https://osquery.readthedocs.io/en/stable/deployment/file-integrity-monitoring/
- https://www.elastic.co/blog/tracing-linux-file-integrity-monitoring-use-case
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.


