Дмитрий Курамин («Инфосистемы Джет») об инструментах пентестеров

Дата: 27.10.2022. Автор: CISOCLUB. Категории: Главное по информационной безопасности, Интервью с экспертами по информационной безопасности
Дмитрий Курамин («Инфосистемы Джет») об инструментах пентестеров

Дмитрий Курамин, старший консультант ИБ группы практического анализа защищенности «Инфосистемы Джет», в интервью CISOCLUB рассказал об инструментах пентестеров: как они «выглядят», для каких целей применяются и как могут помочь команде защитников компании. В августе эта тема была представлена на онлайн-конференции CyberCamp 2022.

Какие инструменты проверки внешнего периметра можно использовать?

Основные сервисы — это Censys, Shodan и Riskiq, которые позволяют нам получить информацию о внешнем периметре компании, посмотреть, какие сервисы опубликованы и какие общедоступны. На самом деле это полезная практика, которая позволяет найти то, что часто пропускают ИТ-специалисты, когда админят свои сети изнутри компании.

Например, с помощью Censys мы нашли установочник Битрикса у одного из заказчиков, развернули его, с доступом к панели администрирования залили Web Shell и получили доступ к консоли и продолжили атаку внутрь компании.

Какие инструменты для проверки утечек можно использовать?

На мой взгляд, основной инструмент — сервис LeakCheck. Он позволяет проверять утечки как по конкретным email-адресам или логинам, так и по доменам. Например, по домену организации можно получить список всех скомпрометированных учетных записей, которые были опубликованы в каком-то публичном доступе. Мы его постоянно используем, у нас есть различные интеграции, в том числе с нашими инструментами. Еще у нас есть свои самописные инструменты и даже специальный телеграм-бот, который выполняет ряд задач по пентесту, но он закрытый.

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

Как и зачем сканировать веб-ресурсы?

Прежде всего нужно говорить об инструментальном сканировании. Основная задача — проверить типовые уязвимости по модели OWASP Top 10 и в принципе по методологии OWASP. Веб-сканер не дает 100% эксплуатации уязвимости. Он проверяет по своим шаблонам, и в целом нужно понимать, что, скорее всего, злоумышленник точно так же будет сканировать, пытаться найти точки входа, какие-то эндпоинты, в отношении которых он может проводить свои атаки.

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

Как получать данные о доменах и поддоменах?

Получить информацию о доменах и поддоменах позволяют сервисы Censys и Riskiq. Если мы хотим проверить, какие поддомены доступны в отношении организации, можно использовать инструмент SubFinder. Его преимущество в наличии функционала API-интеграции, который позволяет добавить API-ключи от этих сервисов. У нас, к примеру, интегрировано девять крупных сервисов. Получается, он просто одной командой начинает собирать поддомены и, по сути, использовать функционал всех этих сервисов. То есть это просто утилита, которая объединяет все эти проверки и сразу все выводит в одном списке.

Как наиболее эффективно использовать Burp Suite специалисту по пентестам?

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

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

Какие инструменты для проверки внутреннего периметра можно использовать?

Зависит от того, какие именно проверки нужны, но самое основное, с точки зрения AD, это Bloodhound. Он позволяет оценить взаимосвязь в домене и построить граф, который покажет наиболее оптимальные пути до машин с сессией домен-админа. Это своего рода дополнительная визуализация атаки.

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

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

Еще дополнительный инструмент — это CrackMapExec, с помощью которого можно провести типовые атаки на SMB-ресурсы. Он может показать, на каких сервисах, хостах используется и поддерживается версия SMB v.1. Этот инструмент позволяет проводить Password Spraying атаки на SMB-ресурсы, когда мы в отношении множества учетных записей используем какой-то один типовой пароль. Например, LETO2022.

Мы запускаем его по всем хостам и для всех пользователей. Если у кого совпадет логин и используется этот пароль, то мы можем скомпрометировать эту учетную запись. Плюс существуют дополнительные проверки, связанные с некорректной настройкой SMB и отсутствием обновлений Windows, возможность проэксплуатировать какие-то типовые атаки. В случае успешной эксплуатации появляется возможность получить доступ к содержимому SAMхранилища — это хранилище локальных паролей Windows. И в случае отсутствия критичных обновлений Windows, при наличии соответствующих уязвимостей есть возможность, например, выгрузить из оперативной памяти хэши паролей или пароли в открытом виде пользователей домена, которые авторизованы на этом компьютере. Даже здесь можно наткнуться на хэш пароля администратора домена. Такие прецеденты у нас бывали.

Как обучать и проверять знания по ИБ у сотрудников? Часто ли вы проводите такие фишинговые атаки внутри компании?

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

Наша задача — сформировать выборку пользователей домена. Как это делается в «Инфосистемы Джет»: формируется выборка пользователей, тема рассылки, далее письма рассылаются, после чего мы анализируем, сколько пользователей получили это письмо, открыли ссылку и ввели свои данные учетной записи. На основе этих собранных данных формируется «карма» сотрудников. При достижении критического уровня сотрудник может быть отправлен на обучение. Наша задача — не поймать сотрудника, а научить процессу, что при получении фишингового письма нужно оповестить компетентное подразделение.

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

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

Есть какое-то процентное соотношение, что раньше сотрудники были менее грамотными в этом вопросе, а сейчас, допустим, они стали более грамотными?

По нашей статистике, в российских компаниях сотрудники стали более грамотными в отношении фишинга – вида социальной инженерии, когда на электронную почту приходят письма от кажущегося надежным источника с просьбой предоставить конфиденциальную информацию. На этот результат влияют проводимые компаниями внутренние обучения по основам ИБ и типовым угрозам. Однако нетиповые векторы атаки по-прежнему актуальны. Например, пока никто не уделяет должного внимания звонкам, рассылкам через мессенджеры, плакатам с QR-кодами.

Так, в одном из проектов по анализу защищенности в формате целенаправленной атаки в офисе заказчика мы развесили плакаты с QR-кодами в местах скопления сотрудников (кафетерий, входы-выходы из здания, банкоматы, столовая, курилка) с текстом «Для доступа к корпоративной Wi-Fi сети отсканируйте QR-код» и формой авторизации. Расклейка подобных плакатов на территории заказчика вызвала доверие сотрудников к этой информации, и они охотно вводили свои данные. Таким образом мы смогли компрометировать их учетные записи.

Как научить пользователей использовать сложные пароли и проверять пароли? Как проверять наличие MFA?

Нужно не просто научить использовать сложные пароли, а объяснить сотрудникам, что не всякий сложный пароль является безопасным. Желательно не использовать одни и те же пароли на разных сервисах. Можно ввести очень сложный пароль на каком-то сервисе, который достаточно легко можно скомпрометировать. И ваши данные окажутся в базе утечек. Злоумышленники точно пользуются такими ресурсами.

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

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

Очевидно, возможность использовать второй фактор — это дополнительная защита. Можно заводить за файервол какие-то критические ресурсы. Современные решения по второму фактору более безопасны, чем второй фактор через СМС либо звонок, поскольку срок действия кодов существенно ограничен — до 1–2 минут в зависимости от конфигурации. В случае, если сотрудник все-таки сообщит свой второй фактор, велика вероятность, что его срок действия уже истечет и злоумышленник ничего не успеет.

Об авторе CISOCLUB

Редакция CISOCLUB. Официальный аккаунт. CISOCLUB - информационный портал и профессиональное сообщество специалистов по информационной безопасности.
Читать все записи автора CISOCLUB

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *