===== Sažetak ===== Vremenske oznake u EXT4 sustavima sadrže vremenske informacije koje nam govore kada je datoteka uređivana, pregledana ili ima promijenjene metapodatke te ih se može i mijenjati, odnosno manipulirati sa njima. Postoje 3 tipa vremenskih oznaka a to su //accessed timestamp// odnosno //**atime**//, //change timestamp// odnosno //**ctime**// te //modified timestamp// odnosno //**mtime**//. Bitno je napomenuti da EXT4 sustavi vrijeme spremaju u obliku sekundi proteklih od 1.1.1970 na ponoć odnosno po UNIX vremenu. Keywords: EXT4, UNIX, timestamps, timestamp, LINUX ===== Uvod ===== Vremenske oznake u EXT4 sustavima daju nam na uvid kada je zadnji put and pojedinom datotekom izvršena neka radnja, primjerice pregledavanje, izmjena sadržaja i promjena metapodataka. Spremljeni podaci (vrijeme) zapisani su u obliku Unix timea, odnosno kao broj proteklih sekundi od 1. siječnja 1970 točno u ponoć po UTC standardu. Jedan dan sadrži 86400 sekundi, no zbog prijestupnih sekundi (Jer dan traje 23 sata, 59 minuta i 59 sekundi = 86399) Unix vrijeme ne reprezentira točno UTC vrijeme te je potrebna prilagodba. Vremenske oznake postoje i za datoteke i za mape. Naredba ‎ date '+%s'‎ daje nam na uvid trenutno UNIX vrijeme sustava. {{:racfor_wiki:razno:currenttime.png?600| Prikaz trenutnog UNIX vremena sustava}} Stanje sustava sa slike je 1636637038 što nam daje pretvoreno vrijeme: 11.11.2021 13:23:58 GTM+0 ===== Vremenske oznake ===== U EXT4 sustavima postoje 3 tipa oznaka uz prigodne oznake: * Change time - Vrijeme kada su metapodaci zadnji puta izmijenjeni (//**ctime**//) * Modify time - Vrijeme kada je dokument zadnji puta izmijenjen (//**mtime**//) * Access time - Vrijeme kada je dokument zadnji puta otvoren ili pregledan (//**atime**//) Navedene oznake možemo vidjeti korištenjem sljedeće naredbe: ‎ //echo "Test file" > filename.txt stat filename.txt‎ Dok iduća slika pokazuje primjenu na datoteci kreiranu za potrebe demonstracije: {{:racfor_wiki:razno:filestat.png?600| Rezultat korištenja naredbe stat nad kreiranom tekstualnom datotekom}} Gdje oznake su zapisane u obliku datuma, vremena te UTC vremenske zone. ===== Manipulacija vremenskim oznakama ===== Vremenske oznake moguće je mijenjati odnosno manipulirati njima. Primjerice korištenjem naredbe //**touch**// moguće je izmijeniti vremenske oznake na sljedeći način: * touch -a filename.txt‎ Postavlja vremenske oznake //**atime**// i **//ctime//** na trenutno vrijeme sustava (zastavica -a) * touch -m filename.txt‎ Postavlja vremenske oznake //**mtime**// i **//ctime//** na trenutno vrijeme sustava (zastavica -m) * touch -d "2000-01-01 00:00:00" filename.txt‎ Postavlja vremenske oznake //**atime**// i **//mtime//** na odabrano vrijeme, u ovom slučaju na ponoć 1.1.2000. (zastavica -d) * touch filename.txt‎ -r referenca Postavlja sve vremenske oznake po referentnoj datoteci. **(zastavica -r) * touch -t filename.txt Postavlja vremenske oznake //**atime**// i **//mtime//** na **trenutno vrijeme sustava. Moguće je postavljanje vremnskih oznaka //**atime**// i **//mtime//** pojedinačno **korištenjem dodatnih zastavica "-a" za //**atime**// te "-m" za //**mtime**// **touch -t 202103061300 -a filename.txt‎ odnosno touch -t 202103061300 -m filename.txt‎ gdje je parametar u ovom slučaju UNIX vrijeme ===== Pretraživanje datoteka ===== Moguće je pretražiti datoteke koje su uređivane u određenom vremenskom periodu odnosno da imaju unutar odgovarajućeg raspona vremenske oznake. Bitno je napomenuti da u //shellu// kod pretraživanja sufiks //time// označava dane a //min// minute tako da pri korištenju naredbe //find// moguće je koristiti sljedeće zastavice: * -atime * -amin * -ctime * -cmin * -mtime * -mmin Te prilikom unosa parametra ako se unese pozitivan broj sustav pretražuje datoteku koja je primjerice uređivana **točno** prije x vremena, dok kod negativnih brojeva naredba prikazuje sve datoteke koje su unazad x vremena bile primjerice uređivane, ovisno o pretraživanoj oznaci. Također ako se ispred broja doda +, pretražuju se sve datoteke koje imaju traženi atribut prije tog vremena. Primjer: find . -amin 15 Pokazuje datoteke otvorene točno prije 15 minuta find . -mtime -2 Pokazuje izmijenjene datoteke u zadnja 2 dana find . -atime +2 Pokazuje datoteke otvorene sve do prije 2 dana ===== Detekcija manipulacije ===== Detekcija manipulacije moguća je pregledavanjem povijesti naredbi i logova koje je korisnik ostavio iza sebe. Detekcija manipulacija je daleko jednostavnija na NTFS sustavima nego na EXT4 no uz korištenje forenzičkih alata moguće je detektirati manipulacije. ===== Literatura ===== [1] [[https://en.wikipedia.org/wiki/Unix_time|Unix time on Wikipedia]] [2] [[https://www.geeksforgeeks.org/touch-command-in-linux-with-examples/|Touch, GeeksForGeeks]] [3] [[https://www.howtogeek.com/517098/linux-file-timestamps-explained-atime-mtime-and-ctime |Linux Timestamps HowToGeek]]