Назад към блога
Дигитална форензика9 мин четене

Изграждане на таймлайн за NTFS разследвания на MFT и USN дневник

A

Alexander Sverdlov

Анализатор по сигурността

4.07.2026 г.
Изграждане на таймлайн за NTFS разследвания на MFT и USN дневник

Попитайте всеки специалист по реакция при инциденти какво посяга първо и отговорът почти винаги е същият: таймлайн. Какво е работило, какво е било записано, какво е било изтрито и в какъв ред. В NTFS по-голямата част от тази история живее в две структури, а да се научите да ги четете заедно е едно от уменията с най-голям ефект в Windows форензиката.

Master File Table

Master File Table

MFT е централният индекс на NTFS: по един запис на файл и директория, съдържащ името, родителя, размера и набор от времеви маркери. Тези маркери следват модела MACB: Modified (променен), Accessed (достъпен), Changed (промяна на метаданни) и Born (създаване). Те идват от два атрибута, $STANDARD_INFORMATION и $FILE_NAME, разлика, която има огромно значение за откриването на подправяне. MFT също запазва записи за изтрити, но още непрезаписани файлове, затова може да разкрие активност, която нападателят е смятал, че е изтрил. Четенето на MFT ви дава снимка: състоянието на файловата система сега, плюс времевите маркери, които всеки файл носи.

USN дневникът на промените

USN дневникът на промените

Където MFT е снимка, USN дневникът ($UsnJrnl:$J) е запис. NTFS добавя запис всеки път, когато файл се създава, записва, преименува или изтрива, улавяйки файла, причината за промяната и кога се е случило. Това прави дневника последователен лог на активността на файловата система във времето, точно измерението, което една единствена MFT снимка няма. Слабостта му е, че е ротиращ буфер с краен размер, така че по-старите събития изтичат, а сами по себе си записите му са лаконични.

Защо корелирането печели пред която и да е поотделно

Защо корелирането печели пред която и да е поотделно

Прочетени поотделно, всеки артефакт има сляпо петно. MFT ви казва текущите времеви маркери на файла, но не и последователността от промени, които са ги произвели. USN дневникът ви казва последователността от промени, но идентифицира файловете по референтен номер, а не по четим път. Корелирайте ги и сляпите петна се компенсират: разрешавате всяко USN събитие обратно до пълен, четим път чрез MFT и обогатявате всеки MFT запис с историята на дневника за това как е стигнал дотам. Резултатът е един супер-таймлайн с разрешени пътища, артефактът, от който всъщност искате да разследвате.

Стеснете преди да четете

Стеснете преди да четете

Жив диск C: съдържа милиони MFT записи и дневник, пълен с рутинно движение. Изсипването на всичко това в електронна таблица е начинът разследването да заседне. Умението е стесняването: ограничете до прозореца, който има значение, преди да започнете да четете. Това означава точен UTC времеви диапазон, често само часовете около предполагаемия пробив, плюс филтри по разширение на файла (фокус върху изпълними и скриптове, изключете шума), по път (включете потребителските профили, изключете движението на Windows обслужването) и по име. Изглед за плътността на събитията, който показва къде се групира активността, ви позволява да забележите пика, съответстващ на инцидента, и да отидете право до него.

Експорти, които захранват останалия ви инструментариум

Експорти, които захранват останалия ви инструментариум

Никой инструмент за таймлайни не е остров. Форматите, които имат значение, са тези, които другите ви инструменти вече говорят: MFTECmd-съвместимият CSV, който се отваря директно в Timeline Explorer на Eric Zimmerman, TSK bodyfile, който се влива в mactime на The Sleuth Kit, и l2t_csv супер-таймлайна, който plaso и log2timeline консумират. Таймлайн, който можете да експортирате чисто в тях, е таймлайн, с който наистина можете да работите.

Изграждане безплатно с Atlant Scalpel

Изграждане безплатно с Atlant Scalpel

Atlant Scalpel е безплатен инструмент в един изпълним файл, който прави точно този работен поток. Насочете го към жив том, дисково изображение (VHDX, VHD, VMDK или raw dd), Volume Shadow Copy снимка или самостоятелен извлечен $MFT или $UsnJrnl:$J файл. Парсва MFT, с $STANDARD_INFORMATION MACB времеви маркери и разрешени пълни пътища, и USN дневника, след което ги корелира в един обогатен супер-таймлайн. Хистограма на плътността на събитията ви позволява да плъзнете по пика, за да зададете прозореца си, а добавяте филтри по разширение, път и име, за да наблюдавате как таймлайнът се стеснява в реално време. Жив C: с милиони записи се парсва за секунди, не за минути.

Когато имате нужната част, всеки експорт спазва активния ви прозорец и филтри, така че файлът, който предавате, съдържа точно записите, които сте избрали, в пълнота, никога съкратен преглед. Можете да изрежете компактен бинарен срез само от $MFT плюс $J, или да експортирате MFT CSV за Timeline Explorer, bodyfile за mactime или l2t_csv за plaso. Стеснете прозореца, изрежете среза, предайте го на следващия инструмент и продължете.

Практическа последователност

  • Заредете източника, независимо дали е жив том, изображение или извлечени артефакти.
  • Използвайте хистограмата на плътността, за да намерите къде се групира активността, и плъзнете, за да зададете прозореца.
  • Филтрирайте до разширенията и пътищата, които имат значение за хипотезата ви.
  • Експортирайте обогатения срез във формата, който вашият инструмент за анализ очаква.

MFT и USN дневникът разказват по половината история. Прочетете ги заедно, стеснени до правилния прозорец, и Windows ви предава таймлайн, върху който можете да изградите разследване.

Ново във версия 1.1.0: комбинирани филтри за прецизни заявки

Най-важното допълнение в последната версия са комбинираните AND филтри. Вместо един набор от полета за филтриране, замразявате текущите филтри по тип, път и име в клауза, после наслоявате колкото клаузи са ви нужни под ACTIVE FILTERS, всяка като премахваем чип. Клаузите се комбинират с AND, така че запис се запазва само когато отговаря на всяка от тях. Това изразява условия, които един набор полета не може - например под \Windows И не под \Windows\Temp (клауза за включен път плюс клауза за изключен път) или готовият набор Executables, ограничен до потребителски профил, но с изключена позната чиста директория. Комбинацията управлява таблицата, бинарния срез и всеки CSV експорт по еднакъв начин: това, което виждате, е точно това, което изрязвате.

Това, което никой друг инструмент не прави: проверен бинарен срез

Повечето инструменти за таймлайни спират до текст. Запазената марка на Atlant Scalpel е компактен, преномериран, проверен чрез повторно парсване бинарен срез на $MFT и $J - частица от размера на източника, който се отваря непроменен в MFTECmd, analyzeMFT или The Sleuth Kit, точно като оригинала. Всеки срез идва със slice.manifest.json за веригата на доказателствата, който записва инструмента и версията, UTC времето, източника, прозореца, броя записи, резултата от проверката и приложените филтри. Тъй като срезът се парсва отново, преди да се отчете успех, изрязване, което не се възстановява коректно, е грешка, а не тих частичен резултат - така артефактът, който подавате на колега или прилагате към доказателство, е надежден по конструкция. Билдът е един самостоятелен изпълним файл, който работи само за четене върху източниците и никога не разпакова нищо в %TEMP%.

Atlant Scalpel е безплатен. Изтеглете Atlant Scalpel (един преносим изпълним файл, без инсталатор, без регистрация). За откриване на подправяне на времеви маркери в този таймлайн вградените флагове за аномалии извеждат timestomping автоматично. Свържете се с нас, ако искате нашият екип да помогне.

Александър Свердлов

Александър Свердлов

Основател на Atlant Security. Автор на 2 книги за информационна сигурност, лектор по киберсигурност на най-големите конференции по киберсигурност в Азия и панелист на конференция на ООН. Бивш член на екипа за консултации по сигурността на Microsoft, външен консултант по киберсигурност в Емиратската корпорация за ядрена енергия.

Таймлайн за NTFS разследвания от MFT и USN дневник | Atlant Security