SIEM/Log Management Triển khai và Cài đặt Wazuh cơ bản (Thu thập Log Windows và Linux )

1. Tìm hiểu Về Wazuh (Kiến trúc & Tính năng)​

Wazuh là nền tảng bảo mật toàn diện chuyên để thu thập, phân tích, và phản ứng với các sự kiện an ninh mạng (SIEM & XDR).

1.1. Kiến trúc của Wazuh​

Hệ thống Wazuh thông thường bao gồm các thành phần sau:
  • Wazuh Indexer: Công cụ lưu trữ và tìm kiếm dữ liệu (Dựa trên kiến trúc của OpenSearch). Nơi lưu trữ tất cả logs và alerts.
  • Wazuh Manager (Server): Phân tích log gửi về từ các agent, đối chiếu với bộ quy tắc (Rules) để phát hiện sự cố, và đẩy dữ liệu cảnh báo sang Indexer.
  • Wazuh Dashboard: Giao diện người dùng Web để xem báo cáo, cấu hình agent và quản lý sự cố an ninh.
  • Wazuh Agent: Phần mềm nhỏ nhẹ cài đặt trực tiếp trên các máy chủ/máy trạm (Windows, Linux, macOS) cần giám sát. Agent có nhiệm vụ đọc log và đẩy về cho Manager.

1.2. Các Tính năng Chính​

  • Phát hiện Xâm nhập (IDS).
  • Quản lý Log và Giám sát sự thay đổi file (FIM - File Integrity Monitoring).
  • Đánh giá Cấu hình An toàn (SCA - Security Configuration Assessment).
  • Phản hồi tự động (Active Response) ví dụ chặn IP hoặc xóa file độc hại.

2. Cài đặt Wazuh (Single-node) bằng Script Tự động​

Cách nhanh và đơn giản nhất để cài đặt Wazuh All-in-one (bao gồm Indexer, Manager, và Dashboard trên cùng 1 server) là sử dụng script tự động chính thức từ Wazuh.

2.1. Chuẩn bị Môi trường​

  • Hệ điều hành: Ubuntu 20.04/22.04, CentOS/RHEL.
  • Cấu hình: Tối thiểu 4GB RAM (Khuyến nghị từ 8GB trở lên). Cần có quyền root hoặc sudo.
1783079346937.png


2.2. Chạy Script Cài đặt Wazuh​

Chạy câu lệnh dưới đây để tải script về và cài đặt toàn bộ các thành phần tự động (tham số -a đại diện cho cài đặt All-in-one):

curl -sO https://packages.wazuh.com/4.14/wazuh-install.sh && sudo bash ./wazuh-install.sh -a
1783079365862.png


Quá trình cài đặt sẽ diễn ra tự động trong vài phút. Khi hoàn tất, script sẽ cung cấp cho bạn thông tin UsernamePassword ngẫu nhiên trên màn hình terminal. Hãy lưu trữ thông tin này để đăng nhập vào Dashboard.

2.3. Đăng nhập Dashboard​

Truy cập qua trình duyệt: https://<IP_SERVER>

1783079416574.png


  • Tài khoản mặc định: admin
  • Mật khẩu mặc định: Sử dụng mật khẩu mà kịch bản cài đặt Wazuh đã cung cấp cho bạn trong terminal.

3. Triển khai Thu thập Log với Wazuh Agent trên Windows​

Wazuh Agent trên Windows cho phép giám sát Event Viewer, System logs và File Integrity.

3.1. Cài đặt Agent​

  1. Tải bộ cài wazuh-agent.msi từ giao diện Wazuh Dashboard -> Add agent.
1783079429432.png

Giải thích các thông số khi cấu hình Add Agent:

  • Server address (Địa chỉ server): Đây là địa chỉ IP hoặc tên miền (FQDN) để agent giao tiếp với Wazuh Server. Điền IP của Wazuh Server (ví dụ: 192.168.75.148).
  • Agent name (Tên agent): Mặc định hệ thống sẽ dùng hostname của máy cài đặt. Bạn có thể đặt tên khác, nhưng tên này phải là duy nhất và không thể đổi sau khi đã kết nối thành công.
  • Select existing groups: Chọn nhóm cấu hình mặc định (ví dụ: default).
  1. Sau khi điền thông tin và chọn OS , hệ thống sẽ sinh ra lệnh cài đặt. Mở PowerShell với quyền Administrator và chạy lệnh
Mã:
Invoke-WebRequest -Uri https://packages.wazuh.com/4.x/windows/wazuh-agent-4.14.5-1.msi -OutFile $env:tmp\wazuh-agent; msiexec.exe /i $env:tmp\wazuh-agent /q WAZUH_MANAGER='192.168.75.148'
Khởi động Wazuh Agent bằng câu lệnh sau trong Command Prompt (CMD):
NET START Wazuh
Kiểm tra trạng thái Agent đã kết nối thành công trên Dashboard:
1783079440928.png


3.2. Cấu hình Thu thập (ossec.conf)​

Sau khi cài, cấu hình của agent nằm tại C:\Program Files (x86)\ossec-agent\ossec.conf.

1783079624491.png


Để cấu hình đọc các log Windows (mặc định đã thu thập Application, Security, System), bạn có thể kiểm tra thẻ <localfile> trong file cấu hình:

1783079681305.png


Giải thích chi tiết các thành phần trong cấu hình ossec.conf:
File ossec.conf trên Windows chia thành nhiều thẻ (tag) để định nghĩa các tính năng giám sát. Dưới đây là ý nghĩa của các thành phần quan trọng nhất dựa trên nội dung cấu hình mặc định:
1. Khối <client> — Kết nối tới Server
  • <server><address>: Địa chỉ IP hoặc Domain của Wazuh Manager (ví dụ: 192.168.75.148) mà Agent sẽ gửi log tới.
  • <enrollment><agent_name>: Tên máy tính (Agent) được ghi nhận trên hệ thống (ví dụ: PopTechWin).
  • <crypto_method>: Sử dụng thuật toán AES để mã hóa an toàn dữ liệu log trên đường truyền.
2. Khối <client_buffer> — Bộ đệm chống mất log
  • Giúp Agent lưu tạm log cục bộ khi mất kết nối với Server.
  • <events_per_second> (mặc định: 500): Giới hạn tốc độ gửi tối đa 500 sự kiện/giây, nhằm tránh nghẽn đường truyền và quá tải Server.
3. Khối <localfile> — Thu thập Log Event Viewer
  • Khai báo các nguồn log cần đọc. Với Windows, log_format sử dụng là eventchannel.
  • Agent mặc định đọc 3 kênh cốt lõi: Application, Security, System.
  • Thẻ <query>trong kênh Security chứa biểu thức lọc (XPath filter) để loại bỏ các Event ID không cần thiết (sự kiện rác, quá ồn).
    • Ví dụ: EventID != 5145 and EventID != 5156 — loại bỏ log liên quan đến Windows Firewall connection và Network Share, giúp tiết kiệm dung lượng lưu trữ trên Indexer.
4. Khối <syscheck> — Giám sát tính toàn vẹn của File (FIM)
  • Chức năng: Phát hiện khi file/thư mục hệ thống quan trọng bị thay đổi, xóa, hoặc tạo mới.
  • <directories>: Chỉ định thư mục cần theo dõi (VD: %WINDIR% - C:\Windows, System32, SysNative, thư mục Startup của các ứng dụng).
  • <windows_registry>: Theo dõi thay đổi các khóa Registry nhạy cảm như khởi động cùng hệ thống (Run/RunOnce), Policies, Security.
  • <ignore><registry_ignore>: Loại trừ các tệp (.log, .tmp) và các khóa thay đổi thường xuyên, giúp giảm cảnh báo giả (False Positive).
5. Khối <sca> và <rootcheck> — Đánh giá cấu hình & Quét mã độc
  • SCA (Security Configuration Assessment): Agent tự động quét cài đặt hệ thống mỗi 12 giờ, đối chiếu với các chuẩn bảo mật (ví dụ CIS Benchmarks) để phát hiện cấu hình lỏng lẻo.
  • Rootcheck: Giám sát, phát hiện ứng dụng đáng ngờ hoặc phần mềm độc hại (malware) ẩn sâu trong Windows, dựa trên các file rule .txt.
6. Khối <wodle name="syscollector"> — Thu thập thông tin thiết bị
  • Định kỳ (mặc định 1 giờ) quét máy tính để thu thập: hardware, os, network, processes, ports, packages (danh sách phần mềm đã cài).
  • Thông tin này giúp Wazuh lập bản đồ phần mềm có chứa lỗ hổng (Vulnerabilities).

Nếu có chỉnh sửa cấu hình ở file này, hãy khởi động lại dịch vụ Wazuh trong tab Services của Windows.

3.3. Tạo Log giả lập trên Windows để Kiểm thử​

Để chắc chắn agent thu thập log và đẩy về server thành công, bạn có thể tạo một kịch bản sinh log giả vào Event Viewer. Lưu đoạn code dưới đây thành file Create-WindowsEventLog.ps1 và chạy bằng PowerShell (Run as Administrator):

File Create-WindowsEventLog.ps1 mình sẽ để ở đây cho mọi người tham khảo : https://github.com/nhuthangl24/PopTech/blob/main/Create-WindowsEventLog.ps1

3.4. Kiểm tra Log trên giao diện Discover của Wazuh​

Sau khi chạy kịch bản tạo sự kiện và agent đã thu thập xong, bạn có thể làm theo các bước sau để xác nhận log đã lên Server thành công:

  1. Đăng nhập vào trang quản trị Wazuh Dashboard.
  2. Trên thanh menu chính (góc trên cùng bên trái), chọn tab **Explore* và chọn thẻ **Discover**.
  3. Ở phía trên cùng bên phải, điều chỉnh Time Filter để lọc các log vừa mới phát sinh (ví dụ: chọn Last 15 minutes hoặc Today).
  4. Tại ô tìm kiếm (Search bar), bạn có thể nhập thử các bộ lọc sau để lọc các log vừa tạo:
    • Tìm kiếm theo nội dung của Log: MyApplication
    • Tìm kiếm theo tên thiết bị gửi (Agent Name): agent.name: "PopTechWin" (thay bằng tên agent của bạn)
  5. Kéo xuống dưới, bạn sẽ thấy các Event Windows xuất hiện đầy đủ thông tin cùng với mức độ phân loại tương ứng. Điều này chứng tỏ tiến trình cấu hình và gửi nhận log đã được thực thi hoàn hảo!
1783080184610.png


3.5. Phân tích Log Sự kiện (Event Log) thực tế​

Ví dụ phân tích một mẫu Log phát hiện thao tác với tài khoản người dùng:

Dưới đây là mẫu log thô (Raw Log) định dạng JSON mà Wazuh Agent thu thập được khi có sự kiện thay đổi thông tin tài khoản (Event ID 4738) trên Windows. Mình đã rút gọn để giữ lại các trường (fields) quan trọng nhất:

1783080201845.png

Giải thích chi tiết các thông tin cảnh báo từ Log này
  • Thông tin Nguồn phát (Agent): Log này được ghi nhận từ máy trạm có tên là PopTechWin (agent.name) với IP 192.168.75.149.
  • Hành vi được ghi nhận (Event Data):
    • Đây là sự kiện từ kênh bảo mật (Security channel) của Windows, với mã Event ID 4738 (data.win.system.eventID).
    • Nội dung sự kiện cho biết: Tài khoản người dùng có tên Noazuynh (subjectUserName) vừa thực hiện một thao tác chỉnh sửa/thay đổi thông tin đối với tài khoản đích là nhuthang1235 (targetUserName).
  • Phân tích An ninh của Wazuh (Rule & MITRE ATT&CK):
    • Mức độ (Level): Wazuh tự động đánh giá hành động này ở mức cảnh báo cao (Level 8 trên 15). Việc chỉnh sửa tài khoản bất thường có thể là dấu hiệu của việc leo thang đặc quyền.
    • Mô tả (Description): Hệ thống gắn nhãn cảnh báo là "User account changed".
    • Khung phân tích MITRE: Wazuh thông minh tự động ánh xạ hành vi này vào kỹ thuật tấn công Account Manipulation (T1098) thuộc chiến thuật Persistence (Duy trì truy cập). Điều này giúp các chuyên gia phân tích (SOC) dễ dàng nhận diện nếu đây là hành vi của Hacker đang cố gắng tạo backdoor bằng một tài khoản hợp lệ.
Một số hình ảnh kiểm tra chi tiết Log trên giao diện Wazuh Discover:

1783080222416.png


Ví dụ, hệ thống ghi nhận một chuỗi hành vi liên hoàn từ tài khoản quản trị cục bộ (Noazuynh): Đầu tiên, đối tượng này tiến hành kích hoạt và cấu hình lại thông tin xác thực cho tài khoản nhuthang1235 (Event ID 4738). Ngay sau đó, tài khoản này tiếp tục được phân quyền bằng cách thêm vào nhóm bảo mật hệ thống Users (Event ID 4732). Trong quá trình phân tích sự kiện trên giao diện Wazuh, chuỗi hành động này (được ánh xạ với kỹ thuật Account Manipulation - T1098) cần được đặc biệt chú ý. Nếu các thao tác không xuất phát từ lịch trình bảo trì hợp lệ, đây rất có thể là dấu hiệu cho thấy kẻ tấn công đang cố gắng tạo và cấp quyền cho một tài khoản Backdoor nhằm duy trì truy cập trái phép vào hệ thống.

1783080232441.png


1783080241991.png



4. Triển khai Thu thập Log với Wazuh Agent trên Linux​

Agent trên Linux giúp đọc syslog, auth.log, giám sát tiến trình và các lỗ hổng hệ thống.

4.1. Cài đặt Agent qua gói Offline (.deb) cho Ubuntu/Debian​

Thay vì dùng repository, bạn có thể tải trực tiếp gói .deb của Wazuh Agent và cài đặt bằng lệnh dpkg, đồng thời trỏ địa chỉ tới Wazuh Manager (trong ví dụ là 192.168.75.148):

1783080299714.png

Cấu hình Agent trên Linux gần như là giống của Window , bạn có thể xem kỹ hơn ở trên

Sau khi cài đặt xong, khởi động và kích hoạt agent chạy cùng hệ thống:

  1. sudo systemctl daemon-reload
  2. sudo systemctl enable wazuh-agent
  3. sudo systemctl start wazuh-agent

4.2. Cấu hình Thu thập Log trên Linux (ossec.conf)​

Cấu hình Agent Linux nằm ở /var/ossec/etc/ossec.conf.

Mặc định Wazuh Agent đã theo dõi syslog. Bạn có thể mở file này ra xem các thẻ <localfile>

1783080430589.png


Nếu bạn muốn đọc thêm log của ứng dụng khác, (ví dụ: Nginx), hãy thêm đoạn cấu hình sau:

1783080439433.png


Dưới đây là 1 phần log của Kali đã được đẩy về Wazul

1783080558291.png


Sau khi chỉnh sửa conf thì phải restart lại bằng lệnh sudo systemctl restart wazuh-agent

4.3. Kiểm tra kết nối của Agent trên Wazuh Dashboard​

Sau khi cài đặt xong Agent trên máy Linux, hãy quay lại giao diện quản trị Wazuh Dashboard -> Agents. Tại đây, máy chủ Linux của bạn sẽ hiển thị trạng thái Active.

1783080478944.png



5. Threat Hunting và Giám sát Sự kiện​

5.1. Mô phỏng tấn công và Ghi nhận Sự kiện​

Để kiểm tra khả năng phát hiện của Wazuh, bạn có thể thực hiện một số thao tác hệ thống hoặc mô phỏng tấn công (như đăng nhập sai nhiều lần, hoặc dò quét mạng).

1783080494964.png



(Lưu ý: Các hình ảnh trên mô tả các hoạt động đáng ngờ trên hệ thống đã bị Wazuh ghi nhận lại và tạo cảnh báo).

5.2. Threat Hunting trên máy chủ Kali Linux​

Nếu máy tính phát sinh cảnh báo là máy Kali Linux , Wazuh sẽ phân loại và hiển thị các luồng tấn công một cách trực quan tại mục Threat Hunting:

1783080606134.png


Chi tiết một sự kiện (Event) do Kali Linux sinh ra, Wazuh sẽ chắt lọc ra các thông tin quan trọng như loại kỹ thuật và đánh dấu mức độ cảnh báo rõ ràng:

1783080673513.png


5.3. Threat Hunting trên máy chủ Windows​

Tương tự, với các máy trạm Windows, giao diện Threat Hunting sẽ trực quan hóa các hành vi bất thường, ví dụ như thay đổi registry, tạo tài khoản trái phép, hoặc chạy PowerShell nghi ngờ:

1783080647012.png


Chi tiết một Log sự kiện bảo mật của Windows hiển thị cụ thể các trường thông tin quan trọng (như EventID) kèm theo thông tin ánh xạ chuẩn MITRE ATT&CK:

1783080694401.png


6. Tổng kết​

Thông qua tài liệu hướng dẫn này, chúng ta có thể nắm bắt được:
  • Kiến trúc và các tính năng cốt lõi của giải pháp SIEM Wazuh.
  • Thực hiện cài đặt Wazuh All-in-one nhanh chóng và thành công thông qua script tự động.
  • Triển khai và cấu hình Wazuh Agent trên các nền tảng máy chủ Windows và Linux để đẩy log (Event Viewer, syslog, auth.log...) về hệ thống phân tích.
  • Hiểu và ứng dụng giao diện Threat Hunting cùng khả năng ánh xạ kỹ thuật tấn công theo chuẩn MITRE ATT&CK. Qua đó, bạn có thể dễ dàng giám sát, điều tra mọi dấu hiệu xâm nhập, thay đổi đặc quyền, hay chỉnh sửa file trái phép trên toàn bộ hạ tầng.
 

Đính kèm

  • 1783079652075.png
    1783079652075.png
    144.1 KB · Lượt xem: 0
  • 1783080214405.png
    1783080214405.png
    72.5 KB · Lượt xem: 0
  • 1783080485965.png
    1783080485965.png
    77.5 KB · Lượt xem: 0
  • 1783080503277.png
    1783080503277.png
    145.6 KB · Lượt xem: 0
  • 1783080532254.png
    1783080532254.png
    424.2 KB · Lượt xem: 0
  • 1783080596573.png
    1783080596573.png
    424.2 KB · Lượt xem: 0
  • 1783080617003.png
    1783080617003.png
    120.1 KB · Lượt xem: 0
  • 1783080624554.png
    1783080624554.png
    137.3 KB · Lượt xem: 0
  • 1783080624541.png
    1783080624541.png
    120.1 KB · Lượt xem: 0
  • 1783080637947.png
    1783080637947.png
    137.3 KB · Lượt xem: 0
Back
Top