Trumpai: IT incidento laiko juosta chronologine tvarka išdėsto visus pastebėjimus, sprendimus ir priemones vienoje laiko zonoje, geriausia UTC. Kiekvienoje eilutėje nurodomas šaltinis, pastebėjimas, įrodymas ir vertinimas: įrodyta, tikėtina arba nežinoma. Taip susidaro aiškus vaizdas, kada užpuolikas buvo sistemoje, ką galėjo pasiekti ir kada jūs apie tai sužinojote.
Kodėl galiausiai visi klausia, kada
Po incidento klausimai ateina iš visų pusių. Duomenų apsaugos pareigūnas nori žinoti, nuo kada asmens duomenys buvo pasiekiami. Draudikas klausia, kada žala aptikta ir pranešta. Vadovybė nori žinoti, ar spraga buvo atvira jau prieš paskutinį atnaujinimą. Visi šie klausimai turi bendrą bruožą: jie sukasi apie laiko momentus.
Be laiko juostos kiekvienas į šiuos klausimus atsako iš atminties, ir atsakymai prieštarauja vienas kitam. Su tvarkingai vedama laiko juosta atsiranda bendras pagrindas, į kurį remiasi visi dalyviai. Ji kartu yra baigiamosios ataskaitos karkasas.
PHP2Shell atveju laiko juosta ypač informatyvi, nes vieši pagrindiniai duomenys gerai dokumentuoti. Juos galima dėti kaip atramos taškus šalia savo pastebėjimų. Visą viešų įvykių seką aprašo gidas PHP2Shell: chronologija.
Sandara: kokių stulpelių reikia laiko juostai
Pakanka lentelės, skaičiuoklėje ar bendrame dokumente. Svarbu, kad stulpeliai būtų pastovūs ir užpildyti kiekvienai eilutei. Toliau pateiktas pavyzdys rodo viešus PHP2Shell pagrindinius duomenis kaip atramos taškus, o žemiau tipinius savus įrašus vietos rezervavimo forma:
| Laikas (UTC) | Šaltinis | Pastebėjimas | Įrodymas | Vertinimas |
|---|---|---|---|---|
| 2026-10-17 | žiniasklaidos pranešimai | pirmasis pastebėtas bandymas atakuoti PHP2Shell | spaudos pranešimas | įrodyta kaip žiniasklaidos pranešimas |
| 2026-10-20 | php.net | saugumo atnaujinimų išankstinis paskelbimas | pranešimas php.net | įrodyta |
| 2026-10-21, 14:00 | php.net | paskelbtos 8.5.12, 8.4.27, 8.3.36, 8.2.35 | pranešimas php.net | įrodyta |
| savas laikas | Access žurnalas | dažnesnės 500 klaidos įprastuose puslapiuose | žurnalo ištrauka, eilutės numeris | tikėtinai svarbu |
| savas laikas | failų sistema | naujas PHP failas įkėlimų aplanke | kopija su kontroline suma | įrodyta, laikas neaiškus |
| savas laikas | vidinis | incidentas pastebėtas, vadovybė informuota | laiškas, pokalbio užrašas | įrodyta |
| savas laikas | vidinis | atnaujinimas įdiegtas, visi darbiniai procesai (worker) paleisti iš naujo | paketų žurnalas, procesų sąrašas | įrodyta |
Vertinimo stulpelis yra svarbiausia dalis. Jis atskiria, kas įrodyta, kas atrodo tikėtina ir kas lieka atvira. Vėlesni skaitytojai iš karto mato, kur laiko juosta tvirta, o kur yra spragų.
IT incidento laiko juosta: šaltinių sujungimas
Įrašai ateina iš daugelio šaltinių, kurių formatai ir laiko zonos skiriasi. Elkitės šia tvarka:
- Nustatyti laiko zoną: viską vesti UTC. Perėjimas prie žieminio laiko 2026-10-25 viduryje laikotarpio pastumia vietos laiką Vokietijoje viena valanda. Kas maišo vietos laikus, nepastebimai paslenka įvykius.
- Patikrinti laikrodžius: ar serverio laikrodis ėjo teisingai? Palyginimas su žinomu įvykiu, pavyzdžiui, savo prisijungimu, parodo nukrypimus.
- Pirmiausia išoriniai šaltiniai: CDN, WAF, hostingo teikėjo ar ugniasienės žurnalai yra už serverio ribų ir sunkiai pakeičiami. Jie sudaro karkasą.
- Papildyti serverio žurnalais: žiniatinklio serveris, PHP-FPM, prisijungimai, sistemos žurnalas. Metodiką aprašo Žiniatinklio serverio žurnalų analizė po atakos.
- Priskirti failų sistemą: pridėti naujų ir pakeistų failų laiko žymas kaip užuominas.
- Įrašyti vidinius įvykius: kada kas nors pastebėta, kas informuotas, koks sprendimas priimtas kada?
Ką failų laiko žymos atskleidžia ir ko ne
Linux kiekvienam failui saugo kelis laiko momentus, tarp jų paskutinį turinio pakeitimą (mtime) ir paskutinį metaduomenų pakeitimą (ctime). Abu galima išvesti tik skaitant, čia kaip PHP failų, pakeistų nuo nustatytos dienos, sąrašas, surikiuotas pagal laiką UTC:
# Turinio pakeitimai nuo 2026-10-17, surikiuota, UTC
TZ=UTC find /var/www -type f -name '*.php' -newermt '2026-10-17' -printf '%TY-%Tm-%Td %TH:%TM %p\n' | sort
# Visos vieno failo laiko žymos
TZ=UTC stat /var/www/ihre-website/verdaechtig.php
Dirbkite tik su kopija ar išsaugotu atvaizdu, kaip aprašyta skyriuje Išsaugokite įrodymus, prieš iš naujo įdiegdami. Turėkite omenyje dvi ribas. Pirma, užpuolikas paprastomis priemonėmis gali atstatyti failo pakeitimo datą; nepastebima mtime nėra išteisinimas. Antra, kopijavimo veiksmai ir kai kurie įrankiai keičia laiko žymas. Todėl galioja taisyklė: failų laikai yra užuominos, žurnalų įrašai iš išorės yra įrodymai.
Įrašykite momentą, kada jūsų įmonė sužinojo apie galimą duomenų pažeidimą. Pagal BDAR 33 straipsnį 72 valandų pranešimo terminas iš esmės prasideda nuo sužinojimo. Vertinimas priklauso jūsų duomenų apsaugos pareigūnui ar advokatui.
Tipinės klaidos ir kaip jų išvengti
Dažniausios klaidos nėra įspūdingos. Laiko juosta atkuriama tik pabaigoje iš atminties, užuot buvusi vedama nuolat. Įrašuose yra išvados, o ne pastebėjimai, pavyzdžiui, „užpuolikas pateko per formą“, užuot „POST užklausa į formą, po to naujas failas“. O įrodymų trūksta, nes niekas nepasižymėjo, iš kurio žurnalo failo ir kurios eilutės įrašas paimtas.
Todėl paskirkite asmenį, kuris veda laiko juostą, ir įrašykite įvykius, kai tik jie atsitinka. Išvados priklauso atskiram stulpeliui arba ataskaitai, o ne pastebėjimui.
Laiko juostą taip pat traktuokite kaip konfidencialų dokumentą. Joje dažnai yra IP adresų, naudotojų vardų ir užuominų apie pažeidžiamumus. Nustatykite, kas gali ją skaityti ir keisti, ir išsaugokite ankstesnes būsenas. Jei vertinimas keičiasi, pavyzdžiui, atsiradus naujai žurnalo ištraukai, sena eilutė nėra perrašoma, o papildoma. Taip lieka aišku, kas buvo žinoma kuriuo momentu ir kuo remiantis priimtas sprendimas.
Kaip PHP SOS padeda konkrečiai?
- Laiko juostą vedame nuo pirmo kontakto nuolat ir UTC, kiekvienam įrašui nurodydami šaltinį ir įrodymą.
- Išorinius žurnalus, serverio žurnalus ir failų sistemą vertiname kartu ir kiekvieną teiginį pažymime kaip įrodytą, tikėtiną arba nežinomą.
- Prireikus su specializuotais partneriais atliekame IT forensiką, kad analizė tiktų teismui.
- Laiko juostą perduodame kaip ataskaitos vadovybei, duomenų apsaugai ir draudimui dalį.
Dažni klausimai
Kam man reikalinga laiko juosta po saugumo incidento?
Ji išdėsto visus pastebėjimus eilės tvarka ir parodo, kada užpuolikas buvo sistemoje, ką galėjo pasiekti ir kada jūs apie tai sužinojote. Šių duomenų savo sprendimams reikia duomenų apsaugos pareigūnams, draudikams, institucijoms ir vadovybei.
Kokia laiko zona turėčiau vesti laiko juostą?
Vienoda, UTC. Serveriai, paslaugos ir pranešimai naudoja skirtingas laiko zonas, o perėjimas prie žieminio laiko spalio pabaigoje papildomai pastumia vietos laiką. Kas viską perskaičiuoja į UTC, o vietos laiką tik prideda, išvengia klaidų derinant.
Ar galiu pasikliauti failų laiko žymomis?
Tik ribotai. Failo pakeitimo datą galima suklastoti paprastomis priemonėmis. Patikimesni žurnalų įrašai, ypač žurnalai ne paveiktame serveryje. Failų laiko žymos yra užuominos, kurias reikėtų patvirtinti kitais šaltiniais.
Kas be techninių įvykių priklauso laiko juostai?
Taip pat sprendimai ir komunikacija: kada incidentas pastebėtas, kam pranešta, kada serveris atjungtas nuo tinklo, kada įdiegta pataisa. Būtent žinojimo momentas svarbus pranešimo terminams.