I. Breaching Active Directory

1.1. Introduction to AD Breaches

Phần này sẽ cover một số kĩ thuật và công cụ thường được sử dụng để thực hiện enumerate AD. Trước khi thực hiện tấn công AD (Privililege escalation, lateral movement,..) thì ta cần có quyền truy cập ban đầu (initial access)
* Mục tiêu thực hiện:
+ NTLM Authenticated Services
+ LDAP Bind Credentials
+ Authentication Relays

1.2. OSINT and Phishing

Hai phương pháp phổ biến để giành quyền truy cập vào AD Credentials đó là Trí thông minh nguồn (OSINT) và Phishing.

OSINT:

OSINT thường được sử dụng để khai thác các thông tin được công khai trên internet, trong đó có thể có thông tin đăng nhập của AD bởi một vì lý do như:

+ Người dùng đặt câu hỏi trên các diễn đàn công cộng như Stack Overflow nhưng tiết lộ thông tin nhạy cảm như thông tin đăng nhập của họ trong câu hỏi.

+ Các nhà phát triển tải tập lệnh lên các dịch vụ như Github với thông tin đăng nhập được mã hóa cứng.

+ Thông tin đăng nhập bị tiết lộ do nhân viên sử dụng tài khoản công việc của họ để đăng ký các trang web bên ngoài khác.

+ Các trang web như HaveIBeenPwned và DeHashed cũng là một nền tảng xác định các thông tin nhạy cảm của người dùng như email công việc, hay có liên quan tới các dữ liệu đã bị leak công khai hay không.

Chi tiết về Red Team OSINT có thể tham khảo tại đây:

https://tryhackme.com/jr/redteamrecon

 

Phishing

Phishing là một phương pháp thực hiện lôi kéo người dùng cung cấp các thông tin đăng nhập của họ trên một trang web độc hại hoặc yêu cầu họ chạy một ứng dụng cụ thể sẽ cài đặt Remote Access Trojan (RAT).

Đây là một phương pháp phổ biến vì RAT sẽ thực thi với quyền của người dùng, từ đó có thể mạo danh tài khoản AD của người dùng đó.

Chi tiết về Phishing có thể tham khảo tại đây:

https://tryhackme.com/room/redteamrecon

 

1.3. NTLM Authenticated Services

New Technology LAN Manager (NTLM) là một giao thức bảo mật được sử dụng để xác thực danh tính của người dùng trong AD. NTLM có thể được sử dụng để xác thực bằng cách sử dụng challenge-response-based có tên là NetNTLM.

Tuy nhiên, các dịch vụ sử dụng NetNTLM cũng có bị exposed ra ngoài internet. Sau đây là một số ví dụ phổ biến:

+ Các máy chủ Exchange (Mail) được lưu trữ nội bộ hiển thị cổng đăng nhập Outlook Web App (OWA).

+ Dịch vụ Remote Desktop Protocol (RDP) được mở public ra ngoài internet

+ Các ứng dụng web kết nối Internet và sử dụng NetNTLM.

What is the NTLM (NT LAN Manager) protocol? - IONOS

NetNTLM, còn thường được gọi là Windows  Authentication hoặc chỉ NTLM Authentication, cho phép ứng dụng đóng vai trò trung gian giữa máy khách và AD.

Tất cả thông tin cần xác thực sẽ được gửi tới Domain Controller để kiểm tra xác thực người dùng.

Ta có thể thực hiện xem sơ đồ dưới đây để hiểu hơn về cách hoạt động:

Password Spraying

Thực hiện sử dụng script sau để thực hiện spraying password:

 

Trong đó:

<userfile> – Tên file chứa tệp người dùng – “usernames.txt”

<fqdn> – Tên miền đã được qualified – “za.tryhackme.com”

<password> – Mật khẩu sử dụng để brute – “Changeme123”

<attackurl> – URL của ứng dụng hỗ trợ Windows Authentication – “http://ntlmauth.za.tryhackme.com

 

Thực hiện Brute-force NTLM Password thành công

1.4. LDAP Bind Credentials

Một phương pháp xác thực AD khác mà các ứng dụng có thể sử dụng đó là Lightweight Directory Access Protocol (LDAP).
Phương thức xác thực LDAP tương tự như NTLM. Tuy nhiên với xác thực LDAP, ứng dụng sẽ xác mình trực tiếp thông tin đăng nhập của người dùng.
Ứng dụng sẽ có một cặp thông tin đăng nhập AD có thể sử dụng để thực hiện query LDAP và xác minh thông tin đăng nhập của người dùng AD.
Xác thực LDAP là một cơ chế phổ biến với các ứng dụng của bên thứ ba được sử dụng để tích hợp với AD. Một số ứng dụng và hệ thống đang triển khai LDAP như:
+ Gitlab
+ Jenkins
+ Printers
+ VPNs

Quá trình xác thực thông qua LDAP:

LDAP Pass-back Attacks

Đây là một cuộc tấn công phổ biến nhằm vào các thiết bị mạng, chẳng hạn như máy in, khi bạn đã giành được quyền truy cập ban đầu vào mạng nội bộ, chẳng hạn như cắm một thiết bị giả mạo vào phòng họp.

 

Performing an LDAP Pass-back

Thực hiện truy cập web quản trị của mạng máy in mà không cần thông qua xác thực.