Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў

Файлы трасіроўкі, ці Prefetch-файлы, з'явіліся ў Windows яшчэ са часоў XP. З таго часу яны дапамагалі спецыялістам па лічбавай крыміналістыцы і рэагаванні на камп'ютарныя інцыдэнты знаходзіць сляды запуску праграм, у тым ліку шкоднасных. Вядучы спецыяліст па камп'ютарнай крыміналістыцы Group-IB Алег Скуккін расказвае, што можна знайсці з дапамогай Prefetch-файлаў і як гэта зрабіць.

Prefetch-файлы захоўваюцца ў каталогу %SystemRoot%Prefetch і служаць для паскарэння працэсу запуску праграм. Калі мы паглядзім на любы з гэтых файлаў, то ўбачым, што яго імя складаецца з двух частак: імя выкананага файла і кантрольнай сумы ад шляху да яго, якая складаецца з васьмі сімвалаў.

Prefetch-файлы ўтрымоўваюць масу карыснай з крыміналістычнага пункта гледжання інфармацыі: імя выкананага файла, колькасць яго запускаў, спісы файлаў і каталогаў, з якімі ўзаемадзейнічаў выкананы файл, і, зразумела, часавыя пазнакі. Звычайна крыміналісты выкарыстоўваюць дату стварэння таго ці іншага Prefetch-файла для вызначэння даты першага запуску праграмы. Акрамя таго, дадзеныя файлы захоўваюць дату яе апошняга запуску, а пачынаючы з версіі 26 (Windows 8.1) – часовыя пазнакі сямі апошніх запускаў.

Давайце возьмем адзін з Prefetch-файлаў, дастанем з яго дадзеныя сродкамі PECmd Эрыка Цымермана і паглядзім на кожную іх частку. Для дэманстрацыі я дастану дадзеныя з файла CCLEANER64.EXE-DE05DBE1.pf.

Такім чынам, пачнем зверху. Зразумела, у нас ёсць часовыя пазнакі стварэння, мадыфікацыі і доступу да файла:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
За імі ідуць імя выкананага файла, кантрольная сума шляху да яго, памер выкананага файла, а таксама версія Prefetch-файла:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
Так як мы маем справу з Windows 10, далей мы ўбачым колькасць запускаў, дату і час апошняга запуску і яшчэ сем часовых пазнак, якія паказваюць на папярэднія даты запуску:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
За імі ідзе інфармацыя аб томе, уключаючы яго серыйны нумар і дату стварэння:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
І апошняе, але не менш важнае - спіс каталогаў і файлаў, з якімі ўзаемадзейнічаў выкананы файл:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
Такім чынам, каталогі і файлы, з якімі ўзаемадзейнічаў выкананы файл, - гэта як раз тое, на чым я хачу сёння засяродзіцца. Менавіта гэтыя дадзеныя дазваляюць спецыялістам па лічбавай крыміналістыцы, рэагаванні на кампутарныя інцыдэнты або проактивному пошуку пагроз устанавіць не толькі факт выканання таго ці іншага файла, але і, у некаторых выпадках, - рэканструяваць канкрэтныя тактыкі і тэхнікі атакавалых. Сёння зламыснікі досыць часта выкарыстоўваюць прылады для беззваротнага выдалення дадзеных, напрыклад, SDelete, таму здольнасць аднаўляць хаця б сляды выкарыстання тых ці іншых тактык і тэхнік проста неабходна любому сучаснаму абаронцу - кампутарнаму крыміналісту, спецыялісту па рэагаванні на інцыдэнты, ThreatNunter-эксперту.

Давайце пачнем з тактыкі Initial Access (TA0001) і самай папулярнай тэхнікі – Spearphishing Attachment (T1193). Некаторыя кіберзлачынныя групы ставяцца да выбару такіх укладанняў даволі творча. Напрыклад, група Silence выкарыстоўвала для гэтага файлы ў фармаце CHM (Microsoft Compiled HTML Help). Такім чынам, перад намі яшчэ адна тэхніка – Compiled HTML File (T1223). Такія файлы запускаюцца з дапамогай hh.exe, такім чынам, калі мы дастанем дадзеныя з яго Prefetch-файла, то даведаемся, які менавіта файл быў адкрыты ахвярай:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
Працягнем працаваць з прыкладамі з рэальных спраў і пяройдзем да наступнай тактыкі Execution (TA0002) і тэхніцы CSMTP (T1191). Microsoft Connection Manager Profile Installer (CMSTP.exe) можа выкарыстоўвацца атакавалымі для запуску шкоднасных сцэнарыяў. Добры прыклад – гурт Cobalt. Калі мы атрымаем дадзеныя з Prefetch-файла cmstp.exe, то зноў зможам даведацца, што менавіта было запушчана:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
Яшчэ адна папулярная тэхніка – Regsvr32 (T1117). Regsvr32.exe таксама часта выкарыстоўваецца атакавалымі для запуску. Вось і яшчэ адзін прыклад ад гурта Cobalt: калі мы дастанем дадзеныя з Prefetch-файла. regsvr32.exe, то зноў убачым, што было запушчана:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
Наступныя тактыкі – Persistence (TA0003) і Privilege Escalation (TA0004), а таксама Application Shimming (T1138) у якасці тэхнікі. Гэтая тэхніка выкарыстоўвалася Carbanak/FIN7 для замацавання ў сістэме. Звычайна для працы з базамі дадзеных з інфармацыяй аб сумяшчальнасці праграм (.sdb) выкарыстоўваецца sdbinst.exe. Такім чынам, Prefetch-файл дадзенага выкананага файла можа дапамагчы нам пазнаць імёны такіх баз дадзеных і іх размяшчэнне:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
Як відаць на ілюстрацыі, мы маем не толькі імя файла, выкарыстанага для ўсталёўкі, але і імя ўсталяванай базы дадзеных.

Давайце зірнем на адзін з найбольш тыповых прыкладаў прасоўвання па сетцы (TA0008) – PsExec, які выкарыстоўвае адміністрацыйныя агульныя рэсурсы (T1077). Служба з імем PSEXECSVC (зразумела, можа выкарыстоўвацца і любое іншае імя, калі атакавалыя выкарыстоўвалі параметр -r) будзе створана на мэтавай сістэме, такім чынам, калі мы дастанем дадзеныя з Prefetch-файла, то ўбачым, што было запушчана:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў
Скончу я, мабыць, на тым, з чаго пачынаў - выдаленне файлаў (T1107). Як я ўжо адзначаў, шматлікія атакавалыя выкарыстаюць SDelete для беззваротнага выдалення файлаў на розных стадыях жыццёвага цыклу нападу. Калі мы зірнем на дадзеныя з Prefetch-файла sdelete.exe, то ўбачым, што менавіта было выдалена:

Палюем на тэхнікі і тактыкі атакавалых з выкарыстаннем Prefetch-файлаў

Зразумела, гэта не вычарпальны спіс тэхнік, якія можна выявіць падчас аналізу Prefetch-файлаў, але гэтага павінна быць цалкам дастаткова, каб зразумець, што такія файлы могуць дапамагчы не толькі знайсці сляды запуску, але і рэканструяваць пэўныя тактыкі і тэхнікі атакавалых.

Крыніца: habr.com

Дадаць каментар