Maandelijkse vulnerability scanning: Eerste maand kosteloos! Meer informatie →
Hero

WIJ ZIJN

HACKIFY

AS-REP Roasting

AS-REP Roasting

3 juli 2026 · 3 min leestijd · begrippen

active-directory credentials

Wat is AS-REP roasting?

AS-REP roasting is een aanval op Active Directory-accounts waarbij Kerberos-pre-authenticatie uitstaat. Voor zo’n account vraag je het eerste bericht van de KDC op, de AS-REP, en kraak je een versleuteld deel daarvan offline om het wachtwoord te achterhalen. Je hebt er geen geldig wachtwoord voor nodig, alleen de gebruikersnaam van een account met pre-authenticatie uit.

De aanval is in 2017 beschreven door Will Schroeder (harmj0y) als de tegenhanger van Kerberoasting. MITRE ATT&CK categoriseert hem onder T1558.004 Steal or Forge Kerberos Tickets: AS-REP Roasting.

Hoe werkt AS-REP roasting?

Normaal eist Kerberos pre-authenticatie. Bij het inloggen versleutelt de client een timestamp met een sleutel die van het wachtwoord is afgeleid, en de KDC geeft pas een AS-REP terug als die timestamp klopt. Iemand die het wachtwoord niet kent, krijgt zo niets bruikbaars in handen.

Staat pre-authenticatie uit op een account, dan vervalt die controle. De KDC stuurt de AS-REP naar iedereen die erom vraagt, zonder bewijs van het wachtwoord. In die AS-REP zit een versleuteld deel, de enc-part, dat met de wachtwoord-sleutel van de gebruiker is versleuteld. Dat deel kraak je offline met Hashcat. Een RC4-versleutelde AS-REP (etype 23) gaat in hashcat naar modus 18200, en een zwak wachtwoord valt daarbij snel. AES-versleutelde varianten zijn een stuk zwaarder om te kraken.

Om te weten wélke accounts kwetsbaar zijn, zoek je in Active Directory naar de vlag “Do not require Kerberos preauthentication”. Dat is een bit in het userAccountControl-attribuut (DONT_REQ_PREAUTH, waarde 0x400000). Voor die zoekopdracht in LDAP heb je wel een geldig domein-account nodig. De AS-REP zelf opvragen kan daarna zonder wachtwoord, zolang je de gebruikersnaam kent.

AS-REP roasting in een pentest

In een Active Directory pentest kijken wij standaard of er accounts zijn met pre-authenticatie uit. Dat doen we met NetExec op het ldap-protocol. Hebben we al een geldig account, dan zoekt NetExec de kwetsbare accounts op en haalt meteen de hashes op. Kennen we alleen een gebruikersnaam of een lijst met namen, dan werkt het ook zonder wachtwoord.

# Met een geldig account: vind kwetsbare accounts en haal de hashes op
nxc ldap 10.0.0.1 -u jdoe -p Password --asreproast asreproast.txt

# Zonder wachtwoord, met een lijst gebruikersnamen
nxc ldap 10.0.0.1 -u users.txt -p '' --asreproast asreproast.txt

De opgehaalde hashes kraken we offline met hashcat.

# RC4 AS-REP hashes kraken tegen een woordenlijst
hashcat -m 18200 asreproast.txt /usr/share/wordlists/rockyou.txt

Voer dit soort tests alleen uit op systemen waarvoor je expliciete, schriftelijke toestemming hebt. Zonder die toestemming is het strafbaar.

AS-REP roasting voorkomen

  • Zet pre-authenticatie op elk account aan, oftewel haal de optie “Do not require Kerberos preauthentication” overal weg. Controleer dit regelmatig met het LDAP-filter (userAccountControl:1.2.840.113556.1.4.803:=4194304), dat precies de accounts met die optie teruggeeft.
  • Moet een account de optie echt houden voor een oude koppeling, geef het dan een lang, willekeurig wachtwoord. Dan blijft offline kraken zonder resultaat.
  • Forceer AES in plaats van RC4. Een AES-versleutelde AS-REP kraak je veel langzamer dan een RC4-variant.
  • Zet gevoelige accounts in de groep Protected Users. Die mogen alleen met AES authenticeren, maar dat lost een account met pre-authenticatie uit niet op. De vlag moet er alsnog af.
  • Monitor event 4768 (TGT-aanvraag) met pre-authenticatietype 0. Dat type betekent dat er zonder pre-authenticatie een TGT is aangevraagd, precies wat er bij AS-REP roasting gebeurt.

Veelgestelde vragen over AS-REP roasting

Heb je inloggegevens nodig voor AS-REP roasting?

Voor het opvragen van de AS-REP zelf niet, zolang je de gebruikersnaam van een kwetsbaar account al kent. De KDC stuurt die immers naar iedereen die erom vraagt. Om vooraf uit te zoeken wélke accounts pre-authenticatie uit hebben staan, doorzoek je Active Directory via LDAP, en daar heb je wel een geldig domein-account voor nodig.

Wat is het verschil met Kerberoasting?

Beide kraken een versleuteld Kerberos-bericht offline, maar de voorwaarde verschilt. Kerberoasting werkt op accounts met een SPN, vereist een geldig domein-account, en kraakt een service ticket dat met de sleutel van het service-account is versleuteld. AS-REP roasting werkt op accounts met pre-authenticatie uit, kan zonder inloggegevens als je de gebruikersnaam kent, en kraakt het versleutelde deel van de AS-REP, dat met de sleutel van de gebruiker zelf is versleuteld.

Waarom staat pre-authenticatie bij sommige accounts uit?

Meestal door legacy. Sommige oudere applicaties en koppelingen met UNIX- of Java-Kerberos ondersteunen pre-authenticatie niet, dus werd de optie ooit aangezet. Daarna blijft hij vaak jaren staan zonder dat iemand er nog naar kijkt. Een enkele keer is hij per ongeluk aangezet.

Hoe stop je AS-REP roasting?

Zet pre-authenticatie op elk account aan, oftewel haal de optie ‘Do not require Kerberos preauthentication’ overal weg. Controleer regelmatig of geen enkel account die optie heeft. Moet een account de optie echt houden, geef het dan een lang, willekeurig wachtwoord, zodat offline kraken niet lukt.

Gerelateerde artikelen