Honeypot — приманка для злоумышленника. Такие ресурсы создают специально для того, чтобы они подверглись атаке или несанкционированному воздействию. Впоследствии аналитики изучают стратегию атаки, а также определяют, с помощью каких средств она велась. При этом успешная атака на такой ресурс не принесет никакого вреда атакуемой инфраструктуре. Иными словами, Honeypot может представлять собой как специальный выделенный сервер, так и один отдельный сервис.
Другие статьи на тему пентеста Active Directory:
- Защита от обнаружения при атаке на Active Directory
- Как обойти AppLocker при атаке на Active Directory
- Захват Active Directory на виртуальной машине с HackTheBox
- Как обойти PowerShell AMSI при атаке на Active Directory
Honeytoken — это Honeypot, который не является компьютерной системой. Например, к этой категории можно отнести вымышленные слова или записи, которые добавляются в реальные базы данных. Они позволяют администраторам отслеживать утечки данных в сетях, потому что в обычных условиях эти данные всплывать не должны вообще. Так как они вряд ли когда-либо появятся в легитимном трафике, honeytoken’ы могут быть легко обнаружены с помощью IDS.
Помимо этого, Honeytoken’ами могут быть специальные учетные записи пользователей (особенно с описанием admin или netAdmin) либо записи в базе данных (нигде не используемые случайные поля вроде password2). Частый пример Honeytoken — нигде не используемый адрес электронной почты.
Но если объекты создаются специально для того, чтобы их нашли, как оператору не попасть в ловушку? Дело в том, что в этих объектах присутствуют так называемые маркеры — признак, по которому обманка отличается от реального объекта. К примеру, если взять объект «учетная запись», то некоторые средства генерации honeytoken’ов портят следующие атрибуты:
- objectSID — имеет неверный формат;
- lastLogon — наличие пользователей, которые никогда не входили в систему, но имеют привилегии;
- logonCount — если у большинства учетных записей средний показатель logonCount составляет около 50, а у какой-то учетной записи — 3 или 4, это повод задуматься.
- badPwdCount — нет такого пользователя, который в течение длительного времени ни разу не ввел бы неправильный пароль.
Как было отмечено, самый надежный способ определить аномалию — это сравнивать со средним показателем. Лучше что-то оставить непроверенным, чем проверить и быть обнаруженным. Еще один важный критерий — это объекты, не сопоставленные с реальными компьютерами.
Долгие исследования и накопленные методики позволили выявить семь самых частых типов honeytoken.
- Фальшивая учетная запись пользователя службы с определенным SPN и атрибутом adminCount, равным единице. В этом случае будет зафиксирована попытка Kerberoasting при запросе TGS для данной учетной записи.
- Фальшивые учетные данные в памяти. Создание процесса с флагом NetOnly приведет к кешированию поддельного токена, поэтому, как только оператор попытается использовать эти учетные данные, он будет обнаружен. Данный подход применяют Invoke-HoneyHash и DCEPT.
- Фальшивые учетные записи компьютеров. Как уже отмечалось, созданные объекты домена без привязки к фактическим устройствам подозрительны. Если использовать их для бокового перемещения, оператора обнаружат.
- Фальшивые данные диспетчера учетных данных. Специально введенные учетные данные будут отображаться при задействовании mimikatz. Соответственно, использование этих учетных данных неминуемо приведет к разоблачению.
- Фальшивые администраторы домена. Эти учетные записи неактивны и никогда не использовались. Среди большого количества учетных записей можно не учесть неактивные. Перебор учетных данных для таких записей сразу выдаст оператора. Этот способ используется в АТА.
- Фальшивые диски. Многие скрипты или черви распространяются через SMB-ресурсы, особенно если ресурс помечен как общий. Таким образом, все обращения к данным ресурсам будут обнаружены и зарегистрированы.
- Записи DNS. При переходе по специальным DNS-именам данный факт будет зарегистрирован и оператор будет обнаружен.
Основная идея всех фальшивых объектов — заставить оператора использовать их. Однако оператор может изучить эти объекты перед использованием. Для детекта всех семи типов honeytoken’ов был разработан инструмент Honeypot Buster. Использовать его можно следующим образом.
1 2 |
Import-Module .\Invoke-HoneypotBuster.ps1 Invoke-HoneypotBuster |
Этот инструмент написан на PowerShell и поддерживает версии начиная с 2.0. Для перечисления объектов используются запросы LDAP, а для сбора учетных данных — загрузка DLL, чтобы получить доступ к LSASS.
Другие статьи на тему пентеста Active Directory
- Взлом и защита Active Directory
- Техника Lateral Movement при атаке на домен
- Поиск учетных записей и служб в сетях Windows без привилегий