Затрагивая тему конечных целей тестирований на проникновение, можно отметить, что в преобладающем большинстве случаев ключевой целью атаки является получение максимальных привилегий в корневом домене Active Directory. Как ни крути, но большинство корпоративных сетей построено на решениях Microsoft и как следствие в качестве централизованного управления идентификаторами и механизмами авторизации к информационным активам используется Microsoft Active Directory. Обладая соответствующими привилегиями в каталоге становиться возможным использовать их для развития огромного числа всевозможных сценариев атак. Поэтому, как правило, после "захвата" домена пентест переходит в другие плоскости. Например, в плоскость технологического аудита или в сторону развития атаки в направлении смежных систем, напрямую не завязанных на Active Directory (коммуникационное оборудование, ERP и пр.).
Итак, как же можно максимально сократить время на реализацию успешной атаки в отношении каталога домена? Прям до 1 минуты? Я постараюсь раскрыть секрет успеха в данной публикации.
Ntlm relay: начало
Давным-давно, когда компьютеры были большими брррр... где-то я уже это говорил. В общем, все началось с того, что в компании Microsoft придумали не самый безопасный протокол сетевой аутентификации - LanManager. За ним последовало наследие в виде NTLM, который решал только часть недостатков своего предшественника. Впоследствии, накрутив более тяжелые криптографические алгоритмы, появился NTLMv2, который вместе со своими предшественниками перекантовал и до наших дней.
Но вернемся в прошлое. В 1996 году появляется первое исследование на тему фундаментальной уязвимости в протоколе NTLM, а через пять лет появляется и полноценный пруфф. Суть атаки хорошо проиллюстрирована на следующей картинке.
В 2008 году, под давлением появившихся к тому времени готовых к употреблению сплоитов (1, 2, 3), компания Microsoft все-таки решает устранить уязвимость, однако делает это как нельзя криво и вектор атаки перерождается в новое амплуа.
Кроме того, пресловутый патч ms08-068 никак не стесняет атакующего, который осуществляет атаку в отношении кластера. То есть, сценарий 2001 года частично проигрывается и сегодня.
Ntlm relay: сегодня
Несмотря на то, что сегодня атака NTLM Relay широко известна, реализованы концепты межпротокольного перенаправления (например, HTTP->SMB и наоборот), которые в свою очередь портированы в популярные инструменты пентестера (например, MSF), но при всем этом многообразии до 2012 года не хватало универсального "швейцарского ножа". Им стала сборка под названием ZackAttack.
ZackAttack – это фреймворк, который позволяет проводить атаки NTLM-relay на качественно новом уровне. Наибольшую ценность этого фреймворка представляет возможность многократного использования сессии авторизованного пользователя для доступа к любым (с ограничениями) сервисам, авторизация в которых базируется на протоколе NTLM. Другими, не менее ценными достоинствами ZackAttack является автоматизация сценариев атаки (например, создание нового пользователя в Active Directory и добавление его в группу администраторов домена), а также возможность взаимодействия с атакуемыми системами используя пониженные привилегии (отличные от привилегий администратора) поверх proxychains (см. видео). Но стоит озвучить и половник дегтя в банке с медом. Дело в том, что Zack Fasel писал свою балалайку на скорую руку, в следствии чего для эффективного использования текущей сборки ZackAttack требуется бубен, а взаимодействие с атакуемым узлом по протоколу SMB поверх proxychains очень быстро заканчивается на первом же бинарном файле (аналогичная ситуация наблюдается и с передачей паролей через RPC).
ЗЫ. Если кто желает пофиксить баги ZackAttack и допилить поддерживаемый функционал, welcome! -- >> @zfasel
Альтернатива Ntlm relay в режиме реального времени
Ранее я уже писал, что в случае использования аутентификации по протоколу NTLMv1 существует возможность восстановить NT-хеш за приемлемое время, что в перспективе позволяет проводить атаки типа pass-the-hash. Однако этот метод не работает в случае использования аутентификации по протоколу NTLMv2.
Автор Intercepter-NG взглянул на проблему гораздо шире и глубже. Он задал себе вопрос: "Зачем нам релеить авторизацию жертвы, если она сама прекрасно авторизуется на нужном ресурсе?! Нам всего лишь нужно встать посередине и проксировать соединение, дождаться пока Host_A авторизуется на Host_B, а затем взять контроль над сессией в свои руки!" (подробнее). Логика идеи представлена на картинке ниже.
Реализация данной атаки получила название SMB Hijacking и уже доступна для экспериментов в последней версии Intercepter-NG. Have fun!
Красиво. Достойно. Неплохо было бы и на android версию Intercepter-NG включить SMB Hijacking.
ОтветитьУдалитьЗ.Ы. Автор Интерцептора давечи искал дизайнера, чтобы его творения выглядели хорошо. Может есть желающие ему помочь с этим? Контакты у него на страничке:)
На андроид не обещаю, а в консольной версии со временем появится.
Удалитьps: желающих нет и скорее всего не будет...как в анекдоте "тут всем все по!@#"
Дима, а ты сам пробовал релеить на ldap для добавления юзера в AD ?
ОтветитьУдалитьУ меня нервов не хватает ковыряться в этом лесопеде Зака. Если все же релеил и можешь повторить - сохрани pcap дамп, я бы глянул и возможно реализовал подобное. Тестировал разные ldap клиенты, но везде используется либо подпись либо полное шифрование. Поэтому нужен реальный семпл, показывающий в каком именно виде нужно формировать команды.
угук, делал и помню, что раскрутить этот функционал без помощи wireshark не удалось( как найду время, пришлю pcap
Удалить>> везде используется либо подпись
на контроллерах домена по умолчанию используется подпись((
я и удивился, просто Зак в своей презентухе черным по белому пишет, что для LDAP подпись по умолчанию не требуется.
Удалитьнебольшую надежду вселяет тот факт, что AD позволяет авторизоваться плейнтекстом.
ps: так заработало или нет ? и пришлось ли отключать в групповых политиках обязательный сайнинг?
хм... этот момент я упустил. сегодня проверю
УдалитьУсловия при которых не работает:
Удалить- Уровень проверки подлинности Lan Manager - NTLM2, отказывать LM и NTLM (при этом во всех опциях ниже норм)
- Требование цифровой подписи для LDAP-сервера - требуется цифровая подпись (в дефолтах установлено, как не требуется)
ссылка на pcap - https://docs.google.com/file/d/0Bwv6HYj6-f9tWnFtYUR6dTluakk/edit?usp=sharing
Спасибо, будет время поковыряю.
УдалитьНе работает при минимальном уровне NTLMv2 потому что скорее всего ты релеил жертву с XP или что-то аналогичное, где используется SMBv1 и естественно NTLMv1.
Если релеить семерку, то это условие можно будет отбросить.
Legend Online Benzeri Oyunlar
ОтветитьУдалитьMafia 2 Benzeri Oyunlar
Simcity Benzeri Oyunlar
Papers Please Benzeri Oyunlar
Phasmophobia Benzeri Oyunlar
15ZXN
salt likit
ОтветитьУдалитьsalt likit
dr mood likit
big boss likit
dl likit
dark likit
PXM