Osquery для синих команд
Osquery — это платформа безопасности конечных точек с открытым исходным кодом, которая позволяет вам отслеживать и запрашивать ваши системы, используя синтаксис, подобный SQL. Он был разработан Facebook и используется компаниями и организациями по всему миру для защиты своих сетей и систем.
Одной из ключевых особенностей Osquery является его способность выполнять мониторинг и анализ ваших систем в режиме реального времени. Он обеспечивает единое представление всей вашей инфраструктуры и позволяет быстро выявлять угрозы и аномалии безопасности и реагировать на них.
Osquery можно использовать для мониторинга различных аспектов ваших систем, в том числе:
- Целостность файлов: Osquery может обнаруживать изменения в важных системных файлах, предупреждая вас о потенциальном взломе или заражении вредоносным ПО.
- Сетевая активность: Osquery может отслеживать входящие и исходящие сетевые подключения, позволяя обнаруживать потенциальные атаки или несанкционированный доступ и реагировать на них.
- Активность процессов: Osquery может отслеживать процессы, запущенные в ваших системах, предупреждая вас о любых подозрительных или злонамеренных действиях.
- Конфигурация системы: Osquery может собирать и сообщать о конфигурации системы, помогая вам убедиться, что ваши системы настроены безопасно и последовательно.
Установка:
Osquery можно использовать для изучения различных операционных систем, таких как Windows, Linux и Mac. Пожалуйста, загрузите любую версию отсюда , в моем случае я загрузил и установил ее для Windows.
После установки запустите Powershell от имени администратора > перейдите к пути загрузки Osquery > запустите osquery с помощью .\osqueryi.exe
Поскольку мы только начали, давайте наберем .help и проверим, какие функции есть у Osquery:
Изучение таблиц в Windows:
Давайте изучим таблицу, набрав .tables , которая предоставит нам список функций операционной системы, а затем мы запросим некоторые из них, чтобы получить возможные данные с затронутой машины.
Как видно выше, osquery запросил список таблиц в операционной системе. Давайте возьмем некоторые сложные детали из некоторых интересных таблиц для дальнейшего запроса:
Список активных пользователей:
Команда select * среди пользователей; позволит перечислить всех пользователей, присутствующих на машине. Мы можем продолжить поиск возможных UID и GID для прав пользователей и проверить наличие пользователей с правами администратора.
Команда select Count(*) from users даст нам статистику учетных записей пользователей, созданных на этом компьютере.
Чтобы получить UID, мы используем команду select UID от пользователей;
Список процессов:
Чтобы перечислить все процессы, запущенные в системе, мы используем команду select * из процессов;
Обратите внимание, что я использовал ограничение 5, чтобы ограничить результаты для отображения 5 основных процессов, поскольку на моей машине запущено множество процессов.
Мы можем соответствующим образом отфильтровать результаты, чтобы найти злоумышленника.
Давайте создадим запрос, чтобы получить имена пользователей и соответствующий процесс, который они запускают:
Обратите внимание, что если вы хотите выполнять такие запросы, вы должны быть знакомы с основами SQL.
Сетевые подключения активных процессов:
Мы можем проверять наличие подозрительных сетевых сокетов и искать соединения, установленные с локальных на удаленные IP-адреса. Давайте сначала изучим таблицы процессов Windows:
Теперь давайте запросим таблицу process_open_sockets и проверим:
Давайте отфильтруем результаты, чтобы просто увидеть все установленные соединения.
Теперь мы можем выполнить проверку внешних IP-адресов с помощью инструментов анализа угроз, чтобы увидеть, есть ли какой-либо вредоносный IP-адрес, к которому были установлены исходящие подключения.
Мониторинг файлов:
Чтобы отслеживать любые подозрительные файлы, присутствующие в системе, мы можем использовать следующую команду:
При построении запросов обратите внимание на следующие правила подстановки:
Соответствие подстановочным правилам
%: Сопоставьте все файлы и папки для одного уровня.%%: Рекурсивное сопоставление всех файлов и папок.%abc: Сопоставьте все символы в пределах уровня, оканчивающиеся на "abc".abc%: Сопоставьте все в пределах уровня, начиная с «abc».
Мы можем проверить наличие подозрительных модификаций значений ключей реестра и найти интересные артефакты. Подготовка запроса сэкономит время реакции на инцидент, и вы узнаете о сохранении вредоносного ПО в реестре.
Используемый выше запрос: Выберите данные, путь из реестра, где ключ = «HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders»;
Запуск вредоносного ПО при загрузке
Мы можем проверить процессы Windows, которые запускаются при загрузке, как поведение сохраняемости вредоносного ПО. Обнаружив такие вредоносные действия, мы можем предпринять дальнейшие шаги, например, изолировать машину от сети и провести дальнейший возможный криминалистический анализ для выявления основной причины.
Используемый выше оператор OSquery — select * from services where start_type='DEMAND_START' limit 2;
В целом, Osquery — ценный инструмент для всех, кто отвечает за безопасность своих систем. Мониторинг в реальном времени и мощные возможности запросов делают его универсальной и эффективной платформой для обнаружения и реагирования на угрозы и аномалии безопасности.
Использованная литература:
https://osquery.io/schema/5.6.0

![В любом случае, что такое связанный список? [Часть 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































