Управление Уязвимостями и прочее
7.63K subscribers
1.34K photos
6 videos
23 files
1.1K links
Анализ защищённости, безопасное конфигурирование ИТ-систем, автоматизация связанных процессов ИБ и другие интересные штуки.
Пишите в личку: @leonov_av
Download Telegram
Экспорт данных из MaxPatrol VM через API по PDQL-запросу. К завтрашнему выступлению выкладываю небольшой мануал и пример скрипта.

1. Для работы с API вам понадобится логин и пароль пользователя, а также параметр ClientSecret, который лежит на сервере в /var/lib/deployer/role_instances/Core/params.yaml

2. Делаем запрос к mpvm_url + ':3334/connect/token', получаем токен, который подставляем в хидер authorization в виде 'Bearer ' + token. ⚠️ Получение токена у идёт по порту 3334, а дальнейшая работа с API по порту 443!

3. Делаем запрос к assets_grid с PDQL-запросом, получаем pdql_token. Затем с этим токеном делаем запросы к assets_grid/data увеличивая offset. Упёрлись в лимит 50000 результатов? Добавьте "| limit(0)" в конец PDQL-запроса.

🧠 Отлаживать PDQL-запросы удобнее в web-gui и затем смотреть какие запросы браузер шлёт, т.к. используется тот же API.

📄 Пример python-скрипта для экcпорта всех трендовых уязвимостей.

@avleonovrus #MaxPatrolVM #PositiveTechnologies #API #TrendVulns #PDQL
Посмотрел вебинар про использование MaxPatrol EDR в качестве агента для MaxPatrol VM.

Зачем нужно агентное сканирование:

🔸 можно сканировать активы, до которых активно не достучишься (десктопы)
🔸 нет проблем с учётками
🔸 можно более оперативно обновлять данные

Что показали:

🔹 как в политиках модуля EDR настраивается сканирование (запуск по расписанию, ожидание запуска пока не снизится загрузка CPU, пауза между повторными сканированиями, запуск по событию EDR)
🔹 как выглядит вкладка с состоянием агента
🔹 как выглядят результаты в активах VM

Важные моменты:

🔻 Агенты полноценные, сами инициируют соединение.
🔻 Поддерживается Windows и Linux (в т.ч. Astra Linux). MacOS пока не сканится, хотя EDR там работает.
🔻 Если у вас есть лицензия на VM, нужно будет докупить лицензию на агентное сканирование на нужное количество хостов.
🔻 Полноценный EDR можно не покупать, можно будет использовать урезанные агенты EDR только с функцией сканирования.

@avleonovrus #MaxPatrolVM #MaxPatrolEDR #PositiveTechnologies
Завтра в 15:00 пройдёт вебинар по API MaxPatrol VM. Зарегался, буду смотреть. Я так-то базово умею пользоваться, даже пост по выгрузке данных по PDQL-запросу делал. Но наверняка коллеги расскажут что-нибудь новое и интересное. 🙂🍿

@avleonovrus #MaxPatrolVM #PositiveTechnologies #API #PDQL
Посмотрел запись вебинара Positive Technologies "Как использовать API в MaxPatrol VM: теория и практика". По теоретической части всё понятно: есть документированный API; он один и для интеграций, и для вебгуя. 🙂

По практической части показали:

🔻 Как использовать MaxPatrol API в REST-клиенте Nightingale (файл с примерами на гитхабе).
🔻 Неофициальный PTVM SDK. Небольшой Python скрипт с одним классом для работы с MaxPatrol API.
🔻 Консольный интерфейс Positive CLI для MaxPatrol API. Автоматизацию можно делать и просто shell-скриптами дергающими CLI! 😇 Гораздо более функциональный проект, чем SDK, и тоже на Python. На скринах вывод уязвимостей с критичностью рассчитанной по методологии ФСТЭК и трендовые уязвимости с эксплоитом.
🔻 Как использовать MaxPatrol API в low-code инструменте n8n (на примере отправки результатов запроса в Telegram).

Ссылки на проекты добавляются на страницу addons.

Покажите коллегам, которые работают с MaxPatrol VM. 😉

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

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

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

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

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

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

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

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

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

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

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

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

@avleonovrus #PositiveTechnologies #MaxPatrolVM #MaxPatrolSIEM #BugBounty
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

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

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

@avleonovrus #PositiveTechnologies #MaxPatrolVM #PTVMHackathon
Как СберКорус с помощью 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. Выложил вторую часть

@avleonovrus #event #СФЕРАCybersecurity #СберКорус #TSSolution #PositiveTechnologies #MaxPatrolVM
Хакатон 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


После этого команда ssh 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-архива.

@avleonovrus #PositiveTechnologies #MaxPatrolVM #PTVMHackathon #Ansible #VirtualBox #Debian #Ubuntu #Linux
Основная фича грядущего июньского релиза MaxPatrol VM 2.5 - новый сканер веб-приложений. И здесь речь не только о детектах для известных CVE уязвимостей, например, для Confluence или GitLab, которые, безусловно, очень важны для любого VM-продукта, о чём я уже писал ранее. Речь о полноценном DAST-сканере уязвимостей, с такой же функциональностью как в решениях PT BlackBox и PT AI.

Вообще вопрос о месте DAST-сканирования WEB-приложений дискуссионный. Этим нужно заниматься в рамках инфраструктурного VM-а или в рамках процессов AppSec-а? Рассмотрим аргументы.

Аргументы за AppSec:

🔻 Таргеты различаются. DAST-ом обычно сканят собственные разработки, а не чужие (коммерческие и опенсурсные) продукты. Если собственная разработка, значит AppSec.
🔻 Таски на исправление найденных уязвимостей летят в разработчиков, а не в админов. Опять же, разработка = AppSec.
🔻 Если же сканировались чужие продукты и при этом были найдены уязвимости, то по-хорошему нужно довести эту инфу до вендора и не попасть при этом под какие-нибудь юридические ограничения (анализ приложения может быть запрещён в лицензионном соглашении). Эти активности также более привычны AppSec-ам.
🔻 Одного DAST-а для полноценного анализа приложений всё равно не хватит, нужен SAST, IAST. Давайте не будем заниматься ерундой и будем анализировать приложения полноценно в рамках процессов AppSec.

Аргументы за инфраструктурный VM:

🔹 Вот сканируем мы хост и видим там веб-сервис (нашу разработку или не нашу - не суть важно). Почему бы не проверить его на ту же XSS-ку? Как-то глупо ограничивать себя только детектом CVE-шных уязвимостей. Тем более, что AppSec-и могут этот веб-сервис своими процессами вообще не покрывать, а мы может что-то массовыми сканами и продетектим.
🔹 Вот выстроили мы в рамках инфраструктурного VM-а процесс по поиску и исправлению известных уязвимостей. Почему бы не переиспользовать его и для web-уязвимостей? И там уязвимости, и там уязвимости. Удобно ведь будет работать со всеми уязвимостями в рамках одной единой системы, разве нет? 😏

В общем, есть аргументы у обеих сторон. В реальных организациях скорее это зависит от развития AppSec и VM отделов, кто кого подомнёт. 🙂 Моё мнение, что сканить веб-приложения DAST-ом должны и AppSec-и, и инфраструктурные VM-щики. Хуже не будет. А база для хранения продетектированных уязвимостей должна быть у них, в идеале, единой.

Но как бы ни выглядел итоговый процесс, его можно будет реализовать с помощью продуктов Positive Technologies. 😉

➡️ Более подробно о фичах нового MaxPatrol VM 2.5, включая сканирование веб-приложений, можно будет узнать на вебинаре 13 июня в 14:00. Регистрируйтесь!

@avleonovrus #PositiveTechnologies #MaxPatrolVM #PTBlackBox #PTAI #AppSec #DAST #SAST #IAST
Как СберКорус с помощью TS Solution с нуля выстраивали у себя VM-процесс на MaxPatrol VM (часть 2). Продолжаю отсматривать выступление Романа Журавлева из TS Solution и Никиты Аристова из СберКоруса на конференции СФЕРА Cybersecurity. В прошлый раз остановились на кастомных виджетах.

📊 Кастомные виджеты. Разработали около 50 кастомных виджетов, которые позволяют отслеживать процессы, и чуть больше 100 PDQL-запросов.

🔹 На скриншоте видны однотипные виджеты "Статистика по аудиту" для разных групп активов (ARM онлайн за 7 дней, ARM, VDI, Windows Серверы, Сетевое оборудование, 2 замазанные группы по принадлежности к системам). Возможные значения: "Аудит не проводился", "Аудит в течение 7 дней", "Аудит старше 7 дней".
🔹 Также виден виджет "Доля активов с неустраняемой уязвимостью" со значениями "Активы с устраняемыми уязвимостями" и "Активы с неустраняемыми уязвимостями".

🥄 Ложка дёгтя - непобеждённая проблема. При серьёзной нагрузке выяснилось, что не справляется база данных PostgreSQL. Полной победы за год не достигли, как временное решение в 4 раза увеличили ресурсы. 🤷‍♂️

🚙 Прокачка MaxPatrol VM

"MaxPatrol VM как метафорические Жигули. Свою базовую функцию он выполняет: активы ищет, уязвимости рассчитывает. Но дальнейший процесс [тюнинга] никогда не закончится. Его абсолютно точно есть куда развивать, у него много возможностей. Дальше будет как превратить Жигули в Мерседес, при том что Мерседес для каждой компании будет свой".

[ От себя скажу: полностью согласен. Vulnerability Management - это прежде всего процесс выстроенный с использованием какого-либо продукта. Считать, что купил продукт и всё само заведётся, а в компании сам собой появится рабочий процесс довольно наивно. Нужно работать, затачивать его под себя. С другой стороны, базовую функциональность по работе с активами, уязвимостями, аналитике тоже недооценивать не следует. Если она в продукте так себе, то будет классическое "мусор на входе - мусор на выходе". ]

🔻 Показали схему Security Gate по выводу продуктов на периметр, включающий проверки AppSec (проверка кода) и инфраструктурного VM-а. Про то, что эти 2 направления имеют пересекающиеся функции в рамках, например, DAST сканирования, я писал ранее.
🔻 "В MaxPatrol VM неплохой модуль BI (Business intelligence)". Считают покрытие сканированиями, покрытие СЗИ (антивирусы и EDR для Linux и Windows), динамику уязвимостей за неделю.
🔻 Контроль активов: контроль работы служб СЗИ (запущена и добавлена в автозапуск), контроль состава установленного ПО (нелегитимное, нежелательное), дубликаты активов, переустановки ОС, SSH (контроль перевода на аутентификацию по ключам), свободное место на жёстких дисках (выгружают за 5 минут).
🔻 Контроль пользователей: привязка администраторской УЗ к АРМy, контроль сеансовой работы под УЗ с правами администратора (контроль активных пользователей; админская учётка должна использоваться только для повышения привилегий, а не для постоянной работы), контроль нелегитимных прав локального администратора (завели резервную учётку или временная учётка стала постоянной), смена пароля после киберучений (для попавшихся на учебные фишинговые рассылки).
🔻 Инциденты ИБ ("MaxPatrol VM - это осколок от MaxPatrol SIEM, какие-то инциденты можно смотреть в VM-е"): сотрудник снял образ своего АРМ-а и развернул виртуальный АРМ из образа на своём личном ноутбуке и с него работал (проверка по ID установки и является ли хост виртуалкой), подключение по RDP в обход PAM (контроль коммерческого SOC).

Заключительная третья часть будет про планы по развитию VM-процесса в СберКорусе.

upd. Третья заключительная часть

@avleonovrus #event #СФЕРАCybersecurity #СберКорус #TSSolution #PositiveTechnologies #MaxPatrolVM #BI #EDR #SIEM #AppSec #PAM #SOC
Хакатон MaxPatrol VM, часть 2: Ansible playbook для установки ПО из TAR-архива. Прошлая часть была про то, как я подготавливал виртуалку на Linux, чтобы работать с ней с помощью Ansible. По первому заданию мне нужно было поставить с помощью Ansible некоторые программное обеспечение из TAR-архива (обозначим здесь как Libre Data Analytics). Чтобы его установить необходимо просто скачать архив с сайта и распаковать в любую директорию. Я решил делать это прямо в домашнюю директорию пользователя vmuser. 🙂

Сам playbook аналогичен тестовому, который я запускал в прошлый раз. Такая же последовательность task-ов Ansible. Только в этот раз кроме тасков типа ansible.builtin.shell, который позволяет выполнять bash-скрипты, я использовал более специализированные.

1. ansible.builtin.tempfile - создание временной директории
2. ansible.builtin.get_url - скачивание файла архива
3. ansible.builtin.unarchive - разархивирование архива
4. ansible.builtin.file - удаление файла архива
5. ansible.builtin.copy - копирование из временно директории в постоянную
6. ansible.builtin.file - удаление временной директории
7. ansible.builtin.shell - получение фактической версии ПО и запуск ПО с дефолтными параметрами (требуется по условию задания)
8. debug - вывод фактической версии ПО

Необходимую версию ПО и путь до директории, куда будет установлено ПО, оформил в виде переменных libre_data_analytics_version и libre_data_analytics_path.

Код плейбука:

- name: Install Libre Data Analytics from tar.gz file
hosts: all
vars:
libre_data_analytics_version: 2.13.0
libre_data_analytics_path: "/home/{{ ansible_user }}/"
tasks:
- name: Create temporary download directory
ansible.builtin.tempfile:
state: directory
prefix: libre-data-analytics-
register: download_dir

- name: Download Libre Data Analytics archive
ansible.builtin.get_url:
url: "https://artifacts.libre-data-analytics.org/releases/bundle/libre-data-analytics/{{ libre_data_analytics_version }}/libre-data-analytics-{{ libre_data_analytics_version }}-linux-x64.tar.gz"
dest: "{{ download_dir.path }}/libre-data-analytics.tar.gz"
mode: '0640'

- name: Extract Libre Data Analytics files
ansible.builtin.unarchive:
src: "{{ download_dir.path }}/libre-data-analytics.tar.gz"
dest: "{{ download_dir.path }}"
remote_src: true

- name: Remove libre_data_analytics_path
ansible.builtin.file:
path: "{{ libre_data_analytics_path }}/libre-data-analytics-{{ libre_data_analytics_version }}"
state: absent

- name: Copy files to the libre_data_analytics_path
ansible.builtin.copy:
src: "{{ download_dir.path }}/libre-data-analytics-{{ libre_data_analytics_version }}"
dest: "{{ libre_data_analytics_path }}"
remote_src: true

- name: Remove temporary download directory
ansible.builtin.file:
path: "{{ download_dir.path }}"
state: absent

- name: Get Libre Data Analytics version
ansible.builtin.shell: cd "{{ libre_data_analytics_path }}/libre-data-analytics-{{ libre_data_analytics_version }}"; ./bin/libre-data-analytics -V
register: installed_version

- name: Libre Data Analytics
ansible.builtin.shell: cd "{{ libre_data_analytics_path }}/libre-data-analytics-{{ libre_data_analytics_version }}"; nohup ./bin/libre-data-analytics </dev/null >/dev/null 2>&1 &

- name: Display Outputs
debug:
msg: "Path: {{ libre_data_analytics_path }}/libre-data-analytics-{{ libre_data_analytics_version }}, installed version from binary {{ installed_version.stdout }}"


Для сдачи я разбил плейбук на файлы и директории, как это было сделано в примере выполненного задания:

nginx_from_repo_on_ubuntu
├── playbook.yaml
└── roles
└── nginx_from_repo_on_ubuntu
├── defaults
│ └── main.yaml
└── tasks
└── main.yaml


В итоге задание у меня успешно приняли. 👍 Можно двигаться дальше. 🙂

@avleonovrus #PositiveTechnologies #MaxPatrolVM #PTVMHackathon #Ansible
Как СберКорус с помощью TS Solution с нуля выстраивали у себя VM-процесс на MaxPatrol VM (часть 3). Завершаю серию постов про выступление Романа Журавлева из TS Solution и Никиты Аристова из СберКоруса на конференции СФЕРА Cybersecurity. В прошлый раз было про кастомные виджеты и прокачку MaxPatrol VM, а сейчас будет про планы СберКоруса на будущее.

Технические планы


🔸 В идеальной картине мира хотят получать в VM уязвимости из контейнеров. Тестируют PT Container Security.
🔸 Уязвимости из VM планируют передавать в Threat Intelligence. Там создастся репутационный список индикаторов компрометации, связанных с эксплуатацией уязвимостей. Этот список будет блокироваться на межсетевых экранах. Этот же список уйдёт в SOC для упрощения расследований. Уязвимости также планируют передавать в SOC (наличие некоторых уязвимостей это инцидент сам по себе и они должны мониториться 24/7 и оперативно исправляться).
🔸 Автоматизировать создание задач на ответственных в ITSM системах Jira и Naumen.
🔸 В SGRC передавать список активов и список уязвимостей на этих активах. В процессе пилотирования. Сейчас в MPVM нет функциональности по постановке задач, поэтому нужно решать это интеграциями.
🔸Хотят получать список активов из CMDB. Если актив есть в CMDB, помечаем в VM-е как легитимный. Если нет - разбираемся с Shadow IT. Также хотят обогащать активы CMDB техническими данными из VM-а.

После прикручивания интеграций к MaxPatrol VM в СберКорус могут смело сказать, что "Инвестиция нашего руководства в безопасность окупается. Продукт реально работает, на него завязано много процессов, которые делают много полезного и все счастливы, все улыбаются, даже наш коммерческий директор". 🙂

Q/A: Можно ли контролировать виртуализацию облачного провайдера (компания спрашивающего пострадала от эксплуатации такой уязвимости)? Конечно нет. По договору никто туда не пустит. [ На эту тему в КиберДуршлаге с Алексеем Лукацким было хорошо ].

Очень классное выступление, побольше бы таких! 👍 🙂

@avleonovrus #event #СФЕРАCybersecurity #СберКорус #TSSolution #PositiveTechnologies #MaxPatrolVM #PTContainerSecurity #ThreatIntelligence #SOC #ITSM #Jira #Naumen #SGRC #CMDB
Квиз перед сегодняшним запуском MaxPatrol VM 2.5. Что-то тугодумил и срезался на последнем вопросе. Причём уверен, что вариант про "бодания с IT-шниками" более правильный и реалистичный. 😅

Вебинар по запуску MaxPatrol VM 2.5 начинается в 14:00, подключайтесь!

@avleonovrus #PositiveTechnologies #MaxPatrolVM
Заметки по сегодняшнему запуску MaxPatrol VM 2.5. MaxPatrol VM - cистема управления уязвимостями нового поколения, которая реализует полное построение VM-процесса: управление активами, детектирование, приоритизация и контроль устранения уязвимостей. Уже более 500 инсталляций и их число стремительно растёт. Главная цель MP VM - не допустить эксплуатацию уязвимости в инфраструктуре.

Чем этого добиваемся?

🔹 Полное покрытие периметра, ключевых и целевых систем.
🔹 Экспертиза Positive Technologies + кастомизация продукта ("Нельзя покрыть все потребности всех клиентов" -> "Дать возможности клиентам самим или с помощью интеграторов разрабатывать детекты") ⬅️ Имхо, про кастомизацию это тектонический сдвиг для отечественного VM-а.

Три главных нововведения:

1. Сканирование веб-приложений. Эксплуатация уязвимостей на периметре в ТОП 2 векторов проникновения по данным НКЦКИ. Для поиска уязвимостей веба раньше был нужен отдельный DAST-сканер (MP8, PT BlackBox), сейчас полноценное DAST-сканирование веб-приложений возможно делать прямо в MPVM. Функционально там тот же движок, что и в PT BlackBox.

🔩 Крутая фишка - интегрировали в MaxPatrol VM опенсурсный сканер уязвимостей Nuclei для валидации наличия уязвимостей, определенных баннерным детектом. Уязвимости, которые подтверждены нуклеем, рекомендуют исправлять в первую очередь, а остальные в плановом порядке.

Новый профиль сканирования Web Scan Optimal. Можно сканировать с аутентификацией.
Добавили новые системные дашборды: критически важные веб уязвимости на активах, Топ-20 уязвимых приложений.
Для веб-уязвимостей будут также работать политики, чтобы автоматически изменять их статус и отслеживать сроки исправления.
❗️При этом одного DAST-сканирования MaxPatrol VM недостаточно для защиты самописных веб-приложений: нужны анализаторы кода (PT AI) + Application Firewall (PT AF) + аудиты безопасности.

2. Кастомные комплаенс-проверки в HCC ("жить по своим требованиям"). Нужны если PT что-то не поддерживает или клиенты хотят сделать более расширенные проверки (сами или силами интеграторов).
Нужно подготовить 3 файла:
Файл 1 - значение параметра по умолчанию
Файл 2 - локализация требования
Файл 3 - исходный код требования

Можно экспортнуть имеющиеся требования, подредактировать и импортнуть обратно. Стандарт с требованиями можно редактировать как YAML.

3. Сканирование Docker. Раньше MaxPatrol не мог детектировать уязвимости в докер-контейнерах на Linux хостах - теперь может. Поддерживаются контейнеры на основе Ubuntu, Debian u Alpine Linux. По сути проваливаемся в контейнер и делаем те же детекты, что и на Linux хосте.

⚠️ Самое главное: никаких дополнительных лицензий не нужно! Если есть VM и HCC, просто обновляем и пользуемся!

Что ещё?

🔹 Мобильный сканер. Упростили перенос данных. Можно переносить результаты сканирования (а не активы). Задачи видны как импортированные.
🔹 Задачи на сканирование можно группировать по папкам (и запускать всю папку).
🔹 Можно ограничивать доступ к задачам на сканирование.
🔹 Технологические окна. "Запрещённое время сканирования". Задача ставится на паузу, после "просыпания" снова запустится сканирование с последнего хоста (сканирование хоста запустится заново).
🔹 Проверка транспортов и учётных записей. Можно выпустить отчёт по результатам сканирования.
🔹 У ручных задач выше приоритет, чем у запущенных по расписанию.
🔹 Теперь 20 потоков сканирования для одной задачи. Это настраивается в GUI и сбрасываться при обновлении не будет.
🔹 Топология в отдельной вкладке с возможностью переименования сетей.
🔹 Анализ топологий с компонентами связности.
🔹 Новые виджеты для HCC.
🔹 Глобальные исключения хостов из сканирования.
🔹 Новые отчёты по XLSX шаблону (можно делать свои).
🔹 Пентестовые проверки могут обновляться из облака (пакетная доставка). Раньше так доставлялись только аудитные.

Во второй части будет содержание Q&A.

Upd. Продолжение

@avleonovrus #PositiveTechnologies #MaxPatrolVM #PTBlackBox #PTAI #AppSec #DAST #SAST #IAST #Docker #HCC #Nuclei
Заметки по сегодняшнему запуску MaxPatrol VM 2.5, часть 2. Продолжаю делиться заметками.

Q&A сессия

🔹 Все стандарты CIS переносить не планируется. Будут курсы по продукту, чтобы можно было реализовать их самостоятельно в HCC.
🔹 Вся инфра в облаке? Ставьте MPVM в облако.
🔹 MaxPatrol VM Light будет - следите за обновлениями. 😉
🔹 Первое на что стоит смотрить при устранении уязвимостей - трендовые уязвимости
🔹 PT BlackBox отличается целевой аудиторией. У PT BlackBox целевая аудитория AppSec, а у MPVM - инфраструктурные VM-щики.
🔹 Лицензия на сканирования тратится, когда рассчитывается уязвимость для хоста.
🔹 Новый интенсив по MaxPatrol VM стартует в сентябре.
🔹 Сканировать web-таргеты правильнее по fqdn.
🔹 Настройка цепочек задач? В бэклоге.
🔹 Анализ мобильных устройств? Пока такого запроса нет, т.к. сложно патчить устройства.
🔹 Постановка задач IT? Пока интеграция с тикетницами через API, но следите за новостями. 😉
🔹 А если Nuclei не подтвердил? Будет просто показывать, что для уязвимости есть эксплоит.
🔹 Когда будет доступна новая версия? Можно завтра с утра, но рекомендуем ставить с понедельника.
🔹 Когда будет поддержка ИнфоТеКС? Есть в роадмапе. Есть сложности с получением рута. Вообще про российские решения: об уязвимостях нужно как-то узнать - вендоры должны где-то уязвимости публиковать (ИнфоТеКС тут молодцы)
🔹 Редактор кастомных требований в самом VM будет.
🔹 Тёмная тема будет с переездом на новый Angular.
🔹 Функционал очистки? В работе. Процессинг - зарелижен, Scans - в работе, TRM - для части есть.

@avleonovrus #PositiveTechnologies #MaxPatrolVM #CIS #MaxPatrolVMLight #AppSec #ИнфоТеКС #Nuclei
Добавление своего контента в MaxPatrol HCC. 10 сентября прошёл вебинар Positive Technologies про то, как собирать произвольные параметры с активов сети с помощью Audit Extension в MaxPatrol VM, а затем реализовать комплаенс-проверку этих параметров с помощью MaxPatrol HCC. Видеозапись уже доступна.

Первый пример был про проверку отсутствия Telegram-а на хосте (непожатая картинка):

1. Готовим Audit Extension для сбора данных.
2. Подкладываем Audit Extension на сканер (агент) и смотрим новый собранный софт в MPVM.
3. Готовим комплаенсовую проверку, собираем в zip-архив и загружаем в Библиотеку требований.
4. Собираем стандарт из комплаенсовых проверок и импортируем его.
5. Смотрим стандарт в MPVM.
6. Смотрим результаты выполнения проверки PDQL-запросом.

Ещё были примеры с проверкой политики блокировки макросов, наличия и работы EDR-агента, настроек Sysmon и PostgreSQL.

Все файлы выложили, можно самостоятельно поиграться. 😇

@avleonovrus #PositiveTechnologies #AuditExtension #MaxPatrolHCC #MaxPatrolVM
Посмотрел выступление про MaxPatrol VM и HCC на PSDay. Если резюмировать, то за год было 3 большие новые фичи:

🔻 Web-сканирование
🔻 Сканирование Docker
🔻 Возможность добавления своего контента в HCC

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

Активно внедряется ML. В ближайшее время появится возможность делать запросы по уязвимостям и активам на естественном языке. 🤖

Для больших организаций с несколькими инсталляциями MaxPatrol VM выйдет обновленный Reporting Portal.

Были и будут многочисленные улучшения для оптимизации работы PDQL и генератора отчётов, более быстрой доставки правил детектирования, улучшения веб-интерфейса и т.д.

@avleonovrus #PositiveTechnologies #PSDay #MaxPatrolVM #MaxPatrolHCC #Event