Active Directory recon and exploit
Hacking Active Directory: From Reconnaissance to Exploitation - Part 1 + 2
Step 1: Lấy credentials
LLMNR ATTACK: Được dùng trong window để phân tải tên. Tấn công: dùng Responder tool để bắt được credentials. Khi lấy được NTLM hash thì dùng hashcat để crack.
SMBRelay ATTACK Là kiểu tấn công mạng, attacker có thể chặn và chuyển tiếp các yêu cầu xác thực và phản hồi giữa client và server. Là phương án dự phòng cho LLMNR attack khi hash được captured không thể bẻ khóa.
IPV6 DNS Takeover ATTACK Tấn công chiếm quyền DNS IPv6 liên quan đến kẻ tấn công khai thác lỗ hổng trong cấu hình DNS IPv6 để chặn và thao túng các truy vấn DNS. => Đưa địa chỉ IPv6 giả mạo, tấn công chuyển hướng DNS sang các máy chủ độc hại => cho phép nghe lén, thay đổi và chuyển hướng lưu lượng mạng.
Step 2: Enumerating AD
Bloodhound
Dùng để ánh xạ và phân tích Directory (AD) environments.
Giúp nhận dạng các mối quan hệ, quyền hạn, các con đường tấn công ẩn trên AD domain bằng cách đưa ra cách user, group và máy tính được kết nối với nhau.
Bloodhound sử dụng cấu trúc dữ liệu dựa vào đồ thị của Neo4j để lưu trữ, truy xuất hiệu quả, hình dung ra mối quan hệ trong AD.
MMC (Microsoft Management console)
Cho phép quản lý nhiều thành phần khác nhau trong một giao diện duy nhất và quản lý từ xa.
Step 3: Moving Laterally and Exploiting
PASS ATTACK
Pass-the-Password
Kĩ thuật dựa trên việc bắt và sử dụng các plaintext password để xác thực giữa nhiều thiết bị. Nếu mật khẩu người dùng được sử dụng lại trên nhiều hệ thống => cho phép attacker chiếm quyền điều khiển toàn bộ hệ thống.
Pass-the-Hash
Kĩ thuật đề cập đến việc bắt các mật khẩu đã được mã hóa (NTLM hashes) và sử dụng nó mà không cần crack => có thể mạo danh được người dùng khác, truy cập vào tài nguyên với quyền của user bị mạo danh.
Attack
Sử dụng tool crackmapexec
Example:
crackmapexec smb 192.168.134.0/24 -u username -d ADPENTT.local -p plaintext_pass
# OR:
crackmapexec smb 192.168.134.0/24 -u username -H hash_of_pass
KERBEROASTING
Để lấy TGS, sử dụng tool GetUserSPNs.py
GetUserSPNs.py ADPENTT.local/username:password -dc-ip DC_iP_ADDR -request
Extract TGS hash:
hashcat -m 13100 krb.txt /usr/share/wordlists/rockyou.txt
Mạo danh token
Token là dữ liệu có thể bao gồm dữ liệu người dùng, quyền, thành viên nhóm => để kiểm soát quyền truy cập và hành động.
=> Đề cập đến việc hacker lấy được token của người dùng hợp lệ. Token có 2 loại:
- Delegate Token
- Impersonate Token
Attack: sử dụng use exploit/windows/smb/psexec
của Metaploit
DUMPING NTDS.dit
NTDS (NT Directory Services): là file database của AD - ntds.dit
- lưu trữ các thông tin về user, group,...
Attack: dùng tool: secretsdump.py
Step 4: Persisting in Active Directory
GOLDEN TICKET ATTACK
Là cuộc tấn công mà hacker lấy được TGT ticket thông qua mã băm mật khẩu của người dùng.
Sử dụng tool tấn công: mimikatz
privilege::debug
#to grants the Mimikatz tool the necessary permissions to perform advanced tasks that are typically restricted to administrators or system processes.
lsadump::lsa /inject /name:krbtgt
Sau khi lấy được hash password của krbtgt
, dùng lệnh tiếp theo
kerberos::golden /User:Administrator /domain:adpentt.local /sid:S-1-5-21-527687875-826702742-2417181359 /krbtgt:590d534c15c13980a6d41c34d8ab9f03 /id:500 /ptt
Sau đó sử dụng misc::cmd
Ta có thể dùng PsExec.exe
để truy cập tới cmd của thiết bị được chỉ định.