Как установить volatility в linux
Обновлено: 04.07.2024
Не смотря на разнообразие средств защиты, с каждым годом количество взломов все возрастает. После того, как был выявлен факт компрометации системы, можно, конечно, сразу отформатировать диски и восстановить ее с нуля, но где гарантия, что атака не повторится, а в бэкапе нет закладок? Чтобы в последствии избежать проблем, следует досконально выяснить, что и как произошло. Forensic инструменты помогут нам в этом.
Первые шаги
Анализируем файловую систему
Теперь данные никуда не денутся, и их можно исследовать. Утилита mmls позволяет вывести таблицу разделов и найти неиспользованные сектора, которые не показывает `fdisk -l`. Они могут появляться как в следствие атак, так и в случае ошибок работы программ разметки диска.
Смотрим статистику по образу и файловым системам, занятым и свободным блокам:
Теперь приступаем к исследованию. При помощи утилиты mactime нам нужно узнать, какие inode изменялись с определенного времени или в интересующем нас интервале. На вход необходимо подать файл, созданный при помощи `ils -m` или `fls -m`.
Спасаем файлы
На данный момент обладаем информацией о подозрительных inodes. Используя icat, можем скопировать файл по номеру inode.
Теперь при помощи команды `file delete_file` узнаем, что это за файл. При удачном стечении обстоятельств, восстановленный таким образом бинарник без проблем выполняется. Натравив grep, можем попробовать найти нужные ключевые слова (вроде password, login). Кстати, команда `img_cat fs.img` позволяет вывести контент всего диска или определенной части (оставив метаданные), преобразовав его из raw, правда, искать в этой куче очень тяжело.
Написав небольшой скрипт, можно попытаться восстановить все удаленные файлы.
Итак, мы нашли и спасли несколько удаленных файлов, чтобы получить больше информации, используем istat.
Теперь мы знаем данные о размере файла, владельце, режимах, времени доступа и, главное, номера дисковых блоков, куда записан файл.
Состояние конкретного блока на диске получаем при помощи blstat:
Теперь при помощи blkcat мы можем прочитать, что записано в этом блоке или секторе. Поддерживается несколько форматов вывода: raw, текст ASCII (-а), hexdump (-h), выводить статистику (-s), просматривать файл подкачки (-f swap), HTML (-w) и другие.
В output найдем восстановленные файлы и отчет.
Анализируем данные
Собираем информацию о состоянии ОЗУ
Найти крошечный зловред на терабайтном харде это все равно, что иголку в стогу сена. Оперативная память компьютера на порядок меньше по объему, и ее анализ может значительно сократить время исследования. Например, некоторые типы вирусов живут только в ОЗУ, а тело на диске нередко шифруют, поэтому данные можно найти только на живой системе. В Linux стандартные утилиты ps, netstat и lsof позволяют собрать общую информацию о процессах и сетевых соединениях, но ее не всегда достаточно, поскольку зловред может скрывать от них свое присутствие.
Модуль ядра fmem (hysteria.sk/
Получаем файл module.dwarf. Создаем профиль.
Заключение
Недавно закончился OtterCTF (для интересующихся — ссылка на ctftime), который в этом году меня, как человека, достаточно плотно связанного с железом откровенно порадовал — была отдельная категория Memory Forensics, которая, по сути, представляла из себя анализ дампа оперативной памяти. Именно ее я хочу разобрать в этом посте, всем кому интересно — добро пожаловать под кат.
Введение
Возможно, на Хабре уже были статьи, описывающие работу с Volatility, но, к сожалению, я их не нашел. Если не прав — киньте в меня ссылкой в комментариях. Эта статья преследует две цели — показать, насколько бессмысленны все попытки администратора защитить систему, в случае если у атакующего есть дамп оперативной памяти и познакомить читателей с самым прекрасным, на мой взгляд, инструментом. Ну и, конечно же, обменяться опытом. Достаточно воды, приступим!
Знакомство с инструментом
Volatility — open-sorce фреймворк, который развивается сообществом. Написан на втором питоне и работает с модульной архитектурой — есть т.н. плагины, которые можно подключать для анализа и даже можно писать самому недостающие. Полный список плагинов, которые доступны из коробки можно посмотреть с помощью volatility -h .
Из-за питона инструмент кроссплатформенный, поэтому проблем с запуском под какой-то популярной ОС, на которой есть питон возникнуть не должно. Фреймворк поддерживает огромное количество профилей (в понимании Volatility — системы, с которых был снят дамп): от популярных Windows-Linux-MacOs до "напрямую" списанных dd-дампов и дампов виртуальных машин (как QEMU, так и VirtualBox). По-моему, очень неплохой наборчик.
Мощь этого инструмента действительно потрясает — я наткнулся на него в момент отлаживания своего ядра для ARM'a и он прекрасно анализировал то, что я давал ему на вход
Как бонус — поддержка почти любого адресного пространства, которое можно себе вообразить.
Кажется, пиара получилось чуть больше, чем планировалось изначально. Давайте попробуем заняться самим анализом.
Базовая информация и поверхностный анализ
Для тех, кто хочет проделывать все манипуляции по ходу статьи — ссылка на Mega с образом или можно с помощью wget:
Итак, образ у нас в руках, можно начинать анализ. Для начала, нужно понять, с какой системы снимали дамп. Для этого у волатилити есть прекрасный плагин imageinfo . Просто запускаем
В нашем случае выхлоп будет примерно следующим:
Итак, мы получили почти исчерпывающую информацию о нашем дампе — предположительно, с какой ОС он был сделан (отсортировано в порядке вероятности), локальную дату и время на момент снятия дампа, адресацию и еще много чего. Итак, мы поняли, что перед нами дамп Windows 7 Service Pack 1 x64. Можно копать вглубь!
What's the password
Так как это своеобразный райтап, то я буду давать формулировку задачи и потом описывать, как ее решить с помощью волатилити.
Первая задача — достать пароль пользователя
Для начала, поймем, какие пользователи были в системе и, заодно, попробуем достать их пароли. Сами пароли достать сложнее, а поэтому понадеемся на то, что нам попался не очень умный человек и получится вскрыть хеш от его пароля. Остается достать его! Для этого попробуем посмотреть _CMHIVE — как правило, там всегда можно найти что-то интересное во время работы Windows. Для этого просто подключим плагин hivelist , при этом указав Win7 в профиле:
Прекрасно! Мы, предположительно, получили имя пользователя и, заодно, убедились, что нужные нам SYSTEM и SAM уже подгружены в память. Теперь просто достаем хеши и идем перебирать:
По итогу, у нас есть три пользователя — Administrator(31d6cfe0d16ae931b73c59d7e0c089c0) , Guest(31d6cfe0d16ae931b73c59d7e0c089c0) и наш Rick(518172d012f97d3a8fcc089615283940) . Хеши Windows 7 это NTLM и перебирать их реально долго. Могу сказать, что я у себя занимался этим почти сутки на игровой видеокарте и так и не пришел ни к чему. Поэтому можно пойти более простым путем и попробовать пробиться с помощью mimikatz . Не всегда панацея и не всегда работает, но, зато, если работает, то выдает результат всегда. Тут пригождается та самая универсальность volatility — есть пользовательский плагин mimikatz. Скачиваем в любую удобную папку и далее при запуске указываем путь к этой папке:
И сразу же получаем пароль пользователя:
General Info
Теперь, когда мы знаем, кто мы, надо бы понять, где мы. То есть хорошо бы узнать наш IP-адрес и имя машины. В случае с IP-адресом все просто — смотрим на список подключений на момент дампа с помощью netscan :
IP 192.168.202.131 найден. Конечно, это IP в локальной сети, но, к сожалению, из дампа больше не вытащишь — для того, чтобы достать внешний IP нужно побольше, чем просто дамп. Теперь достанем имя компа. Для этого просто прочитаем ветку SYSTEM реестра:
Супер, мы получили имя компа WIN-LO6FAF3DTFE .
Play Time
Пользователь любит играть в старые видеоигры. Требуется найти название его любимой игры и IP-адрес ее сервера
Просто смотрим на выхлоп netscan на предыдущем шаге и видим странные процесссы — LunarMS.exe . Гуглим — действительно, это видеоигра. Там же можно и найти IP-адрес, с которым открыто соединение — 77.102.199.102
Name game
Мы знаем, что пользователь залогинен в канал Lunar-3. Но какое имя аккаунта?
Так как пользователь залогинен в этот канал, то имя должно быть просто в виде plain-text в дампе. Делаем strings и получаем флаг:
Из всех строк больше всего напоминает флаг 0tt3r8r33z3 . Пробуем и действительно — это он и есть!
Silly Rick
Наш пользователь всегда забывает свой пароль, поэтому он использует менеджер паролей и просто копирует нужный пароль, когда нужно войти. Может быть, вам удастся что-то узнать?
Судя по формулировке надо просто достать содержимое буфера обмена. На это у Volatility есть ответ — плагин clipboard . Проверяем и видим пароль:
Hide and Seek
Причина тормозов компьютера в вирусе, который уже давно сидит в системе. Может быть, вы сможете его найти? Будьте осторожны, у вас только три попытки, чтобы сдать этот флаг!
Ну что же, если у нас три попытки, то будем осторожны, как нам и посоветовали =)
Для начала, получим список всех процессов с помощью pslist :
Мда. Как-то не очень удобно анализируемо. У нас есть еще один плагин — pstree , который выводит процессы в виде дерева (что, в общем-то, логично):
Ага! Есть подозрительные строчки
Как мы видим, процесс с PID'ом 3820 порождает процесс с PID'ом 3720. Повод проанализировать обоих. Для начала получим список dll-библиотек, которые используют процессы:
Так. Exe в папке с торрентами? Как-то странно. Еще и ntdll.dll тоже не внушает доверия. Попробуем получить список dll, которые использует процесс 3720:
Вау. А вот это совсем ненормально. Значит, первое предположение, что это именно тот троянчик, который мы ищем. Сдампим процесс с помощью memdump и проанализируем его любым декомпилятором:
Bit by Bit и Graphics is for the weak
Найдите адрес биткойн-кошелька злоумышленника, который заразил компьютер вирусом!
Во время анализа из предыдущего пункта можно было легко заметить адрес 1MmpEmebJkqXG8nQv4cjJSmxZQFVmFo63M , который и является флагом. Аналогично из этого же бинарника можно получить картинку с флагом для еще одной задачи, поэтому обьединяю их в один пункт
Recovery
Вымогатель зашифровал файлы. Помогите пользователю восстановить к ним доступ!
По сути, эта задача тоже относится к бинарнику, но я вынес ее в отдельный пункт, потому что она очень сильно напоминает будни аналитика разной малвари и будет полезно показать процесс целиком. Открываем бинарник и находим функцию CreatePassword . По-моему, это "жжж" неспроста:
Как мы видим, пароль действительно случайный. Но мы знаем регулярное выражение abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890*!=&?&/ , которому удовлетворяет наш пароль. Теперь, если есть функция создания пароля, где-то должна быть функция его применения :D
Немного пролистав, находим и ее:
Ну уже кое-что новое, теперь мы знаем, что длина пароля 15 символов. Попробуем вытащить его из дампа процесса и сразу же оценим, насколько все плохо:`
Неплохо. Можно, конечно, посидеть поперебирать ручками, но это как-то слишком. Применим немного черной магии!
Команда выглядит страшно, но стоит немного в нее вглядется и она становится кристально очевидной. Если это не так — опять-таки пинайте в комментариях, разберу по кирпичикам. А тем временем, мы сократили количество с миллиона до каких-то жалких трех тысяч. Посмотрим, что это за строки:
К сожалению, тут я не придумал элегантного решения и поэтому дальше исключительно логические рассуждения. Как мы помним с момента реверса наш бинарник содержит открытый ключ b03f5f7f11d50a3a . Что же, попробуем найти его в наших почти 3K строках руками. Ну или не совсем :) Для этого немного поменяем нашу команду:
Итак, судя по этому выводу ключ где-то наверху предыдущего вывода. Первых строк, похожих на ключ не так много и тут действительно придется воспользоваться древним заклинанием BruteForce
Понятно, что не все строчки в нашей выборке являются ключами — более того, не все на него похожи. Так что количество вариантов сокащается еще сильнее. Пробуем подряд и на втором варианте находим ключ aDOBofVYUNVnmp7 , который и является флагом.
Вместо заключения
Блог творческого ИТ-практика. Возьми свою мысль и дай ей ускорение идеи. В моем фокусе: сети, безопасность, виртуализация, web, мультимедиа.
А А Saturday, 7 August 2021
Анализ дампа памяти фреймворком Volatility.
Криминалистический анализ дампов памяти - метод исследования, который включает в себя поиск и извлечение криминалистических артефактов из физической памяти компьютера (ОЗУ). В памяти компьютера хранится ценная информация о состоянии системы во время выполнения. Создание дампа памяти и его анализ дадут необходимую для расследования информацию, например о том, какие приложения работают в системе, к каким объектам (файлу, реестру и т. д.) эти приложения обращаются, сведения об актив ных сетевых соединениях, загруженных модулях, загруженных драйверах ядра и другую информацию. По этой причине криминалистический анализ дампов памяти используется при реагировании на компьютерные инциденты и анализе вредоносных программ.
В большинстве случаев вы можете сделать дамп памяти виртуальной машины, приостановив ее. Например, после выполнения образца вредоносного ПО на рабочей станции VMware вы можете приостановить виртуальную машину, которая запишет гостевую память (RAM) в файл с расширением .vmem на диске главного компьютера. В случае с такими приложениями, как VirtualBox, когда дамп памяти нельзя сделать путем приостановки, вы можете использовать утилиту типа DumpIt на гостевом компьютере.
После того как вы сделали дамп памяти зараженной системы, следующим шагом является анализ полученного образа. Volatility представляет собой лучший фреймворк для компьютерной криминалистики с открытым исходным кодом, написанный на Python, позволяющий анализировать и извлекать цифровые артефакты из образа памяти. Volatility может работать на различных платформах (Windows, macOS и Linux). Он поддерживает анализ памяти из 32-разрядных и 64-разрядных версий Windows, MacOS и операционной системы Linux.
Volatility состоит из ряда плагинов, которые могут извлекать различную информацию из образа памяти. Команда volatility-2.4.standalone.exe -h отображает поддерживаемые плагины.
Вы можете не знать, какой профиль использовать для вашего дампа. В этом случае вы можете использовать плагин imageinfo, который определит правильный профиль. Следующая команда отображает несколько профилей, предлагаемых плагином imageinfo. Вы можете использовать любой из предложенных фреймворком:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" imageinfo
Следующая команда использует плагин pslist для вывода списка запущенных процессов из образа памяти, полученного из Windows ХР (32-разрядная версия) с пакетом обновления 3:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 pslist --output-file=process.txt
Вывод по процессу с PID 684:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 pslist -p 684
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 psscan -v
При изучении процессов может быть полезно определить родительские/дочерние связи между процессами. В ходе исследования вредоносных программ это поможет вам понять, какие еще процессы связаны с вредоносным процессом. Плагин pstree отображает связи родительских и дочерних процессов, используя выходные данные из pslist и форматируя их в виде дерева. В следующем примере при запуске плагина pstree для зараженного образа памяти отображается связь процессов; дочерний процесс имеет отступ вправо и начинается с периодов:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 pstree --output-file=prctree.txt
Злоумышленник может установить драйвер ядра для запуска в пространстве ядра и изменить теги пула или любое другое поле в _POOL_HEADER. Изменяя тег пула, злоумышленник может помешать правильной работе плагинов, которые полагаются на сканирование тегов пула. Другими словами, изменяя тег пула, можно скрыть процесс от psscan. Чтобы преодолеть эту проблему, плагин psxview использует извлечение информации о процессе из разных источников. Он перечисляет процесс семи разными способами. Сравнивая выходные данные из разных источников, можно обнаружить несоответствия, вызванные вредоносным ПО. На следующем скриншоте psxview перечисляет процессы, используя семь различных методов:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 psxview --apply-rules
Вы также можете отфильтровать результаты для определенного типа объекта (Файл, Ключ, Процесс, Мьютекс и т. д.), используя опцию -t. Плагин используется для вывода списка мьютексов (mutex), открытых процессом (с pid 588):
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 handles -p 588 -t Mutant
В следующем примере образа памяти, зараженного руткитом TDL3, процесс svchost.exe (pid 884) имеет открытые дескрипторы файлов для вредоносной библиотеки DLL и драйвера ядра, связанного с руткитом:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 handles -p 884 -t File
Чтобы вывести список загруженных модулей (исполняемых файлов и библиотек DLL), вы можете использовать плагин dlllist. Плагин dlllist также отображает полный путь, связанный с процессом:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 dlllist -p 1300
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 ldrmodules -p 1300
В следующем примере образа памяти, зараженного вредоносным ПО, подключаемый модуль procdump используется для сброса исполняемого файла вредоносного процесса svchost.exe (pid 956). При помощи опции -D (--dump-dir) вы указываете имя каталога, в который выгрузите исполняемые файлы. Файл назван на основе pid процесса, такого как executable.PID.exe:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 procdump -p 956 -D C:\JeaDemo
Следующая команда показывает пример использования плагина connections для вывода на экран активных подключений из дампа памяти:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 connections
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 connscan
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 netscan
Чтобы вывести на экран раздел реестра, подразделы и его значения, вы можете использовать плагин printkey, предоставляя желаемый путь к ключу реестра, используя аргумент -K (--key):
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 printkey -K "Microsoft\Windows\CurrentVersion\Run"
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 printkey -K "Software\Microsoft\Windows\CurrentVersion\Run"
Плагины Volatility, такие как userassist, shellbags и shimcache, анализируют эти ключи реестра, содержащие двоичные данные, и отображают информацию в гораздо более удобочитаемом формате. Раздел реестра Userassist содержит список программ, которые были выполнены пользователем в системе, и время, когда программа была запущена:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 userassist
Плагины shimcache и shellbags могут быть полезны при расследовании инцидента с вредоносным ПО. Плагин shimcache может быть полезен для доказательства наличия вредоносного ПО в системе и времени его работы. Плагин shellbags может предоставлять информацию о доступе к файлам, папкам, внешним устройствам хранения и сетевым ресурсам:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 shimcache
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 shellbags
Чтобы вывести список служб и информацию о них, например отображаемое имя, тип службы и тип запуска, из образа памяти, можно использовать плагин svcscan:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 svcscan
Плагин cmdscan перечисляет команды, выполняемые cmd.exe:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 cmdscan
Плагин cmdscan отображает команды, выполненные злоумышленником. Чтобы понять, была команда выполнена успешно или нет, можно использовать плагин consoles:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 consoles
Что осталось в истории web-браузера:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 iehistory
Что осталось в буфере обмена:
:volatility-2.4.standalone.exe -f "Clone of WinXP_ZverCD.vmem" --profile=WinXPSP3x86 clipboard
Так что изучайте плагины фреймворка и память ПК. Удачи.
Анализ оперативной памяти часто используется, когда у нас был физический доступ к машине и получилось снять слепок оперативной памяти. По нему можно определить, какие приложения запускались во время этого сеанса, потому что, пока человек не выключил или не перезагрузил компьютер, в оперативной памяти хранится интересующая нас информация (например, данные процессов).
Еще интересные данные можно найти в файлах подкачки ( pagefile. sys ) и гибернации ( hiberfil. sys ). Для *nix-based-систем стоит поискать в swap-разделе.
Для анализа дампов памяти существует несколько приложений, которые на слуху у всех, кто хоть раз имел дело с задачами на форензику: это Volatility, Memoryze и Autopsy (в связке с Volatility). Есть, конечно, и другие, но подробно мы на них останавливаться не будем.
Крупные решения вроде Autopsy хороши тем, что позволяют произвести комплексный анализ всего слепка одной кнопкой, однако цена за это — большое время работы программы. На соревнованиях обычно необходимо делать задачу максимально быстро, поэтому использовать мы будем Volatility. В «Хакере» уже были статьи, связанные с этим чудесным инструментом, так что, если ты новичок в теме, стоит сначала ознакомиться с ними.
Задание
Вот как выглядело условие задачи. Нам дан непосредственно слепок оперативной памяти и его хеш MD5 для проверки.
У меня есть самый безопасный менеджер паролей. Даже если ты украдешь мой ноутбук, ты не сможешь узнать мои секреты.
Подсказка: Удаленный не значит обязательно браузер
Закачаем наш образ на машину, где будем проводить анализ (у меня это Kali):
И сразу же проверим, что с ним все в порядке:
Если хеш не сошелся с исходным хешем — придется еще раз скачать архив.
О важности актуальных версий
Ни для кого не секрет, что с каждым обновлением любого инструмента разработчики стараются добавить новые возможности и убрать старые недокументированные возможности баги. В операционных системах семейства Linux есть встроенные менеджеры пакетов, которые существенно упрощают установку и обновление программ. Из‑за этого большинство людей первым делом лезет в свой пакетный менеджер, чтобы установить оттуда программу.
Однако здесь есть небольшие шероховатости: разработчик может забыть (или забить?) обновить пакет в репозитории. В таких случаях приходится искать исходники и собирать актуальную версию самостоятельно.
Те, кто знаком с Volatility, знают о его особенностях. Например, что он использует так называемые профили, которые позволяют правильно распарсить весь слепок оперативной памяти, и энтузиасты постоянно обновляют их список. Разумеется, профиль можно сделать и самостоятельно, но явно проще воспользоваться готовыми. Во время соревнования я столкнулся с тем, что давно не обновлял свой Volatility и нужных профилей для решения задачи у меня не оказалось.
Чтобы с тобой не случилось подобного, перед началом решения задачи я настоятельно рекомендую обновить (или установить) Volatility с гитхаба проекта.
Определяем профиль
Первым делом нам необходимо определить версию операционной системы, с которой снимали слепок. Это можно сделать командой imageinfo :
Нам нужно обратить внимание на строчку с Suggested Profile(s). Именно здесь нам говорят, что предполагаемый профиль слепка оперативной памяти — Win10x64_18362 . Теперь мы должны указывать аргумент --profile Win10x64_18362 для последующих команд.
Полная документация по Volatility есть в Wiki по инструменту на GitHub.
Собираем информацию о машине
Какую информацию имеет смысл добыть вначале? Обычно это:
- процессы;
- история браузера;
- история запущенных команд в консоли.
Этих трех пунктов хватает для определения вектора дальнейшей разведки.
Процессы
Чтобы найти процессы, нам достаточно использовать команду pstree . Есть еще pslist , но первая команда удобнее, потому что показывает процессы в виде дерева — так намного проще понять, на какие из них стоит обратить внимание.
$ vol. py -f challenge. vmem --profile Win10x64_18362 pstreeНичего бросающегося в глаза, вроде pswd_manager. exe или not_a_virus. exe , не видно, поэтому продолжим нашу разведку.
Продолжение доступно только участникам
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Читайте также: