===== 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]]