Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Azerskiy_AntiForensics_CTIMeetup.pdf

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest. →
Avatar for SmartGlueDev SmartGlueDev
April 28, 2025
36

 Azerskiy_AntiForensics_CTIMeetup.pdf

Avatar for SmartGlueDev

SmartGlueDev

April 28, 2025

Transcript

  1. C:\Windows\System32> set | find "USERNAME" t.me/gardendetective Владислав Азерский 7 лет

    в ИБ DFIR, Purple Teaming участие в конференциях различные исследования в сфере ИБ 1 2 3 4
  2. Игры со временем Предоставление утилиты Работа утилиты Передача собранных данных

    Время с момента предоставления триаж-утилиты до момента её успешного запуска Время, затраченное утилитой на сбор цифровых улик Время, затраченное на предоставление собранного триажа специалисту для анализа Распаковка данных Время, затраченное на распаковку цифровых улик из архива Обработка данных Время, затраченное автоматизированными средствами на обработку цифровых артефактов Анализ данных Время, затраченное на поиск индикаторов компрометации и реконструкцию инцидента ИБ
  3. ТОП-3 потерпевших Журналы событий Windows Теневые копии Windows Остальные wmic

    nteventlog where LogFileName=‘System’ for /F “tokens=*” %1 in (‘wevtutil.exe el’) DO wevtutil.exe cl “%1” vssadmin delete shadows /all /quiet wmic shadowcopy delete wbadmin delete catalog -quiet • Prefetch; • PowerShell (Console History); • RDP-подключения (NTUSER.dat); • Jump Lists; • RunMRU; • TypedPaths.
  4. Windows Search • Windows Search* — служба ОС Windows, обеспечивающая

    более быстрый поиск файлов, сообщений электронной почты и другого содержимого в системе. Служба создаёт индекс, к которому она обращается при выполнении поиска. • От Windows Vista до Windows 10 используется БД ESE: %PROGRAMDATA%\Microsoft\Search\Data\Applica tions\Windows\Windows.edb • В Windows 11 используется БД SQLite: %PROGRAMDATA%\Microsoft\Search\Data\Applica tions\Windows\* (Windows.db и Windows- gather.db). • Индексируются файлы и папки, присутствующие в след. каталогах по умолчанию (отключена на серверных ОС Windows): 1. C:\Users\* (исключение: каталог AppData) 2. C:\ProgramData\Microsoft\Windows \Start Menu\Programs\* * — https://cyber.aon.com/aon_cyber_labs/windows-search-index-the-forensic-artifact-youve-been-searching-for/
  5. Windows Search: что ты прячешь? • В индекс (свойство AutoSummary)

    будет записываться содержимое файлов следующих типов: .asp, .bat, .cmd, .eml, .xlsx, .html, .ini, .js, .one, .pdf, .reg, .sql, .txt, .vbs, .docx, .xml, .zip (W10). Утилита для парсинга БД Windows Search: https://github.com/strozfriedberg/sidr
  6. Windows Search: твоя история видна • Служба WSearch записывает историю

    открытия файлов каждым пользователем. Эта информация важна для расследования: она может подтвердить, что пользователь взаимодействовал с конкретным файлом.
  7. Anti-(Windows Search) • Команды: rundll32.exe mssrch.dll,MSSrch_SysPrep_Cleanup rundll32.exe mssrch.dll,#22 • Активность:

    1. останавливается/отключается служба WSearch; 2. удаляется содержимое каталога %ProgramData%\Microsoft\Search\Data\Applica tions\Windows и сам каталог; 3. удаляются некоторые подразделы из HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windo ws Search. MSSrch_SysPrep_Cleanup: Вывод утилиты ProcMon:
  8. Prefetch • Для специалистов по цифровой криминалистике и реагированию на

    инциденты ИБ Prefetch-файлы полезны тем, что позволяют находить следы запуска программ, в том числе вредоносных. • По умолчанию данная функция включена только на рабочих станциях Windows. • Местоположение: %WINDIR%\Prefetch • Атакующие удаляют pf-файлы*: del /f /q /s %windir%\Prefetch\* • Отключение функции Prefetch (реестр): reg add "HKLM\SYSTEM\CurrentControlSet\Control\ Session Manager\Memory Management\ PrefetchParameters" /v "EnablePrefetcher" /t REG_DWORD /d 0 /f * — https://afyonluoglu.org/PublicWebFiles/Reports-TR/2017%20FireEye%20M-Trends%20Report.pdf
  9. Anti-Prefetch • Команды: rundll32.exe sysmain.dll,PfSvSysprepCleanup rundll32.exe sysmain.dll,#14 • Активность: 1.

    останавливается служба SysMain; 2. удаляются файлы из каталогов %WINDIR%\Prefetch и %WINDIR%\Prefetch\ReadyBoot. PfSvSysprepCleanup:
  10. WER • Служба Windows Error Reporting (WER) служит для сбора

    и отправки отладочной информации о падении системных и сторонних приложений в Windows. • Каталоги, где располагаются WER-файлы: 1. %ProgramData%\Microsoft\Windows\WER \ReportArchive|ReportQueue 2. %UserProfile%\AppData\Local\Microsoft \Windows\WER\ReportArchive|ReportQueue • Начиная с Windows 10, большинство файлов *.WER включает SHA-1 исполняемого файла*. • Также в отчёте Report.wer присутствует информация об ошибке, полный путь к исполняемому файлу, подгружаемые DLL. • Отключение сбора ошибок WER для всех пользователей: reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d "1" /f * — https://medium.com/dfir-dudes/amcache-is-not-alone-using-wer-files-to-hunt-evil-86bdfdb216d7
  11. Anti-WER • Команды: rundll32.exe wer.dll,WerSysprepCleanup rundll32.exe wer.dll,#1 • Активность: 1.

    удаляются файлы и папки из каталога %ALLUSERSPROFILE%\Microsoft\Windows\WER. Вывод утилиты ProcMon:
  12. Anti-EVTX • Команды: rundll32.exe wevtapi.dll,EvtIntSysprepCleanup rundll32.exe wevtapi.dll,#1 • Активность: 1.

    удаление событий из журналов Application, System, Security и Setup; EvtIntSysPrepCleanup: SysPrepSingleLog:
  13. Anti-(Recycle Bin+Profile) • Команды: rundll32.exe shsetup.dll,Sysprep_Cleanup_Shell rundll32.exe shsetup.dll,#4 • Активность:

    1. функция SHEmptyRecycleBinW удаляет файлы из Корзины; в данном случае происходит удаление содержимого Корзины со всех дисков; 2. очистка ключей (у всех пользователей): HKCU\Software\Microsoft\Windows\CurrentVers ion\Explorer\RecentDocs HKCU\Software\Microsoft\Windows\CurrentVers ion\Explorer\RunMRU 3. удаляет файлы из каталогов, указанных в значениях след. параметров (у всех пользователей): HKCU\Environment\TEMP HKCU\Software\Microsoft\Windows\CurrentVers ion\Explorer\User Shell Folders\Recent Например: %UserProfile%\AppData\Roaming\Microsoft\ Windows\Recent %UserProfile%\AppData\Local\Temp Sysprep_Cleanup_Shell:
  14. Unjoin from the domain • Команды: rundll32.exe spnet.dll,Sysprep_Clean_Net rundll32.exe spnet.dll,#1

    • Активность: 1. вывод хоста из домена Active Directory. Sysprep_Clean_Net: UnjoinNetworkDomain:
  15. Разряженные файлы • Разряженные файлы (sparse files) — это такие

    файлы, которые занимают меньше дискового пространства, чем их собственный размер. Вместо этого, в файле высвобождаются области, занятые одними лишь нулями (0x00). Приложение, читающее разреженный файл, дойдя до области с нулями, прочитает нули, но реального чтения с диска не произойдёт (поддерживается в NTFS). • Создание разряженного файла в cmd: fsutil file createnew 1.txt 1000000000 fsutil sparse setflag 1.txt fsutil sparse setrange 1.txt 0 1000000000 • Копирование разряженного файла в cmd: echo F | xcopy /SPARSE .\1.txt .\2.txt • При добавлении разряженного файла в архив флаг sparse не учитывается, и файл будет полностью скопирован со сжатием. Следовательно, это влияет на размер архива и время его упаковки/распаковки! * — https://learn.microsoft.com/en-us/windows/win32/fileio/sparse-files
  16. Пример с разряженными файлами (KAPE) 1. Поиск файлов осуществляется с

    помощью рег. выражений: 2. Созданы разряженные файлы: 3. Запущена утилита KAPE: 4. Файлы были скопированы без учёта флага sparse:
  17. Монотонное время • CLOCK_BOOTTIME — измеряет время с момента загрузки

    системы, но включает периоды, когда система была в состоянии сна или приостановлена. • Монотонное время указано в след. источниках: 1. Журнал событий /var/log/kern.log — содержит сообщения от ядра и предупреждения, которые могут быть полезны при устранении ошибок, произошедших при работе пользовательских модулей встроенных в ядро. 2. События от оборудования и драйверов устройств находятся в файле /var/log/dmesg. В этом файле фиксируются ошибки работы драйверов и оборудования. 3. Служба systemd-journald собирает журналы из различных источников (/var/log/journal/*).
  18. Легенды об истории подключений • Список журналов, где присутствуют успешные

    попытки входа по протоколу SSH: /var/log/auth.log (/var/log/secure) /var/log/lastlog /var/log/wtmp /var/log/journal/* • Удаление следов аутентификации по протоколу SSH скомпрометированной учётной записи root из журнала wtmp с помощью штатной утилиты utmpdump на хосте: utmpdump /var/log/wtmp utmpdump /var/log/wtmp | grep -v "\[USERNAME" > .q utmpdump -r < .q> /var/log/wtmp rm .q • Атакующие очищают не все источники, куда заносится информация по успешным удалённым подключениям (например, только wtmp и auth.log)
  19. Что мы скажем автоматизации? Да! • Список утилит, которые использовались

    злоумышленниками в реальных кейсах, для очистки логов на Linux системах: 1. CoverMyAss* [группировка SCATTERED SPIDER]; 2. MoonWalk** [группировка SCATTERED SPIDER]; 3. WIPERIGHT*** [группировка UNC2891]; 4. MIGLOGCLEANER**** [группировка UNC2891]. * — https://github.com/sundowndev/covermyass ** — https://github.com/mufeedvh/moonwalk *** — http://www.afn.org/~afn28925/wipe.c **** — https://github.com/Kabot/mig-logcleaner-resurrected