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

Тарас Кропоткин, первокурсник Императорского Высшего Магического Училища, сидел в аудитории, ожидая начала первой лекции по вульнеросологии. Он немного запыхался. Найти нужную аудиторию оказалось не так-то просто. Аудитория находилась на пятом этаже южного крыла Слободского дворца. Чтобы отыскать её, нужно было пройти до самого конца коридора на третьем этаже, а потом уже подняться на пятый по крутой лестнице. И только так! Ещё более странным было то, что снаружи Слободского дворца ни третьего, ни тем более пятого этажей не было видно. Их попросту не было. По словам старшекурсников, эту часть дворца построят в будущем, но доступ к ней возможен уже сейчас через пространственно-временной карман.

Рядом с таинственной аудиторией на пятом этаже располагались административные помещения факультета Чапай, куда был недавно распределён Тарас. Ему было известно, что этот факультет обычно выбирает студентов из семей рабочих и крестьян, так что результаты распределения его нисколько не удивили.

В аудиторию вошёл преподаватель - профессор Рувиль Иосифович Тоибас, приятный старичок известный своими былыми подвигами на службе в восьмом отделении Тайного Приказа Его Императорского Величества.

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

- Итак, сегодня вы познакомитесь с вульнеросологией. Эта наука исследует магию нашего мира. Предметы и существа нашего мира могут обладать некоторыми свойствами, называемыми вульнеросами, которые характеризуют их подверженность воздействиям... Весьма необычным воздействиям, приводящим к весьма необычным результатам. А раз вульнеросы существуют, значит их можно исследовать и использовать.

Профессор сделал паузу, позволяя студентам осмыслить его слова.

- Некоторые вульнеросы можно использовать только при непосредственном контакте, в то время как другие можно активировать на некотором расстоянии. Вульнеросы можно блокировать, создавая защитные чары. Таким образом мы можем защитить вещи и существ от нежелательных воздействий.

Профессор встал и подошёл к столу.

- Всесильна ли эта магия? Ответ - нет. Но она обладает силой, достаточной, чтобы влиять на реальность. Поэтому вы будете учиться понимать, как работает эта магия, как её использовать и как защищаться от её воздействия... Но хватит пока теории, давайте начнём с элементарной демонстрации.

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

- Как видите, это обычный замок и он закрыт ключом. Я знаю, что этот замок подвержен вульнеросу, который позволяет открыть его без ключа. И сейчас я это продемонстрирую.

Он положил замок на стол, нарисовал мелом круг вокруг него и аккуратно вывел символы, отвечающие за использование вульнероса открытия замка.

- Теперь я кладу руки на круг и произношу заклинание: "Метасплойтус!"

На мгновение нарисованный круг озарился яркой красной вспышкой.

Профессор поднял замок в руках, и тот оказался открытым. В аудитории раздался гул восторга.

- Теперь давайте рассмотрим, как можно сделать так, чтобы замок таким образом уже не открывался. Я снова кладу замок, рисую круг, отвечающий за устранение вульнероса, подношу руки к кругу и произношу заклинание: "Аптгетапдейтус! Аптгетапгрейдус!"

Снова вспышка. На этот раз зелёная.

- Всё, в замке больше нет этого вульнероса на открытие, - объявил он с довольной улыбкой. - Но давайте всё же попробуем снова открыть его.

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

Довольный профессор обратился к аудитории.

- Всё работает, как видите! Само существование вульнеросов создаёт потребность в тех, кто умеет их исследовать, определять их наличие, использовать и предотвращать их использование.

Он сделал паузу, а затем добавил:

- А теперь перейдём к практическим занятиям.

@avleonovrus #fiction #fun #ТарасКропоткин #Halloween
Про уязвимость Remote Code Execution - XWiki Platform (CVE-2024-31982). XWiki - это бесплатная вики-платформа с открытым исходным кодом. Основная её особенность - простая расширяемость. XWiki часто используется в корпоративной среде как замена коммерческим Wiki-решениям (например, Atlassian Confluence).

Уязвимость с CVSS Base Score 10, опубликованная 10 апреля, позволяет злоумышленникам выполнять произвольный код через запрос в интерфейсе поиска по базе данных XWiki. Он доступен всем пользователям по умолчанию и дополняет обычный поиск по XWiki. Если он не нужен, его можно отключить, удалив страницу Main.DatabaseSearch. Уязвимость исправлена в версиях XWiki 14.10.20, 15.5.4 и 15.10RC1.

Пример эксплуатации содержится в самом бюллетене разработчиков. 🤷‍♂️ Работающие скрипты для эксплуатации уязвимости доступны на GitHub с 22 июня.

Если в вашей организации используется XWiki, обязательно обратите внимание.

@avleonovrus #XWiki
Посмотрел вебинар про on-prem ScanFactory VM и SECURITM. Было интересно. На паре слайдов были цитаты моих постов про VM без бюджета и розовые очки. 😇

Можно отметить:

🔻 Агрессивное позиционирование: утверждают, что у отечественных VM-вендоров проблемы с полнотой баз детектирования, им сложно работать с большим количеством результатов, низкий уровень автоматизации процесса. 🤷‍♂️ Якобы большинство российских вендоров тратит деньги на маркетинг, а не на экспертизу. Про прямых конкурентов: "у них там nmap".

🔻 Основная фишка ScanFactory VM - это конвейер из 21 сканеров, среди которых коммерческий "N-сканер", и платные источники данных по уязвимостям.

🔻 Как со сканированием российских продуктов? Битрикс - могут, российские ОС - пока нет. Планируют внедрить сертифицированный ФСТЭК сканер. 🤔 Своего сертификата ФСТЭК нет.

🔻 VM процесс реализуют интеграцией с SECURITM. Интересные фичи: оценки критичности по ФСТЭК, ссылки на бюллетени НКЦКИ, автоматизация реагирования (RPA).

@avleonovrus #ScanFactory #SECURITM
Набор тем для программных проектов, связанных с Управлением Уязвимостями. Периодически меня просят порекомендовать VM-ную тему для курсовой, диплома, хакатона и т.п. Думаю будет полезно собрать эти рекомендации здесь в виде серии постов.

Имхо, чем больше студентов будут брать около-VMные темы для практических работ, тем лучше:

Возможно кто-то превратит учебный проект в успешную опенсурсную и/или коммерческую историю.

Возможно кто-то устроится работать в VM-вендора или в компанию-клиента уже с релевантным опытом и глубоким пониманием темы.

В любом случае VM-комьюнити в России получит дополнительное развитие. 👍

Буду постепенно накидывать темы, а коллег VM-щиков приглашаю присоединиться.

🔹 Web-интерфейс (лончер) сканера уязвимостей
🔹 Консольный сканер уязвимостей

@avleonovrus #VMDevTasks
Отдельно разберу роадмап ScanFactory на 2025 год, озвученный на вебинаре.

Threat Intelligence фичи не относятся напрямую к VM-у: агрегатор утечек почт, мониторинг фишинговых доменов, поиск связанных доменов организации.

Из VM-ных фич:

🔹 Поддержка SSO. Важно для любого энтерпрайзного продукта.

🔹 Сканер с сертификатом ФСТЭК. Добавят в решение сканер от российского вендора. Для комплаенса и сканирования отечественных продуктов.

🔹 Сканирование изолированных (не связанных) сегментов сети в едином ЛК. Имеется ввиду сканирование внутренних сетей разных компаний (подразделений, тенантов) из единого ЛК.

🔹 Авто-тестирование безопасности внутренней сети. Будут автоматизировать действия внутреннего нарушителя: проверки безопасности служб AD (включая AD CS), анализ конфигураций ACL, атаки на сетевые протоколы, проверка стойкости паролей и т.д.

🔹 AI для рекомендации по устранению уязвимостей. Будут приоритизировать уязвимости и генерить человеко-читаемые рекомендации в оффлайн режиме.

@avleonovrus #ScanFactory
25 лет CVE: кто базу CVEшек анализировал, тот в цирке не смеётся. В январе 1999 года Дэвид Э. Манн и Стивен М. Кристи опубликовали статью "К единому перечислению уязвимостей" ("Towards a Common Enumeration of Vulnerabilities"), в которой предлагалось создать лист Common Vulnerability Enumeration, CVE (заметьте, в оригинале никаких "экспозиций" 😉), целью которого было бы:

🔻 нумеровать и различать все известные уязвимости
🔻 назначать стандартное уникальное имя каждой уязвимости
🔻 существовать независимо от множественных точек зрения на то, что такое уязвимость
🔻 являться публично "открытым", распространяемым без ограничений

В октябре 1999 года корпорация MITRE представила первый CVE лист, в котором была 321 запись. За 25 лет их количество перевалило за 250 000 идентификаторов (без Rejected). Количество новых CVE каждый год ставит рекорды, в этом году ожидается больше 35 000. В основном такой бешеный прирост обеспечивают организации со статусом CNA, которых уже 221. Они, получив заветный статус, могут заводить CVE на любую дичь. Хоть весь свой багтреккер пихать, как Linux Kernel. 😏

Во многом из-за такого прироста (ну и из-за приколов американской бюрократии) процесс по анализу уязвимостей в NIST NVD в 2024 году дал масштабный сбой, фактически остановился. Несмотря на все меры (включая финансовые), он так толком и не восстановился. NVD месяц от месяца анализирует значительно меньше CVE, чем получает от CVEorg. Бэклог на анализ растёт, и составляет 19 174 CVE. 🫣

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

Вот такой итог 25 лет. Вместо единой нейтральной базы пришли к стремительно растущему недоанализированному огороженному западному мусорному полигону. В котором приходится всем миром копаться, потому что ничего лучше всё равно нет. 🙄 Круто, чё. С юбилеем!

@avleonovrus #CVE #CVEorg #MITRE #NVD #NIST
VM Dev Tasks: Разработка web-интерфейса для сканера уязвимостей. Может ли сканер уязвимости быть коммерчески успешным и при этом не иметь графического интерфейса (желательно web)? Теоретический - да, но практически я таких прецедентов не припомню. 😉 Отсюда и заинтересованность в специалистах с таким опытом разработки со стороны Vulnerability Management и EASM вендоров.

В рамках практического проекта предлагается реализовать веб-интерфейс для готового консольного сканера уязвимости, например Nmap+Vulners, Nuclei или Scanvus.

Классической является компановка веб-интерфейса сканера уязвимостей Tenable Nessus:

🔹 параметры сканирования задаются в профиле
🔹 задачу на сканирование определяет профиль и таргет (IP или fqdn)
🔹 пользователь может запустить задачу на сканирование, отслеживать её статус и получить по ней результаты

Желательно максимально упростить добавление в приложение поддержки новых консольных сканеров.

@avleonovrus #VMDevTasks #Tenable #Nessus
С чего бы количеству новых уязвимостей уменьшаться, если код не становится лучше? Даже Майкрософт с их образцовой системой выявления и исправления уязвимостей (без шуток, в этом они top-notch) и минимизацией использования чужого кода практически каждый месяц исправляет больше сотни уязвимостей в своих продуктах. Откуда-то ведь они берутся? Кто-то лепит эти баги, уходящие беспрепятственно в прод? Учитывая лаг в месяцы между тем как исследователь сообщает об уязвимости в Microsoft и, собственно, датой выхода фикса, известных незакрытых уязвимостей в бэклоге у MS должно быть очень и очень много.

Что уж говорить о компаниях попроще, продающих под видом своих продуктов сплошной суп из за... заимствованного опенсурсного кода. 🙂 Который зачастую разрабатывает полусумасшедший мейнтейнер-энтузиаст на пару с очередным фейковым Jia Tan-ом. 😈 Это они, должны требования по безопасной разработке выполнять, чтобы не допускать уязвимостей? Ну да, конечно, ждите-ждите. 😏

@avleonovrus #Microsoft #Prediction #OpenSource
А почему компании-вендоры лепят продукты из кишащего уязвимостями недоверенного опенсурса и это их ничуть не напрягает? Просто их прибыль не зависит от уязвимостей примерно никак. Для них важно, чтобы фичи для решения бизнес-задач клиентов появлялись в продукте быстро и с минимальными затратами на ФОТ. А если это можно получить сразу, бесплатно и легально за счёт опенсурсного кода - это ж просто праздник какой-то! Практически деньги из воздуха! 💰🤑 А то, что в этом софте будут находить уязвимости или даже закладки, так и что с того? Надо будет - запатчат.

Быстро поднятое упавшим не считается!

Удобное положение вещей: выпущенное обновление искупает факт наличия уязвимости. Какая бы позорная она не была! Даже если она эксплуатировалась как 0day! Было и было. 🤷‍♂️

Ставьте обновления, господа клиенты. Хоть по 10 раз на дню. 😏 И не рефлексируйте.

Пока факт наличия уязвимости в продукте стоит вендорам примерно 0, ситуация не изменится. Издержки продолжат нести клиенты. 🤷‍♂️

@avleonovrus #OpenSource #vendors
Как сделать так, чтобы вендоры отвечали за уязвимости в их продуктах? Как по мне, рыночные механизмы здесь не работают. 🤷‍♂️ Работают только регуляторные и только в контексте сертифицированных решений. Только отзыв сертификата существенно влияет на бизнес вендоров. 😏

"Если б я был султан", в случае обнаружения критичной уязвимости в сертифицированной версии ПО требовал бы, чтобы

🔻 вендор объяснил, как уязвимость туда попала, с учётом реализованных процессов безопасной разработки

🔻 испытательная лаборатория объяснила, почему уязвимость не была обнаружена в ходе работ по сертификации

А дальше пусть комиссия регулятора решает, что делать и с этим вендором, и с этой лабораторией. 😈

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

@avleonovrus #OpenSource #vendors
На предложение спрашивать с вендоров за уязвимости можно возразить, что они просто начнут свои уязвимости замалчивать. И сейчас отечественные вендоры не любят сообщать об уязвимостях в своих продуктах, а так совсем ягнятки замолчат. 🤐

И тут я сформулирую предложение, без которого первое не работает. Если вендор знает об уязвимости в версии своего продукта, используемой у клиентов, и этот факт замалчивает, то это должно классифицироваться как КРАЙНЕ серьёзное нарушение. Если такая ситуация вскрывается, то

🔹 сертификат продукта должен отзываться, лицензия вендора анулироваться, назначаться крупный штраф

🔹 ответственный (гендир) должен лично нести за это уголовную ответственность

По какой статье? Имхо, стоит расширить 274.1, т.к. такое замалчивание создаёт риски для КИИ.

Следует сделать так, чтобы между публикацией информации об уязвимости (и последующим объяснением с регулятором) и замалчиванием вендору ВСЕГДА рационально было бы сделать выбор в пользу первого.

@avleonovrus #vendors #silentpatching
Возможно ли использовать AI для детектирования уязвимостей? Думаю да, но тут нужно определиться, что мы под этим понимаем.

🔻 Если речь идёт об обнаружении ранее неизвестных уязвимостей, о ресёрче, то здесь AI инструменты работают уже сейчас. Буквально на днях, 1 ноября, исследователи из Google Project Zero обнаружили первую реальную эксплуатабельную уязвимость с помощью своего LLM проекта Big Sleep. Это была stack buffer underflow в SQLite. Очень круто и многообещающе. 👍

🔻 Если же речь идёт об известных (CVE) уязвимостях, то задача сводится к генерации чётких правил их детектирования в инфраструктуре. AI должен взять на вход имя продукта и вендора, обнаружить источник данных об уязвимостях, понять структуру данных и как можно из них сгенерировать формальные правила для детектирования (например, на языке OVAL), произвести генерацию и оценить корректность правил. Не выглядит как что-то невероятное, но практических реализаций этого я пока не встречал. 🤷‍♂️

@avleonovrus #AI #SQLite #Google #OVAL #Detection
В Штатах победил Трамп, но, имхо, для нашего дела это мало чего изменит. Будь там хоть Трамп, хоть Харрис, хоть Байден, хоть сам чёрт лысый. 😈

🔻 Как использовали США свой взращённый нерыночными методами бигтех как инструмент глобального доминирования, так и будут использовать. Как распространяли NSA-ные закладки под видом уязвимостей, так и продолжат распространять. Новые "оспенные одеяла" для нового времени. 🤷‍♂️

🔻 Наиболее негативным сценарием сейчас, как ни парадоксально, было бы снятие всех ограничений со стороны США и схлопывание импортозамещения у нас. Думаю, что это очень маловероятно. Памятуя о первой каденции Трампа, стоит ждать усиления санкционных ограничений в области экспорта IT-продуктов и сервисов. 🌚

🔻 Бардака в NVD, при Трампе, конечно, было куда меньше. Но и обещаний навести там порядок за 2 дня никто не озвучивал. 😅 Так что в части американской инфраструктуры для описания и оценки уязвимостей ничего кроме дальнейшей деградации я не жду.

@avleonovrus #USelections #thoseamericans
VM Dev Tasks: Разработка консольной утилиты - сканера уязвимостей. Сканер уязвимостей взаимодействует с сетевыми хостами в инфраструктуре организации и определяет для них известные (CVE, БДУ) уязвимости. Взаимодействие может подразумевать выполнение команд на самом хосте (подключение к установленному на хосте агенту или безагентное подключение по SSH, WinRM и т.д.) или не подразумевать этого (взаимодействие с сервисами на открытых портах хоста).

В рамках проекта потребуется реализовать:

🔹 парсеры для источников информации об уязвимостях для некоторого набора софтов/ОС/сетевых устройств (лучше выбирать не самое очевидное и распространённое, но при этом востребованное); на основе этой информации сгенерировать формальные правила детектирования уязвимостей (например, на языке OVAL)
🔹 скрипты инвентаризации состояния хоста
🔹 скрипты детектирования уязвимостей по сгенерированным ранее правилам

В идеале попробовать реализовать генерацию правил детектирования с помощью LLM.

@avleonovrus #VMDevTasks #Detection
Мини-отпуск в Сергиевом Посаде прошёл успешно. 👍 Лавру посетили, про историю этого важнейшего религиозного центра послушали. ☦️ Съездили на производство матрёшек и поучились их расписывать. 🎨 Добрались до Богородского на фабрику резных деревянных игрушек. В кухмистерской XIX века поучаствовали в приготовлении карамели. 😅 И много ещё чего интересного поделали.

Теперь с новыми силами буду возвращаться в VM-ный контекст. 😇

@avleonovrus #offtopic #trip #дыбр #vacation
A6СПК: как делать больше, а напрягаться меньше. Сформулирую способ ведения задач, который у меня выработался за последний год-два.

Основные моменты:

🔻 Держать задачи и идеи в голове очень вредно. Мало того, что они забываются в самый неподходящий момент, так это ещё и ОЧЕНЬ энергозатратно. Тут отсылаю к концепции "мыслетоплива" Максима Дорофеева. Я считаю его джедайские техники какими-то излишне замороченными, но базовые вещи про "мыслетопливо" и "обезьянку" я разделяю. Если есть идея или задача, важно её записать. Я пришёл к тому, что удобнее всего записывать на листочках формата A6 (четверть A4 или половина листа из стандартного мерчёвого блокнота с конференции 😅). Необязательно сразу садиться работать над этой задачей, можно отложить листок в стопочку и вернуться к ней в более удобное время. Но записать следует обязательно. И задачи без такого листочка в работу не брать.

🔻 Когда начали работать над задачей, берём соответствующий листочек A6 и начинаем разбивать эту большую задачу на последовательность конкретных простых микрозадач в прямоугольничках, последовательно связанных стрелочками. Длительность микрозадачи не должна быть больше 5-10 минут. Чем проще и конкретнее микрозадача, тем лучше. Не экономьте бумагу в ущерб своему мыслетопливу! Необязательно расписывать задачу на микрозадачи полностью, но 3-4 микрозадачи лучше сразу зафиксировать. Чтобы этап планирования и этап выполнения были разнесены. Закончили планировать - без рефлексий берём первую микрозадачу в работу.

🔻 Когда начинаем работать с микрозадачей, ставим в соответствующий прямоугольничек точку, рисуем от него стрелочку и кружочек, в который вписываем время, когда планируем закончить работу с микрозадачей. Если сейчас 18:10, пятиминутную задачку планируем выполнить в 18:15, пишем в кружочке крайнее время - 15. Начиная с текущего момента и до крайнего времени в кружочке делаем только эту микрозадачу. Выполняем её ни на что не отвлекаясь. Какое бы срочное дело ни было, уж 5-10 минут оно подождёт. И на 5-10 минут сохранить полный фокус не так сложно. Ни над чем, что не оформлено как микрозадача в принципе не работаем.

🔻 По завершении микрозадачи с чувством глубокого морального удовлетворения перечёркиваем прямоугольничек и кружочек (отмечая, что по времени уложились 👍; но если не уложились - не беда). И без рефлексии сразу переходим к следующей микрозадаче. И так далее пока вся задача не будет выполнена. Тогда перечёркиваем листок, рвем его на кусочки (с удовлетворением от того, что задача выполнена) и берём следующую задачу в работу.

Может показаться, что всё это какая-то излишняя фигня и проще делать задачи без какой-либо фиксации, просто в состоянии потока. Меня самого такие мысли неоднократно посещали, но пока каждый раз оказывалось, что вдолгую без фиксации поддерживать рабочий темп ГОРАЗДО сложнее. Это приводило к потерям времени и сил несопоставимо большим, чем любое планирование на листочке. 🤷‍♂️

@avleonovrus #offtopic #GTD #A6СПК
Трансформировал свой англоязычный сайт avleonov.com. Русскоязычный сайт avleonov.ru я сразу задумывал как автоматизированное зеркало телеграм-канала @avleonovrus. А с развитием англоязычного сайта было непонятно. 🤔

Я его веду с 2016 года. Долгое время это была моя основная площадка для VM-ного контента. С февраля 2020 я выкладывал там посты исключительно с видео. 🪧 Выпустил 94 видяшки. Но постепенно мне жутко надоел этот формат. 😮‍💨 Интереснее и проще было делать ролики на русском (сначала в "Прожекторе по ИБ", потом в SecLab "В тренде VM"). А на английский их, при необходимости, переводить.

С марта 2024 на англоязычном сайте посты не выходили. 🤷‍♂️ Выходили только на канале @avleonovcom. В итоге я решил, что и англоязычный сайт станет зеркалом Telegram-канала. 🪞

Доработал скрипты и залил на сайт 117 постов из ТГ, вышедшие с марта 2024. Весь контент, который я добавлял до этого руками остался без изменений.

@avleonovrus #blogging #Telegram #Mirror #ПрожекторпоИБ #ВтрендеVM #SecLab