Почему так легко захватить вашу сеть изнутри?

Внутреннее тестирование на проникновение, одна из самых сложных и при этом впечатляющих услуг на рынке. Впечатляющих в первую очередь для руководства, ведь за несколько дней, а иногда и часов, пентестер выкладывает перед ним на стол пароли к учетным записям в базах данных 1с, SAP, CRM, Jira, пароль администратора домена, финансовую отчетность, сканы паспортов топ менеджмента и любую другую информацию по запросу.

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

image-loader.svg
Неплохая схема от securelist.ru, но фишинг тут лишний для данного повествования

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

С этого пентестер и начинает свой путь по сети. Этот «злоумышленник» не использует никакое уникальное ПО, и конечно же не имеет под рукой уязвимостей нулевого дня. Наш герой обращается к публичным гайдам и публичному ПО и… ему этого более чем достаточно. Именно так это и делают настоящие злоумышленники, например в 2017 году Group-iB подробно описывала атаки на банки в РФ и этап захвата сети банка. Так вот ничего уникального они не использовали, все подходы и методы были идентичны тем, что мои коллеги пентестеры делают на внутреннем пентесте!

Поехали


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

  1. Shadow IT — забытые компьютеры/сервера/системы. Они как правило не обновлены, без домена и групповых политик, с паролями по умолчанию. Возможно они использовались когда-то для теста и не были выключены, или остались «в наследство» от прошлого админа и были забыты. Именно с такого проще всего начинать, получить первые учетные записи домена, запись старого локального админа… Именно на такой инфраструктуре работают bluekeep, Estemaudit, PrivExchange и прочие публичные эксплойты под критические уязвимости. Там находятся MS17–010 и даже MS08–067! Да в 2021 году.
  2. LLMNR и NBNS спуффинг — настоящая палочка-выручалочка для пентестера. Два включенных по умолчанию протокола, которые позволяют вам практически незаметно для пользователей вашей сети встать посередине и угнать хэши учетных записей домена.
  3. «Любовь» пользователей к смене паролей — у нас политикой разрешены только стойкие пароли. И меняются они каждые 3 месяца, скажете вы. Тогда я вас расстрою, процентов 60% вашей компании будут «January2021», «February2021» и так далее. Спецсимволы? «January2021!» Проверено не на одной компании, на удивление практика частой смены паролей сейчас играет в минус.
  4. Файловые помойки — во многих компаниях активно с ними борются, но они есть. И что на них только нет, при правильном поиске можно найти не только пароли пользователей, но и сервисные учетные записи. Также там можно оставить ярлык, на свою шару и собирать хэши учетных записей зашедших пользователей.
  5. Хранение паролей в оперативной памяти lsass.exe — есть такая любимая игрушка у пентестеров и злоумышленников — Mimikatz, которая помимо всего прочего позволяет эффективно доставать пароли из оперативной памяти процесса lsass.exe, в открытом виде. Это не заработает если у вас в сети нет серверов/компьютеров с ОС ниже Server 2012 или Windows 8. Но до полного перехода на эти версии еще далеко, а защитить lsass на старых серверах еще сложнее. Поэтому это лучшее средство поднятия привилегий с локального админа.
  6. Кривая настройка антивируса — антивирус установлен, заблокированы изменения паролем, что еще нужно? Исключения. Очень часто они настраиваются единообразно для всех компьютеров в сети, например есть исключение на папку IIS… которого на большинстве компьютеров то и нет. А что мешает злоумышленнику ее создать и запускать оттуда вирус? Ничего, вы сами оставили избыточные исключения.
  7. Пароль локального администратора в GPO — Майкрософт уже много лет говорит о том, что нельзя менять учетные записи через групповые политики, и даже сделало для этого отдельный софт. Но почему пароль ведь там зашифрован? Да зашифрован, ключом который уже много лет слит в интернет, и все пользователи домена нагуглив гайд могут узнать УЗ локальных админов, или другие раздаваемые локальные УЗ.
  8. Неэффективная сетевая сегментация — да, VLANы нарезаны, но только правил фаерволов между ними нет, или почти нет, подключаться по управляющим портам может кто угодно, пользователям доступны сервисы, которые им и не нужны, а все это очень ускоряет работу пентестеру, да так удобнее и админам и злоумышленникам, спасибо.
  9. Проблемы Linux-машин, о них покороче ведь встречаются они пореже в энтерпрайзе. Запуск скриптов через crontab с кривыми правами или неполными путями, позволяют подменить скрипт или выполнить свой и так поднять привилегии. Избыточные права на sudo команды, ну и конечно же bash history и по ошибке введенные пароли, чего только не увидишь там.


image-loader.svg
«Нам потребовался всего один день, теперь взгляните на отчёт»

От самых простых и коротких до простых и длинных


«Плоская сеть»


  1. Llmnr/nbns спуффинг.
  2. Множественные хэши включая хэш доменного админа (Ivanov_adm).
  3. Перебор хэша (Cby[hjafpjnhjy).
  4. Профит!


Время? 20 минут.

«Грязные шары»


  1. Llmnr/nbns спуффинг.
  2. Множественные хэши пользователей, часть из них подобраны (January2021! ).
  3. Поиск по файловой помойке, найдены конфиги сервиса с сервисной УЗ администратора (Zabbix_m).
  4. Профит!


Время? 1 час.

«Групповые политики»


  1. Llmnr/nbns спуффинг.
  2. Множественные хэши пользователей, часть из них подобраны (January2021! ).
  3. Анализ GPO, найден пароль локального админа, расшифрован (Administrator).
  4. Заход под локальным админом на один из серверов с ОС 2008R2(Terminal_2_srv).
  5. Пароли из оперативной памяти процесса lsass.exe получены, включая доменного админа.
  6. Профит!


Время? 2 часа.

«Shadow IT»


  1. Сканирование сети.
  2. Найден уязвимый сервер вне домена.
  3. MS17–010, сервер захвачен, получена УЗ локального администратора (Administrator).
  4. Заход под локальным админом на один из серверов с ОС 2008R2(Msk_mail3).
  5. Пароли из оперативной памяти процесса lsass.exe получены, включая доменного админа.
  6. Профит!


Время? 2 часа.

«Банк»


  1. Первоначальная сеть «мертвая» Llmnr/nbns спуффинг ничего не дает
  2. Сканирование сети, поиск сервисов.
  3. Найдена забытая система мониторинга с учеткой по умолчанию (admin/admin), в ней УЗ домена (Monitor1), но с правами обычного пользователя.
  4. Получен доступ к файловой шаре пользователей, найдена УЗ пользователя с правами на удаленное подключение (PopovAO).
  5. Выполнено подключение к серверу 2008R2(MSK_FSRV3), выполнено закрепление и обход Антивирусного ПО из-за лишних исключений.
  6. Привилегии подняты, из памяти процесса lsass.exe получена привилегированная УЗ сотрудника ИБ (Romanov_sec), но без прав администратора домена.
  7. Наиболее интересный сегмент — процессинг недоступен, закрыт сетевой доступ с серверов.
  8. Проход по ИБ-серверам, сервер (MSK_MaxPatrol) имеет доступ ко всей сети без ограничений.
  9. Вход на сервер 2008R2(MSK_PRC_APP2) в защищенном сегменте, восстановлен пароль локального администратора из lsass.exe.
  10. Профит!


Время? 1 день.
image-loader.svg

Подытожим


Это самые популярные проблемы ИБ, во многих корпоративных сетях встречаются 2–3 из них, а иногда и все. Для их эксплуатации не требуется высокого уровня навыков, и гайдов что находится дальше первой страницы поиска гугла. От этих проблем нужно избавляться, вот самые популярные рекомендации:

  1. Регулярно проводить аудит/сканирование корпоративной сети, обновление карты сети и сервисов, отключать все неиспользуемое.
  2. Использовать DNS, а не LLMNR и NBNS.
  3. Ввести требования по сложности паролей, черный список словарных паролей, смена паролей не чаще раза в полгода. Провести работу с пользователями.
  4. Бороться с файловыми помойкам, только папки для отделов со строгим контролем доступа.
  5. Перейти на версии ОС Windows выше 2008R2.
  6. Провести аудит исключений антивирусного ПО, удалить все лишние и неиспользуемые, уделить особое внимание исключениям на папки.
  7. Использовать Microsoft LAPS, а не GPO для распространения пароля локального администратора.
  8. Использовать только «белый список» правил между сегментами сети, уделить особое внимание серверам, которым нужен доступ во все сегменты.
  9. Внимательно изучить содержимое Linux-машин и запускаемых скриптов из crontab.


Эти проблемы можно решить и иначе, так как вам удобнее, но главное решить.

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

cfu16b6kzg_9mqboy9koozuz58c.jpeg

image-loader.svg

© Habrahabr.ru