Проблема
Извлечение артефактов памяти работающего процесса без его остановки (kill) через Volatility — требует дампа всей ОЗУ или конкретного процесса без прерывания сервиса.
Причины
- Volatility анализирует статический дамп памяти, а не живую систему.
- Остановка процесса (kill -9, Taskkill) уничтожает состояние (открытые дескрипторы, сетевые соединения, данные в куче).
- Прямое чтение /proc/PID/mem или использование gcore может временно приостановить процесс (SIGSTOP), что недопустимо.
Решение
1. Создать дамп всей ОЗУ без остановки процессов:
- Windows: WinPmem (драйвер, не прерывает работу) → `winpmem_mini.exe mem.raw`
- Linux: AVML (Acquire Volatile Memory for Linux) → `sudo ./avml mem.dump` (неинвазивно, без остановки)
2. Передать дамп в Volatility с правильным профилем:
`volatility -f mem.raw --profile=`
3. Извлечь память интересующего процесса без его остановки:
- Windows: `volatility -f mem.raw --profile=Win10x64 memdump -p -D ./output/`
- Linux: `volatility -f mem.dump --profile=LinuxUbuntu... linux_proc_memdump -p -D ./output/`
Процесс остаётся активным в исходной системе.
4. Для анализа артефактов (сокеты, файлы, реестр) запускать соответствующие плагины Volatility на дампе, не обращаясь к живому процессу.
Пример полной цепочки (Linux)
`sudo ./avml mem.dump`
`volatility -f mem.dump --profile=LinuxUbuntu1904x64 linux_proc_memdump -p 1234 -D extracted/`
`volatility -f mem.dump --profile=LinuxUbuntu1904x64 linux_bash` – проверка истории команд процесса (если /bin/bash).
Поддержите автора и задайте вопрос экспертам
Вступайте в нашу группу ВКонтакте, чтобы поддержать проект и получить консультацию экспертов по этой теме
Содержание темы
Ответы (0)
Пока нет ответов. Станьте первым, кто ответит!