Password Spraying - Making a Target User List

Detailed User Enumeration

Trước khi spray password, ta cần tạo 1 list các username hợp lệ trước, có một số cách sau:

Nếu attacker có một SMB NULL session, LDAP anonymous bind hoặc một credential hơn lệ, hoàn toàn thể enumerate được password policy. Biết được lockout threshold sẽ cho ta biết được nên thử bao nhiêu lần trong một khoảng thời gian là đủ và tránh bị khóa.

SMB NULL Session to Pull User List

Một số tools sử dụng SMB NULL Session như enum4linuxarrow-up-right, rpcclientarrow-up-rightCrackMapExecarrow-up-right.

enum4linux -U 172.16.5.5  | grep "user:" | cut -f2 -d"[" | cut -f1 -d"]"
$> enum4linux -U 172.16.5.5  | grep "user:" | cut -f2 -d"[" | cut -f1 -d"]"

administrator
guest
krbtgt
lab_adm
htb-student
avazquez
pfalcon
fanthony
wdillard
lbradford
sgage
asanchez
dbranch
ccruz
njohnson
mholliday

<SNIP>

LDAP Anonymous

Một số ví dụ cho windapsearcharrow-up-rightldapsearcharrow-up-right, search theo filter:

Enumerating Users with Kerbrute

Ta có thể sử dụng Kerbrutearrow-up-right cho việc enumerate tài khoản AD hợp lệ và spray password.

Tool này sử dụng Kerberos Pre-Authenticationarrow-up-right, đây là cách nhanh hơn và stealth hơn cho việc spray password. Phương thức này không tạo ra Windows event ID 4625: An account failed to log onarrow-up-right

Tool này sẽ gửi các TGT request tới domain controller mà không cần Kerberos Pre-Authentication, nếu KDC phản hồi với lỗi PRINCIPAL UNKNOWN thì có nghĩa username invalid. Còn khi nào KDC prompt lên cho Kerberos Pre-Authentication thì có nghĩa username này tồn tại và hợp lệ trong domain. Cách này sẽ không gây ra log đăng nhập và khóa account.

Credentialed Enumeration to Build our User List

Nếu đã có credential hợp lệ thì việc enumerate username thì dễ khi sử dụng CrackMapExec

Last updated