Изображение


Velociraptor — это мощная платформа с открытым исходным кодом для цифровой криминалистики и инцидент-ответа, созданная для оперативного сбора информации с endpoints. Название инструмента отражает его ключевую особенность — высокую скорость работы. Velociraptor даёт возможность экспертам-криминалистам и специалистам по информационной безопасности собирать артефакты с удалённых систем в режиме реального времени, не требуя инсталляции агентов на целевые машины.

Содержание

1. Введение: Что такое Velociraptor
2. Архитектура Velociraptor: как это работает
3. Что такое артефакты в Velociraptor
4. Категории артефактов: обзор 90+ артефактов
5. Артефакты Windows: системная информация
6. Артефакты Windows: процессы и сеть
7. Артефакты Windows: реестр и файлы
8. Артефакты Linux: системная информация
9. Артефакты macOS: системная информация
10. Артефакты для инцидент-ответа
11. Практические примеры использования
12. Оптимизация сбора артефактов
13. Часто задаваемые вопросы
14. Заключение: Быстрая форензика с Velociraptor



Введение: Что такое Velociraptor


Velociraptor является системой для мониторинга endpoints и цифровой криминалистики, которая применяет Velociraptor Query Language (VQL) для выполнения запросов на удалённых системах. Платформа поддерживает Windows, Linux и macOS, обеспечивая единый интерфейс для сбора информации с различных операционных систем.

В отличие от классических инструментов форензики, которые требуют физического доступа к устройству или инсталляции специального программного обеспечения, Velociraptor функционирует через агент, который может быть развёрнут удалённо или запущен локально. Это делает его оптимальным инструментом для оперативного реагирования на инциденты безопасности и проведения расследований.

В данном руководстве мы изучим более 90 артефактов Velociraptor, которые можно применять для оперативной форензики endpoints. Вы узнаете, как собирать системную информацию, анализировать процессы, исследовать сетевую активность, работать с реестром Windows и выполнять множество других задач цифровой криминалистики.



Архитектура Velociraptor: как это работает


Понимание архитектуры Velociraptor критически важно для продуктивного применения платформы. Velociraptor применяет клиент-серверную архитектуру, где сервер управляет коллекциями и агентами, а клиенты выполняют запросы на целевых системах.

Компоненты Velociraptor


Сервер:
Сервер Velociraptor управляет всеми операциями, хранит результаты коллекций и предоставляет веб-интерфейс для управления. Сервер может быть развёрнут локально или в облачной среде.

Агент:
Агент — это исполняемый файл, который запускается на целевой системе. Агент подключается к серверу и выполняет запросы VQL, отправляя результаты обратно на сервер.

VQL (Velociraptor Query Language):
VQL — это язык запросов, применяемый для определения того, какие данные собирать. VQL похож на SQL, но оптимизирован для работы с системными данными.

Принцип работы


Подключение агента:
Агент подключается к серверу через защищённое соединение. Соединение может быть инициировано агентом (outbound) или сервером (inbound).

Выполнение запросов:
Сервер отправляет запросы VQL агенту, который выполняет их на целевой системе и возвращает результаты.

Сбор данных:
Результаты запросов сохраняются на сервере и могут быть проанализированы через веб-интерфейс или экспортированы для дальнейшего анализа.



Что такое артефакты в Velociraptor


Артефакты в Velociraptor — это предопределённые коллекции VQL-запросов, которые собирают определённые типы данных с целевой системы. Каждый артефакт предназначен для сбора конкретной информации, такой как список процессов, сетевые соединения, записи реестра или файлы.

Структура артефакта


Имя артефакта:
Уникальное имя, идентифицирующее артефакт.

Описание:
Текстовое описание того, что собирает артефакт.

Источники:
VQL-запросы, которые определяют, какие данные собирать и откуда.

Параметры:
Настраиваемые параметры, которые можно изменить при запуске коллекции.

Типы артефактов


Системные артефакты:
Собирают информацию о системе: версию ОС, установленное ПО, аппаратное обеспечение.

Артефакты процессов:
Собирают информацию о запущенных процессах, их параметрах и зависимостях.

Сетевые артефакты:
Собирают информацию о сетевых соединениях, открытых портах, активных подключениях.

Файловые артефакты:
Собирают информацию о файлах: метаданные, содержимое, расположение.

Артефакты реестра:
Собирают данные из реестра Windows: ключи, значения, историю изменений.



Категории артефактов: обзор 90+ артефактов


Velociraptor включает более 90 встроенных артефактов, организованных по категориям. Рассмотрим основные категории и количество артефактов в каждой.

Windows артефакты (50+)


Системная информация (10 артефактов):
- Windows.System.SystemInfo
- Windows.System.Users
- Windows.System.Computer
- Windows.System.InstalledPrograms
- Windows.System.Services
- Windows.System.ScheduledTasks
- Windows.System.EventLogs
- Windows.System.Timezone
- Windows.System.Environment
- Windows.System.Hotfixes

Процессы и память (8 артефактов):
- Windows.System.Pslist
- Windows.System.ProcessTree
- Windows.System.Modules
- Windows.System.Handles
- Windows.System.VAD
- Windows.Memory.ProcessInfo
- Windows.Memory.ProcessDump
- Windows.Memory.YaraScan

Сеть (7 артефактов):
- Windows.Network.Connections
- Windows.Network.Sockets
- Windows.Network.Arp
- Windows.Network.Routes
- Windows.Network.DNS
- Windows.Network.Proxy
- Windows.Network.Firewall

Реестр (10 артефактов):
- Windows.Registry.NTUser
- Windows.Registry.System
- Windows.Registry.Software
- Windows.Registry.SAM
- Windows.Registry.Run
- Windows.Registry.Services
- Windows.Registry.Startup
- Windows.Registry.Shellbags
- Windows.Registry.UserAssist
- Windows.Registry.RecentDocs

Файлы и диски (8 артефактов):
- Windows.Filesystem.DirectoryListing
- Windows.Filesystem.FileInfo
- Windows.Filesystem.NTFS
- Windows.Filesystem.Usn
- Windows.Filesystem.MFT
- Windows.Filesystem.Prefetch
- Windows.Filesystem.LnkFiles
- Windows.Filesystem.JunctionPoints

Безопасность (7 артефактов):
- Windows.Security.Events
- Windows.Security.AuditLogs
- Windows.Security.LSA
- Windows.Security.Credentials
- Windows.Security.Certificates
- Windows.Security.BrowserHistory
- Windows.Security.AMCache

Linux артефакты (25+)


Системная информация (8 артефактов):
- Linux.System.SystemInfo
- Linux.System.Users
- Linux.System.Packages
- Linux.System.Services
- Linux.System.Cron
- Linux.System.Modules
- Linux.System.Mounts
- Linux.System.Environment

Процессы (6 артефактов):
- Linux.System.Processes
- Linux.System.ProcessTree
- Linux.System.OpenFiles
- Linux.System.Netstat
- Linux.System.Lsof
- Linux.Memory.ProcessDump

Сеть (5 артефактов):
- Linux.Network.Interfaces
- Linux.Network.Connections
- Linux.Network.Routes
- Linux.Network.Arp
- Linux.Network.Iptables

Файлы (6 артефактов):
- Linux.Filesystem.DirectoryListing
- Linux.Filesystem.FileInfo
- Linux.Filesystem.Find
- Linux.Filesystem.Stat
- Linux.Filesystem.History
- Linux.Filesystem.SudoLogs

macOS артефакты (15+)


Системная информация (6 артефактов):
- macOS.System.SystemInfo
- macOS.System.Users
- macOS.System.InstalledApplications
- macOS.System.LaunchAgents
- macOS.System.LaunchDaemons
- macOS.System.Environment

Процессы (4 артефакта):
- macOS.System.Processes
- macOS.System.ProcessTree
- macOS.System.OpenFiles
- macOS.Memory.ProcessDump

Сеть (3 артефакта):
- macOS.Network.Interfaces
- macOS.Network.Connections
- macOS.Network.Routes

Файлы (2 артефакта):
- macOS.Filesystem.DirectoryListing
- macOS.Filesystem.FileInfo



Артефакты Windows: системная информация


Windows артефакты для сбора системной информации служат основой любого расследования. Они предоставляют базовую информацию о системе, которая необходима для понимания контекста.

Windows.System.SystemInfo


Собирает основную информацию о системе:
- Версия Windows
- Архитектура процессора
- Объём памяти
- Имя компьютера
- Доменное имя
- Время работы системы
- Список установленных обновлений

Использование:
windows
.System.SystemInfo


Результаты:
- OSVersion
- Architecture
- TotalMemory
- ComputerName
- DomainName
- Uptime
- Hotfixes

Windows.System.Users


Собирает информацию о пользователях системы:
- Имена пользователей
- SID (Security Identifier)
- Домашние директории
- Время последнего входа
- Группы пользователей

Использование:
windows
.System.Users


Результаты:
- Username
- SID
- HomeDirectory
- LastLogin
- Groups

Windows.System.InstalledPrograms


Собирает список установленных программ:
- Название программы
- Версия
- Издатель
- Дата установки
- Размер установки

Использование:
windows
.System.InstalledPrograms


Результаты:
- Name
- Version
- Publisher
- InstallDate
- Size

Windows.System.Services


Собирает информацию о системных службах:
- Имя службы
- Статус (запущена/остановлена)
- Тип запуска
- Путь к исполняемому файлу
- Описание

Использование:
windows
.System.Services


Результаты:
- Name
- State
- StartType
- BinaryPath
- Description

Windows.System.ScheduledTasks


Собирает информацию о запланированных задачах:
- Имя задачи
- Статус
- Время следующего запуска
- Команда выполнения
- Пользователь, от имени которого выполняется

Использование:
windows
.System.ScheduledTasks


Результаты:
- Name
- State
- NextRunTime
- Command
- RunAsUser



Артефакты Windows: процессы и сеть


Артефакты для анализа процессов и сетевой активности критически важны для обнаружения вредоносного ПО и аномальной активности.

Windows.System.Pslist


Собирает список всех запущенных процессов:
- PID (Process ID)
- Имя процесса
- Путь к исполняемому файлу
- Пользователь, запустивший процесс
- Использование памяти и CPU
- Время запуска

Использование:
windows
.System.Pslist


Результаты:
- Pid
- Name
- Exe
- Username
- MemoryUsage
- CpuUsage
- StartTime

Windows.System.ProcessTree


Создаёт дерево процессов с родительско-дочерними связями:
- Родительский процесс
- Дочерние процессы
- Иерархия процессов
- Время создания каждого процесса

Использование:
windows
.System.ProcessTree


Результаты:
- Pid
- Ppid
- Name
- CommandLine
- CreateTime

Windows.System.Modules


Собирает информацию о загруженных модулях (DLL):
- Имя модуля
- Путь к файлу
- Базовый адрес
- Размер модуля
- Процесс, загрузивший модуль

Использование:
windows
.System.Modules


Результаты:
- Name
- Path
- BaseAddress
- Size
- ProcessName

Windows.Network.Connections


Собирает информацию о сетевых соединениях:
- Локальный адрес и порт
- Удалённый адрес и порт
- Состояние соединения
- Процесс, использующий соединение
- Протокол (TCP/UDP)

Использование:
windows
.Network.Connections


Результаты:
- LocalAddress
- LocalPort
- RemoteAddress
- RemotePort
- State
- ProcessName
- Protocol

Windows.Network.Sockets


Собирает информацию о сокетах:
- Тип сокета
- Состояние
- Процесс, использующий сокет
- Адреса и порты

Использование:
windows
.Network.Sockets


Результаты:
- SocketType
- State
- ProcessName
- Addresses



Артефакты Windows: реестр и файлы


Артефакты для работы с реестром и файловой системой позволяют находить следы активности и конфигурации системы.

Windows.Registry.Run


Собирает записи автозагрузки из реестра:
- Ключи Run, RunOnce, RunServices
- Команды автозагрузки
- Значения параметров
- Пути к исполняемым файлам

Использование:
windows
.Registry.Run


Результаты:
- Key
- Value
- Data
- FullPath

Windows.Registry.UserAssist


Собирает данные UserAssist из реестра:
- Запущенные программы
- Количество запусков
- Время последнего запуска
- Пути к программам

Использование:
windows
.Registry.UserAssist


Результаты:
- ProgramName
- RunCount
- LastRunTime
- Path

Windows.Registry.Shellbags


Собирает данные Shellbags (история просмотра папок):
- Просмотренные папки
- Время просмотра
- Пути к папкам
- Пользователь, просмотревший папку

Использование:
windows
.Registry.Shellbags


Результаты:
- FolderPath
- ViewTime
- User
- KeyPath

Windows.Filesystem.Prefetch


Собирает данные из Prefetch файлов:
- Запущенные программы
- Время запуска
- Количество запусков
- Загруженные модули

Использование:
windows
.Filesystem.Prefetch


Результаты:
- ExecutableName
- RunCount
- LastRunTime
- LoadedModules

Windows.Filesystem.LnkFiles


Собирает информацию из ярлыков (.lnk файлов):
- Целевой файл
- Время создания ярлыка
- Время доступа
- Путь к ярлыку

Использование:
windows
.Filesystem.LnkFiles


Результаты:
- TargetPath
- CreateTime
- AccessTime
- LinkPath



Артефакты Linux: системная информация


Linux артефакты дают возможность собирать информацию с Linux-систем для форензического анализа.

Linux.System.SystemInfo


Собирает основную информацию о Linux системе:
- Версия ядра
- Дистрибутив
- Версия ОС
- Архитектура
- Время работы системы
- Информация о процессоре

Использование:
linux
.System.SystemInfo


Результаты:
- KernelVersion
- Distribution
- OSVersion
- Architecture
- Uptime
- CpuInfo

Linux.System.Users


Собирает информацию о пользователях:
- Имена пользователей
- UID/GID
- Домашние директории
- Оболочка пользователя
- Время последнего входа

Использование:
linux
.System.Users


Результаты:
- Username
- Uid
- Gid
- HomeDirectory
- Shell
- LastLogin

Linux.System.Packages


Собирает список установленных пакетов:
- Название пакета
- Версия
- Менеджер пакетов
- Дата установки

Использование:
linux
.System.Packages


Результаты:
- PackageName
- Version
- PackageManager
- InstallDate

Linux.System.Services


Собирает информацию о системных службах:
- Имя службы
- Статус
- Тип запуска
- Команда запуска

Использование:
linux
.System.Services


Результаты:
- Name
- State
- Enabled
- Command

Linux.System.Cron


Собирает информацию о cron задачах:
- Расписание выполнения
- Команда выполнения
- Пользователь
- Файл конфигурации

Использование:
linux
.System.Cron


Результаты:
- Schedule
- Command
- User
- ConfigFile



Артефакты macOS: системная информация


macOS артефакты дают возможность собирать данные с систем Apple для форензического анализа.

macOS.System.SystemInfo


Собирает основную информацию о macOS системе:
- Версия macOS
- Версия ядра
- Модель Mac
- Серийный номер
- Время работы системы

Использование:
macos
.System.SystemInfo


Результаты:
- OSVersion
- KernelVersion
- Model
- SerialNumber
- Uptime

macOS.System.Users


Собирает информацию о пользователях:
- Имена пользователей
- UID/GID
- Домашние директории
- Время последнего входа

Использование:
macos
.System.Users


Результаты:
- Username
- Uid
- Gid
- HomeDirectory
- LastLogin

macOS.System.InstalledApplications


Собирает список установленных приложений:
- Название приложения
- Версия
- Путь к приложению
- Дата установки

Использование:
macos
.System.InstalledApplications


Результаты:
- Name
- Version
- Path
- InstallDate

macOS.System.LaunchAgents


Собирает информацию о Launch Agents:
- Имя агента
- Статус
- Команда запуска
- Пользователь

Использование:
macos
.System.LaunchAgents


Результаты:
- Name
- State
- Program
- User

macOS.System.LaunchDaemons


Собирает информацию о Launch Daemons:
- Имя демона
- Статус
- Команда запуска

Использование:
macos
.System.LaunchDaemons


Результаты:
- Name
- State
- Program



Артефакты для инцидент-ответа


Специальные артефакты для оперативного реагирования на инциденты безопасности дают возможность быстро собирать критически важную информацию.

Windows.Investigation.ProcessListing


Быстрый сбор информации о процессах для инцидент-ответа:
- Все запущенные процессы
- Командные строки
- Родительские процессы
- Сетевая активность процессов

Использование:
windows
.Investigation.ProcessListing


Windows.Investigation.NetworkConnections


Сбор всех сетевых соединений:
- Активные соединения
- Прослушивающие порты
- Установленные соединения
- Процессы, использующие сеть

Использование:
windows
.Investigation.NetworkConnections


Windows.Investigation.Autoruns


Сбор всех точек автозагрузки:
- Реестр автозагрузки
- Планировщик задач
- Службы
- Startup папки

Использование:
windows
.Investigation.Autoruns


Windows.Investigation.FileTimeline


Создание временной линии файлов:
- Изменённые файлы
- Созданные файлы
- Удалённые файлы
- Временные метки

Использование:
windows
.Investigation.FileTimeline


Generic.Client.Info


Базовый сбор информации о клиенте:
- Системная информация
- Пользователи
- Сетевые интерфейсы
- Установленное ПО

Использование:
generic
.Client.Info




Практические примеры использования


Рассмотрим практические сценарии применения Velociraptor для форензического анализа.

Сценарий 1: Обнаружение вредоносного ПО


Задача: Найти признаки вредоносного ПО на системе.

Артефакты:
1. Windows.System.Pslist — список процессов
2. Windows.System.ProcessTree — дерево процессов
3. Windows.Network.Connections — сетевые соединения
4. Windows.Registry.Run — автозагрузка
5. Windows.Filesystem.Prefetch — история запуска программ

Анализ:
- Поиск подозрительных процессов
- Анализ сетевых соединений
- Проверка автозагрузки
- Изучение истории запуска программ

Сценарий 2: Расследование утечки данных


Задача: Определить, какие данные были скопированы с системы.

Артефакты:
1. Windows.Filesystem.Usn — журнал изменений файлов
2. Windows.Filesystem.LnkFiles — ярлыки
3. Windows.Registry.Shellbags — история просмотра папок
4. Windows.Registry.RecentDocs — недавние документы
5. Windows.Filesystem.FileInfo — информация о файлах

Анализ:
- Поиск доступа к конфиденциальным файлам
- Анализ истории просмотра папок
- Проверка недавних документов
- Изучение временных меток файлов

Сценарий 3: Анализ сетевой активности


Задача: Исследовать сетевую активность системы.

Артефакты:
1. Windows.Network.Connections — активные соединения
2. Windows.Network.Sockets — сокеты
3. Windows.Network.DNS — DNS запросы
4. Windows.Network.Arp — ARP таблица
5. Windows.Network.Routes — таблица маршрутизации

Анализ:
- Изучение активных соединений
- Анализ DNS запросов
- Проверка маршрутизации
- Поиск подозрительных подключений



Оптимизация сбора артефактов


Для продуктивного применения Velociraptor важно оптимизировать процесс сбора артефактов.

Выбор артефактов


Приоритизация:
- Начните с базовых артефактов (SystemInfo, Processes)
- Добавляйте специализированные артефакты по мере необходимости
- Избегайте сбора избыточных данных

Группировка:
- Группируйте связанные артефакты в коллекции
- Используйте шаблоны коллекций для типовых задач
- Создавайте кастомные коллекции для повторяющихся сценариев

Производительность


Параллельное выполнение:
- Запускайте несколько коллекций одновременно
- Используйте фильтры для ограничения объёма данных
- Настраивайте таймауты для долгих операций

Оптимизация запросов:
- Используйте индексы где возможно
- Ограничивайте объём собираемых данных
- Применяйте фильтры на уровне запросов

Хранение результатов


Организация:
- Используйте понятные имена для коллекций
- Добавляйте описания к коллекциям
- Тегируйте коллекции для удобного поиска

Экспорт:
- Экспортируйте результаты в удобные форматы
- Используйте API для автоматизации
- Интегрируйте с другими инструментами



Часто задаваемые вопросы


Что такое Velociraptor?


Velociraptor — это платформа с открытым исходным кодом для цифровой криминалистики и инцидент-ответа, созданная для оперативного сбора данных с endpoints. Она применяет VQL (Velociraptor Query Language) для выполнения запросов на удалённых системах.

Какие операционные системы поддерживает Velociraptor?


Velociraptor поддерживает Windows, Linux и macOS. Для каждой платформы доступны специфичные артефакты, оптимизированные под особенности операционной системы.

Нужно ли устанавливать агент на целевую систему?


Да, для работы Velociraptor требуется агент на целевой системе. Однако агент может быть развёрнут удалённо или запущен локально без постоянной установки.

Сколько артефактов доступно в Velociraptor?


Velociraptor включает более 90 встроенных артефактов, организованных по категориям: системная информация, процессы, сеть, реестр, файлы и другие.

Можно ли создавать собственные артефакты?


Да, вы можете создавать собственные артефакты, используя VQL. Это даёт возможность адаптировать Velociraptor под специфические потребности вашего расследования.

Как быстро работает сбор данных?


Скорость сбора данных зависит от типа артефакта и размера целевой системы. Большинство базовых артефактов выполняются за секунды, в то время как глубокое сканирование файловой системы может занять минуты или часы.

Безопасно ли использовать Velociraptor?


Velociraptor применяет шифрование для связи между агентом и сервером. Однако важно правильно настроить безопасность сервера и использовать сильные сертификаты.

Можно ли использовать Velociraptor для мониторинга в реальном времени?


Да, Velociraptor поддерживает мониторинг в реальном времени через события (events). Это даёт возможность отслеживать изменения на системе в реальном времени.



Заключение: Быстрая форензика с Velociraptor


Velociraptor представляет собой мощный инструмент для оперативной форензики endpoints, предоставляя доступ к более чем 90 встроенным артефактам для сбора данных с Windows, Linux и macOS систем. Платформа даёт возможность криминалистам и специалистам по безопасности эффективно собирать и анализировать данные без необходимости физического доступа к устройствам.

Ключевые преимущества Velociraptor:
- Более 90 встроенных артефактов
- Поддержка Windows, Linux и macOS
- Быстрый сбор данных
- Гибкость через VQL
- Открытый исходный код

Рекомендации по использованию:
- Начните с базовых артефактов для понимания системы
- Используйте специализированные артефакты для конкретных задач
- Оптимизируйте коллекции для повышения производительности
- Создавайте кастомные артефакты для повторяющихся сценариев
- Интегрируйте Velociraptor с другими инструментами форензики

Помните: продуктивное применение Velociraptor требует понимания как платформы, так и операционных систем, с которых собираются данные. Регулярное обновление знаний о новых артефактах и возможностях платформы поможет вам оставаться эффективным в быстро меняющемся мире цифровой криминалистики.