Машинное Обучение В Наступательной Безопасности

Вопреки распространенному мнению, машинное обучение — не изобретение XXI века.

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

Программные реализации алгоритмов и моделей также улучшились.

Соблазн заставить машины заботиться о нашей безопасности и защищать людей (достаточно ленивых, но умных) стал слишком велик.

По оценке CB-инсайты Почти 90 стартапов (2 из них с оценкой более миллиарда долларов США) пытаются автоматизировать хотя бы часть рутинных и монотонных задач.

С переменным успехом.



Машинное обучение в наступательной безопасности

Главная проблема Искусственный интеллект сейчас безопасно — слишком много шумихи и откровенной маркетинговой чуши.

Словосочетание «искусственный интеллект» привлекает инвесторов.

В индустрию приходят люди, готовые назвать ИИ простейшей корреляцией событий.

Покупатели решений за свои деньги не получают того, на что надеялись (даже если эти ожидания изначально были слишком высокими).



Машинное обучение в наступательной безопасности

Как видно из карты CB Insights, существует с десяток областей, в которых используется ML. Но машинное обучение еще не стало «волшебной пулей» кибербезопасности из-за ряда серьезных ограничений.

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

Нейронная сеть может хорошо делать одну вещь.

Если она хорошо распознает изображения, то та же сеть не сможет распознавать звук.

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

Если клиент фанат ИИ, то он будет покупать, покупать и покупать.

Второе ограничение — отсутствие обучающих данных.

Решения предварительно обучаются, но не на ваших данных.

Если ситуацию «Кто считает ложноположительные в первые две недели эксплуатации» еще можно принять, то в дальнейшем «охранники» будут слегка растеряны, ведь решение покупалось для того, чтобы машина взяла на себя рутинную работу.

, а не наоборот.

Машинное обучение в наступательной безопасности

В-третьих, и, наверное, самое главное на данный момент, это то, что на МО-продукты нельзя нести ответственность за свои решения.

На такие претензии даже разработчик «уникального средства защиты с искусственным интеллектом» может ответить: «Ну и что вы хотели? Нейронная сеть – это черный ящик! Почему она так решила, никто, кроме нее, не знает».

Поэтому инциденты ИБ теперь подтверждены людьми.

Машины помогают, но ответственность по-прежнему несут люди.

Есть проблемы с информационной безопасностью.

Рано или поздно они будут решены.

Но как насчет нападения? Могут ли МО и ИИ стать серебряной пулей для кибератак?



Варианты использования машинного обучения для повышения вероятности успеха пентеста или анализа безопасности

Наверное, сейчас выгоднее всего использовать МО там, где:
  1. вам нужно создать нечто похожее на то, с чем уже сталкивалась нейросеть;
  2. необходимо выявить закономерности, не очевидные для человека.

МО уже неплохо справляется с этими задачами.

Но помимо этого некоторые задачи можно ускорить.

Например, мои коллеги уже писали о автоматизация атак с использованием Python и Metasploit .



Мы пытаемся обмануть

Или проверить осведомленность сотрудников в вопросах информационной безопасности.

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

Предположим, что мы уже восстановили традиционными методами (сайт компании, социальные сети, сайты вакансий, публикации и т. д.):

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

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

В нашем случае тестируется кто-то из руководства компании.

В этом статья Говорят, что одной минуты голоса достаточно, чтобы достоверно притвориться.

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

Если мы умеем имитировать голос, то можем сами создать стрессовую ситуацию для конкретной жертвы нападения.

- Привет? — Продавец Пресейлович, здравствуйте.

Это директор Началоникович.

По какой-то причине ваш мобильный телефон не отвечает. Там вы сейчас получите письмо от ООО «Вектор-Фейк», посмотрите.

Это срочно! - Да, но.

- Всё, я больше не могу говорить.

Я на встрече.

Увидимся позже.

Ответь им!

Кто не ответит? Кто бы не посмотрел на вложение? Все будут смотреть.

И в это письмо можно загрузить что угодно.

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

Кстати, подготовку атаки (сбор и анализ данных) тоже можно частично автоматизировать.

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



Атакуем реализации криптосистем

Предположим, мы можем прослушивать зашифрованный трафик атакуемой организации.

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

Идея была вдохновлена этим исследованием сотрудников Cisco».

Обнаружение вредоносного кода в зашифрованном TLS-трафике (без расшифровки) «Ведь если мы можем определить наличие вредоносных объектов на основе данных сервисов NetFlow, TLS и DNS, то что мешает нам использовать эти же данные для выявления коммуникаций между сотрудниками атакуемой организации, а также между сотрудниками и корпоративными ИТ-службамиЭ» ? Атака криптовалюты в лоб обходится дороже.

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

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

Красота метода заключается в двух преимуществах:

  1. Вы можете обучить машину дома, используя виртуальные машины.

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

    «Машина, это такой-то протокол, у нее такие-то размеры пакетов, такая-то энтропия.

    Понял? Ты помнишь? Повторите как можно больше раз для разных типов открытых данных.

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

Недостаток: MitM еще нужно получить.



Ищем ошибки и уязвимости в программном обеспечении

Вероятно, самой известной попыткой автоматизировать поиск, эксплуатацию и исправление уязвимостей является проект DARPA Cyber Grand Challenge. В 2016 году семь полностью автоматизированных систем, разработанных разными командами, соревновались в финальной битве, напоминающей CTF. Разумеется, цель разработок была заявлена исключительно благая — защита инфраструктур, iot, приложений в реальном времени и с минимальным участием человека.

Но можно посмотреть на результаты под другим углом.

Первое направление, по которому развивается ML в этом вопросе, — это автоматизация фаззинга.

Те же члены CGC широко использовали американскую нечеткую диаграмму.

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

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

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

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

Нейронные сети могут искать не просто участки кода с уязвимостями, а код, аналогичный уязвимому.

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

Исследователю предстоит проверить это подозрение.

С каждой новой найденной ошибкой такая нейросеть будет становиться всё более «умнее».

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

В динамическом анализе, если нейронная сеть сможет «понять» взаимосвязь между входными данными (в том числе пользовательскими), порядком выполнения, системными вызовами, распределением памяти и подтвержденными уязвимостями, то она сможет со временем искать новые.



Мы автоматизируем работу

Теперь возникла проблема с чисто автоматической работой -

Машинное обучение в наступательной безопасности

Исао Такаесу и другие участники, разрабатывающие Deep Exploit — «Полностью автоматический инструмент для тестирования на проникновение с использованием машинного обучения», пытаются решить эту проблему.

О нем написано подробно здесь И здесь .

Данное решение может работать в двух режимах — режиме сбора данных и режиме перебора.

В первом режиме DE идентифицирует все открытые порты на атакуемом хосте и запускает эксплойты, которые ранее работали для этой комбинации.

Во втором режиме злоумышленник указывает название продукта и номер порта, а DE «поражает область», используя все доступные комбинации эксплойта, полезной нагрузки и цели.



Машинное обучение в наступательной безопасности

Deep Exploit может самостоятельно изучать методы эксплуатации, используя обучение с подкреплением (благодаря обратной связи, которую DE получает от атакуемой системы).



Может ли ИИ теперь заменить команду пентестеров?

Может быть, Пока Нет. У машин возникают проблемы с выстраиванием логических цепочек эксплуатации выявленных уязвимостей.

А ведь именно это зачастую напрямую влияет на достижение цели тестирования на проникновение.

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

Работа автоматизированных систем создает МНОГО шума в атакуемой системе, который легко замечается средствами защиты.

Машины работают коряво.

Уменьшить этот шум и получить представление о системе можно с помощью социальной инженерии, но машины и в этом не очень хороши.

А еще у машин нет сообразительности и обоняния.

Недавно у нас был проект, в котором наиболее экономичным способом проведения тестирования было бы использование модели RC. Я не могу себе представить, как нечеловек мог придумать такое.

Какие идеи по автоматизации вы могли бы предложить? В опросе могут участвовать только зарегистрированные пользователи.

Войти , Пожалуйста.

Работает ли ИИ для безопасности? 8,33% Да 2 37,5% Скорее да, чем нет 9 41,67% Скорее нет, чем да 10 12,5% Нет 3 Проголосовали 24 пользователя.

9 пользователей воздержались.

В опросе могут участвовать только зарегистрированные пользователи.

Войти , Пожалуйста.

Планируете ли вы приобрести какое-либо решение AI? 10% Хочу попробовать, планируем купить 2 30% Хочу, но денег нет 6 60% Нет 12 Проголосовали 20 пользователей.

7 пользователей воздержались.

Теги: #Машинное обучение #информационная безопасность #искусственный интеллект #пентест #тестирование на проникновение #хайп #наступательная безопасность #расширенный мониторинг #глубокий эксплойт

Вместе с данным постом часто просматривают: