Архив метки: MaxPatrolVM

Хакатон MaxPatrol VM, часть 1: Linux стенд и Ansible

Хакатон MaxPatrol VM, часть 1: Linux стенд и Ansible

Хакатон MaxPatrol VM, часть 1: Linux стенд и Ansible. Как и обещал, делюсь впечатлениями от хакатона. Первым заданием у меня была автоматизации установки софта из TAR-архива на Debian 12 с помощью Ansible. Раньше я с Ansible толком не работал, поэтому появился повод немного разобраться.

Ansible - система управления конфигурациями, написанная на Python. Главное отличие Ansible от аналогов - не нужна установка агента или клиента на управляемые хосты. Обычно используется для управления Linux-хостами, но Windows также поддерживается. Взаимодействие происходит по модели push: сам Ansible запускается на "центральном" управляющем хосте, ходит на управляемые хосты и что-то делает. На управляемом хосте должен быть установлен Python версии 2.4 и выше, соединение выполняется по SSH или WinRM.

Управляющим хостом для Ansible будет мой десктоп на Ubuntu 23.10, а управляемым хостом будет виртуалка в VirtualBox.

Я завёл виртуалку в VirtualBox с Debian 12, добавил интерфейс Host-only adapter, чтобы можно было подключаться к ней по SSH. Я проверил, что подключение работает с помощью:

$ ssh vmuser@192.168.56.104

Для работы Ansible должна быть настроена аутентификация по ключам. Я сгенерировал ключ с помощью:

$ ssh-keygen -t ed25519 -C "alexander@avleonov.com"

Затем я закинул его на target-host:

$ ssh-copy-id vmuser@192.168.56.104

После этого команда уже не требовала пароль.

На десктоп с Ubuntu 23.10 я поставил Ansible при помощи утилиты pipx

$ sudo apt-get install pipx
$ pipx install --include-deps ansible

Обновлять можно с помощью:

$ pipx upgrade --include-injected ansible

Проверить версию ansible можно с помощью:

$ ansible --version
ansible [core 2.16.7]
...

Далее описываю управляемый хост (виртуалку) в yaml файле:

$ cat hosts.yaml 
myhosts:
hosts:
debian12:
ansible_host: 192.168.56.104

Валидирую файл hosts.yaml:

$ ansible-inventory -i hosts.yaml --list
{
"_meta": {
"hostvars": {
"debian12": {
"ansible_host": "192.168.56.104"
}
}
},
"all": {
"children": [
"ungrouped",
"myhosts"
]
},
"myhosts": {
"hosts": [
"debian12"
]
}
}

Проверяю соединение:

$ ansible myhosts -m ping -i hosts.yaml -u vmuser
debian12 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python3"
},
"changed": false,
"ping": "pong"
}

Всё работает, связь есть. Теперь можно попробовать выполнить какие-то команды на хосте с помощью Ansible. Делаю тестовый плейбук для вывода hostname и версии дистрибутива:

- name: Print Hostname and OS Version
hosts: all
tasks:
- name: Get Hostname
command: hostname
register: hostname_output

- name: Get OS Version
ansible.builtin.shell: lsb_release -a | grep "Description:" | awk -F"\t" '{print $2}'
register: os_version_output

- name: Display Outputs
debug:
msg: "Hostname is {{ hostname_output.stdout }} and OS Version is {{ os_version_output.stdout }}"

Запускаю его:

$ ansible-playbook -i hosts.yaml -u 'vmuser' playbook.yaml
...

TASK [Display Outputs] *********************************************************
ok: [debian12] => {
"msg": "Hostname is debian and OS Version is Debian GNU/Linux 12 (bookworm)"
}

Работает! В следующей части рассмотрим как описать в плейбуке установку софта из TAR-архива.

Как СберКорус с помощью TS Solution с нуля выстраивали у себя VM-процесс на MaxPatrol VM (часть 1)

Как СберКорус с помощью TS Solution с нуля выстраивали у себя VM-процесс на MaxPatrol VM (часть 1)Как СберКорус с помощью TS Solution с нуля выстраивали у себя VM-процесс на MaxPatrol VM (часть 1)

Как СберКорус с помощью TS Solution с нуля выстраивали у себя VM-процесс на MaxPatrol VM (часть 1). Сделал небольшой конспект части доклада со СФЕРА Cybersecurity.

🔹 Цель была для начала хотя бы понять какие есть активы.
🔹 Они пилотировали MaxPatrol VM сразу в прод. Пилот затянулся на полгода.

С какими проблемами столкнулись и как их порешали:

🔻 Пересечение сетей Docker. Это не настраивалось в MaxPatrol VM, привело к потере доступа в пятницу вечером, помогло комьюнити.
🔻 Проблемы при установке ролей. Иногда приходилось ставить роль заново.
🔻 Добавление активов из ARP-таблиц. Нерелевантные таблицы могут забивать лицензию VM-а. Например, для удалёнщиков по результатам сканирования видели домашние роутеры, телефоны, ноутбуки жены и т.д. Убрали сбор таблиц для АРМ-ов сотрудников.
🔻 Не укладывались в сканирование за неделю. Увеличили поточность сканирования на сканирующих нодах, чтобы укладываться (выставили capacity 10).
🔻 Завершение задачи по отключению узла в момент сканирования. VM сначала пингует хосты, ставит живой хост в очередь сканирования, пока дойдёт до хоста, он может быть уже выключен. В этом случае задача вообще не завершается. Задача подвисала дня на 2. Починили отключив пропинговку. Просто очередь узлов стала больше.

Реализация задач:

🔸 Группировка активов. Дали доступ в сканер коллегам из IT. Группировали активы по зонам ответственности отделов. 264 динамические группы.
🔸 Ролевая модель. Дали доступ администраторам к группам своих активов - 8 отделов. Доступ на запись паролей от сканирующих учёток предоставили админам домена - ИБ не всесильно (что важно и хорошо). 38 продуктовых команд имеют доступ к уязвимостям в своих продуктах с автоматической отправкой отчётов.

🪧 Приложена схема процесса, позволяющая быстро находить новые активы, которые появляются в сети, быстро натравливать на них все варианты сканирования с нужными профилями и учётками, позволяет синхронизироваться с доменом и помогает IT-шникам обнаруживать shadow IT.

📊 Было разработано 50 кастомных виджетов.

К сожалению, я дальше отвлекся и кэш трансляции с этим выступлением просрочился. 🤷‍♂️ Что было дальше посмотрю, когда будет видео, и распишу во второй части.

Upd. Выложил вторую часть

Уже завтра стартует онлайн-хакатон от команды MaxPatrol VM Positive Technologies по разработке правил детектирования уязвимостей

Уже завтра стартует онлайн-хакатон от команды MaxPatrol VM Positive Technologies по разработке правил детектирования уязвимостей

Уже завтра стартует онлайн-хакатон от команды MaxPatrol VM Positive Technologies по разработке правил детектирования уязвимостей. Ограничений на участие сотрудников PT не было, так что я тоже подался и буду делиться впечатлениями в канале. 😏 Весь в предвкушении. 🤩

Имхо, подключение сообщества к разработке security content-а это как раз то, что кардинальным образом улучшит полноту и качество детектирования уязвимостей и мисконфигураций VM-продуктами. Т.е. самую их суть.

13 мая стартует онлайн-хакатон от команды MaxPatrol VM Positive Technologies: получи реальный опыт в разработке правил детектирования уязвимостей на нейтральном опенсурсном стеке и выиграй денежные призы

13 мая стартует онлайн-хакатон от команды MaxPatrol VM Positive Technologies: получи реальный опыт в разработке правил детектирования уязвимостей на нейтральном опенсурсном стеке и выиграй денежные призы

13 мая стартует онлайн-хакатон от команды MaxPatrol VM Positive Technologies: получи реальный опыт в разработке правил детектирования уязвимостей на нейтральном опенсурсном стеке и выиграй денежные призы. Активность просто огненная. 🔥

Задания хакатона:

🔻 Стендирование. Написать плейбук для развертывания ПО с помощью Ansible.
🔻 Обнаружение ПО. Написать скрипт для обнаружения ПО на хосте на языке Python. Цель скрипта сгенерировать OVAL Variables с информацией по софту.
🔻 Обнаружение уязвимостей. Распарсить источник данных об уязвимостях и сформировать OVAL Definitions. Затем провести детектирование уязвимостей используя OVAL Definitions и артефакт работы скрипта обнаружения ПО (OVAL Variables) с помощью утилиты OpenSCAP.

Таким образом участники хакатона пройдут весь путь поддержки продукта в сканере уязвимостей с использованием нейтрального опенсурсного стека:

Ansible + Python + OVAL/OpenSCAP

При этом использование Python для сборки OVAL Variables позволит снять ограничения связанные с OVAL объектами (мороки с их сбором - атас, а OpenSCAP под Windows вообще dicscontinued) и при этом получить все преимущества OVAL - формализованное описание правил детектирования уязвимостей и готовые инстурумент для расчёта статусов в виде OpenSCAP.
Б - Баланс. 👍

💳 За выполнение заданий участники будут получать баллы, которые будут конвертированы в деньги.

🚀 Результаты работы участников не пропадут, а будут использованы в MaxPatrol VM (после ревью и через конвертацию в пакеты MaxPatrol VM).

Для участников сплошной Win:

🔸 Получаем реальную практику с востребованными технологиями (Ansible и Python вообще must have в IT, а OVAL/SCAP кучей VM-продуктов используется и в России, и зарубежом).
🔸 Получаем отличную строчку в резюме (рассказывать на собесе как детекты писал, которые в MaxPatrol VM сейчас используется - круто же 🙂).
🔸 Получаем приятный денежный бонус с этого.
🔸 Получаем фаст-трек для вкатывания в команду разработки MaxPatrol VM, если процесс понравится и будут хорошие результаты. 😉

➡️ Подробности и регистрация тут
🟥 Официальный пост в канале Positive Technologies

На прошлой неделе для MaxPatrol VM (вместе с SIEM) объявили Bug Bounty программу

На прошлой неделе для MaxPatrol VM (вместе с SIEM) объявили Bug Bounty программу
На прошлой неделе для MaxPatrol VM (вместе с SIEM) объявили Bug Bounty программу

На прошлой неделе для MaxPatrol VM (вместе с SIEM) объявили Bug Bounty программу. Выплаты за критикал до миллиона рублей. Для удобства есть доступный из интернет сервак (нужно только в /etc/hosts прописать).

В описании программы есть закрытый список из 10 пунктов за что вознаграждение НЕ выплачивается. По этим пунктам и так интуитивно понятно, что такое слать не нужно, но люди находятся. 🤷‍♂️ За остальное может выплачиваться. Даже за уязвимости, найденные в используемом компанией ПО сторонних производителей (например, opensource-библиотеках), но, по умолчанию, по минимальной границе.

В правилах и требованиях к отчёту тоже вроде всё по делу и ничего сверхестественного нет.

Программу запустили в прошлую среду, уже 3 отчёта сдано.

Начиная с версии 2.1, сканер (коллектор) MaxPatrol VM, поставленный на Linux, может безагентно сканировать Windows-хосты в режиме Аудит

Начиная с версии 2.1, сканер (коллектор) MaxPatrol VM, поставленный на Linux, может безагентно сканировать Windows-хосты в режиме Аудит

Начиная с версии 2.1, сканер (коллектор) MaxPatrol VM, поставленный на Linux, может безагентно сканировать Windows-хосты в режиме Аудит. В режиме Пентест тоже, но это, имхо, чуть меньше впечатляет.

Казалось бы, а чего такого? Тот же Nessus ставится на Linux и сканирует Windows. Или апплаенс Qualys-а тоже не на винде работает. 🤔

Но для того, чтобы это реализовать нужно в Linux-овый сканер добавить транспорты для сканирования Windows (как минимум NetBIOS, SMB). А когда у вас десятилетиями сканер был исключительно виндовый, то считай транспорты нужно реализовать заново без использования платформозависимых библиотек. 🤷‍♂️ А потом тщательно протестировать, что всё работает.

Поэтому, когда отечественные VM-вендоры будут вам говорить, что они могут сканировать Linux-овым сканером Windows хосты, уточняйте речь только об агентном сканировании (сделать гораздо проще) или о безагентном тоже.

Агентно MaxPatrol VM может сканировать через EDR агенты.

Аналитика Угроз и Управление Уязвимостями

Аналитика Угроз и Управление Уязвимостями

Аналитика Угроз и Управление Уязвимостями. Во вторник смотрел вебинар Positive Technologies "PT ESC. Эпизод 1: погружение в Threat Intelligence". Там было в основном про атаки, но про уязвимости и совместную работу PT Threat Analyzer с MaxPatrol VM тоже немного было (34:11).

🔹 MaxPatrol VM знает всё про уязвимости, которые актуальны для инфраструктуры заказчика.
🔹 PT Threat Analyser забирает список этих уязвимостей и делает сопоставление уязвимостей и индикаторов компрометации для вредоносного ПО, которое эти уязвимости эксплуатирует.

Таким образом заказчики могут фильтровать угрозы, актуальные именно для их инфраструктуры.