Mục tiêu chương / Learning objectives
- Mô tả các cấp độ phân loại dữ liệu và phương pháp hủy dữ liệu an toàn (DoD 5220.22-M, degaussing, shredding).
- Giải thích khái niệm hardening baseline theo CIS Benchmarks và vai trò của patch management.
- Phân biệt các loại tấn công social engineering: phishing, spear-phishing, vishing, smishing, pretexting.
- Mô tả mục đích của log management và những gì cần ghi log trong môi trường enterprise.
- Hiểu khái niệm SIEM — tập hợp, tương quan và cảnh báo từ nhiều nguồn log.
- Thực hành kiểm tra trạng thái hardening Windows 11 và audit hardening Linux với Bash/Lynis.
1. Lý thuyết cốt lõi / Core theory
1.1. Xử lý dữ liệu — Phân loại, gán nhãn, lưu giữ và hủy (Data Handling: Classification / Labeling / Retention / Destruction)
Phân loại dữ liệu (Data Classification) là nền tảng để áp dụng biện pháp bảo vệ phù hợp. Mô hình dân sự phổ biến trong doanh nghiệp:
- Public (Công khai): Tự do chia sẻ — brochure marketing, thông cáo báo chí.
- Internal (Nội bộ): Chỉ nhân viên trong tổ chức — policy nội bộ, org chart.
- Confidential (Bí mật): Hạn chế theo need-to-know — hợp đồng khách hàng, source code.
- Restricted/Top Secret (Tuyệt mật): Cần ủy quyền đặc biệt — dữ liệu R&D chiến lược, thông tin M&A.
Data Labeling (Gán nhãn): Đánh dấu rõ ràng cấp phân loại trên document (header/footer), email (sensitivity label trong Microsoft 365), file metadata. Labeling là bắt buộc để DLP (Data Loss Prevention) tool có thể enforce policy.
Retention Policy (Chính sách lưu giữ): Xác định bao lâu phải giữ dữ liệu và bao lâu phải xóa. Ví dụ: hồ sơ thuế giữ 7 năm (yêu cầu pháp lý), email nhân viên giữ 3 năm, CCTV footage giữ 90 ngày.
Hủy dữ liệu an toàn (Secure Data Destruction):
DoD 5220.22-M (Overwriting): Ghi đè nhiều lần bằng pattern bit ngẫu nhiên — hiệu quả với HDD truyền thống. Với SSD, overwriting không đảm bảo do wear-leveling; cần encryption + factory reset hoặc physical destruction.
Degaussing (Khử từ): Dùng từ trường mạnh để xóa dữ liệu trên HDD và tape. Sau degaussing, thiết bị thường không dùng được nữa.
Physical Shredding (Tiêu hủy vật lý): Nghiền nát ổ đĩa thành mảnh nhỏ — phương pháp dứt khoát nhất, đặc biệt cần cho ổ đĩa chứa dữ liệu Top Secret.
Cryptographic Erasure: Mã hóa toàn bộ ổ đĩa trước, sau đó xóa key — cách nhanh nhất cho SSD và cloud storage.
1.2. Hardening hệ thống & CIS Benchmarks (System Hardening / Configuration Baselines)
System Hardening là quá trình giảm attack surface của hệ thống bằng cách loại bỏ các thành phần không cần thiết, vá lỗ hổng và cấu hình bảo mật chặt chẽ. Nguyên tắc: mọi thứ không được phép tường minh thì bị cấm.
CIS Benchmarks (Center for Internet Security) là bộ hướng dẫn cấu hình bảo mật miễn phí, được cộng đồng chuyên gia toàn cầu xây dựng cho hàng trăm platform: Windows Server, Ubuntu, macOS, Docker, Kubernetes, AWS, Azure. Mỗi benchmark có hai level:
- Level 1: Cấu hình cơ bản, tác động thấp đến chức năng, phù hợp cho tất cả hệ thống.
- Level 2: Cấu hình nghiêm ngặt hơn, có thể ảnh hưởng tính năng — dùng cho hệ thống yêu cầu bảo mật cao.
Các bước hardening cơ bản (áp dụng cho mọi OS):
1. Cài đặt OS tối thiểu — chỉ cài package/role cần thiết.
2. Vá tất cả patch bảo mật ngay sau cài đặt.
3. Đổi mật khẩu mặc định, disable tài khoản guest/anonymous.
4. Bật firewall, chỉ mở port cần thiết.
5. Bật audit logging — ghi log authentication, privilege use, object access.
6. Cấu hình theo CIS Benchmark level phù hợp.
7. Chạy vulnerability scanner (OpenVAS, Nessus, Lynis) để verify.
1.3. Patch Management & Configuration Management (Vòng đời quản lý bản vá)
Patch management là quy trình có tổ chức để xác định, test, phân phối và xác nhận các bản vá phần mềm. Vòng đời gồm 5 bước:
- Identify: Theo dõi CVE (Common Vulnerabilities and Exposures), nhà cung cấp release patch notes (Microsoft Patch Tuesday — thứ Ba đầu tháng).
- Assess: Đánh giá mức độ nghiêm trọng (CVSS score 0-10), hệ thống nào bị ảnh hưởng, khả năng bị khai thác (exploitability).
- Test: Apply patch vào môi trường test/staging trước — kiểm tra compatibility, không làm hỏng ứng dụng.
- Deploy: Roll out theo nhóm (pilot group → general deployment), ngoài giờ cao điểm, có rollback plan.
- Verify: Xác nhận patch đã được apply thành công trên tất cả hệ thống mục tiêu, scan lại để verify.
CMDB (Configuration Management Database) là cơ sở dữ liệu lưu trữ thông tin về tất cả CI (Configuration Items) — server, switch, application, service — và mối quan hệ giữa chúng. Change control process: mọi thay đổi phải được đề xuất, review, phê duyệt và ghi nhận vào CMDB.
1.4. Tấn công Social Engineering (Phishing / Spear-phishing / Vishing / Smishing / Pretexting)
Social engineering khai thác điểm yếu con người — lừa đảo, thao túng tâm lý — thay vì khai thác lỗ hổng kỹ thuật. Đây là vector tấn công số 1 trong thực tế:
- Phishing (Lừa đảo email): Email giả mạo gửi hàng loạt — giả ngân hàng, dịch vụ cloud, HR. Mục tiêu: steal credentials, install malware qua attachment/link.
- Spear-phishing (Lừa đảo có chủ đích): Phishing được cá nhân hóa — nghiên cứu nạn nhân trước (LinkedIn, website công ty), email nhắc đến tên, dự án, đồng nghiệp cụ thể. Tỉ lệ thành công cao hơn nhiều.
- Whaling (Săn cá voi): Spear-phishing nhắm vào C-level (CEO, CFO, CTO) — thường dẫn đến Business Email Compromise (BEC), chuyển khoản sai.
- Vishing (Voice phishing): Gọi điện giả làm IT support, ngân hàng, cơ quan thuế. "Tôi là IT helpdesk, tôi cần mật khẩu của anh để reset hệ thống."
- Smishing (SMS phishing): SMS giả mạo với link malicious — "Gói hàng của bạn đang chờ xác nhận, click vào đây."
- Pretexting: Tạo kịch bản giả (pretext) để tạo sự tin tưởng — ví dụ: giả làm IT auditor, xin quyền truy cập vào hệ thống để "kiểm tra compliance."
Phòng chống Social Engineering: Security awareness training định kỳ (không phải một lần duy nhất). Phishing simulation để đo lường và cải thiện. Technical controls: SPF/DKIM/DMARC để xác thực email, email sandboxing để phân tích attachment. Quy trình xác minh: luôn verify qua kênh độc lập trước khi thực hiện hành động nhạy cảm (chuyển tiền, cấp quyền).
1.5. Log Management & SIEM (Logging / Security Information and Event Management)
Log là bằng chứng số quan trọng nhất trong điều tra sự cố. Những gì cần log:
- Authentication events: Logon thành công/thất bại, MFA events, privilege escalation (Windows Event ID 4624, 4625, 4672).
- Object access: Đọc/ghi file nhạy cảm, database queries, API calls (Windows Event ID 4663).
- Network traffic: Firewall allow/deny, DNS queries, HTTP request logs từ proxy/WAF.
- System events: Service start/stop, scheduled task creation, registry modification, software installation.
- Application logs: Error logs, transaction logs, audit trails của business application.
SIEM (Security Information and Event Management): Thu thập log từ tất cả nguồn (endpoint, network, cloud, application) về một nơi tập trung. Tương quan (correlate) các event độc lập thành chuỗi có ý nghĩa: "failed logon 50 lần trong 2 phút từ cùng IP → brute force alert." Ví dụ: Microsoft Sentinel, Splunk, IBM QRadar, Elastic SIEM. SIEM là trái tim của SOC (Security Operations Center). Log retention: thường 90 ngày online + 1 năm archive cho compliance.
1.6. Double Extortion Ransomware — Mô hình tống tiền hai tầng (Double Extortion Ransomware)
Ransomware truyền thống chỉ mã hóa file và yêu cầu tiền chuộc để lấy key giải mã. Từ 2019–2020, các nhóm APT như REvil, LockBit, Conti chuyển sang mô hình double extortion (tống tiền kép) — nguy hiểm hơn đáng kể vì backup không còn đủ để phòng thủ:
Hai giai đoạn của Double Extortion:
Giai đoạn 1 — Exfiltration (Đánh cắp dữ liệu): Trước khi mã hóa, attacker âm thầm copy dữ liệu nhạy cảm ra ngoài — hồ sơ khách hàng, dữ liệu tài chính, IP (intellectual property), email cấp cao. Dữ liệu được lưu trên C2 server của attacker. Giai đoạn này có thể kéo dài hàng tuần mà nạn nhân không hay biết.
Giai đoạn 2 — Encryption + Threat (Mã hóa và đe dọa): Sau khi đã exfiltrate đủ, attacker mã hóa toàn bộ file. Đòi tiền chuộc kèm đe dọa: "Nếu không trả tiền trong X ngày, chúng tôi sẽ đăng toàn bộ dữ liệu lên darknet." Nhiều nhóm có dedicated leak site (ví dụ: LockBit có trang đếm ngược).
Tác động kép: Ngay cả khi nạn nhân có backup tốt và không cần key giải mã → vẫn phải đối mặt với mối đe dọa lộ dữ liệu → vi phạm GDPR/PCI-DSS → phạt, kiện tụng, mất uy tín. Năm 2021, Colonial Pipeline phải trả $4.4M tiền chuộc mặc dù có một số backup.
Chỉ báo phát hiện sớm (Detection Indicators):
- Unusual outbound data transfers: Lưu lượng lớn bất thường ra ngoài — đặc biệt sau giờ làm việc, đến IP lạ (không phải cloud provider đã biết). SIEM alert: outbound traffic >1GB đến một IP duy nhất trong 1 giờ.
- Enumeration activity: Truy vấn Active Directory bất thường — attacker liệt kê tài khoản, share, database để tìm dữ liệu giá trị nhất cần exfiltrate.
- Credential harvesting tools: Phát hiện Mimikatz, Cobalt Strike, hoặc PowerShell Invoke-Mimikatz trong log — dấu hiệu attacker đang thu thập credential để lateral movement.
- New scheduled tasks / services: Attacker tạo persistence mechanism trước khi deploy ransomware — Sysmon Event ID 1 (process creation) với binary lạ.
1.7. PAM — Quản lý truy cập đặc quyền (Privileged Access Management)
PAM (Privileged Access Management) là tập hợp công nghệ và quy trình kiểm soát, giám sát và kiểm toán các tài khoản có quyền cao (admin, root, service account, database SA). Tài khoản đặc quyền là mục tiêu số một của attacker — một tài khoản Domain Admin bị chiếm = toàn bộ domain bị chiếm.
Bốn năng lực cốt lõi của PAM:
Password Vaulting (Kho mật khẩu): Lưu trữ tập trung credential của tài khoản đặc quyền trong vault mã hóa — admin không biết mật khẩu thực tế, vault tự inject khi cần. Mật khẩu rotate tự động sau mỗi phiên sử dụng. Không còn password "shared" dùng chung và không thay đổi hàng năm.
Just-in-Time (JIT) Access — Truy cập đúng lúc: Admin chỉ có quyền đặc quyền trong khoảng thời gian cần thiết (ví dụ 2 giờ để thực hiện maintenance), sau đó quyền tự động bị thu hồi. Không còn tài khoản "luôn luôn là admin" — giảm window of opportunity cho attacker.
Session Recording (Ghi lại phiên làm việc): Toàn bộ phiên làm việc của tài khoản đặc quyền được ghi lại video + keystroke — có thể replay để forensics, compliance audit. Không thể phủ nhận (non-repudiation) hành động trong session.
Secrets Management (Quản lý bí mật): Quản lý API key, certificate, SSH key, database password dùng trong application và CI/CD pipeline — thay vì hardcode trong code hay config file. Secret tự động rotate, inject vào runtime environment.
Công cụ PAM phổ biến:
- CyberArk PAM: Enterprise-grade, được dùng rộng rãi trong ngân hàng và tổ chức tài chính — có Privileged Session Manager, Credential Provider, Application Identity Manager.
- HashiCorp Vault: Open-source secrets management phổ biến trong DevOps — dynamic secrets, PKI, database credential, AWS/Azure IAM integration. Self-hosted hoặc HCP Vault (managed).
- Azure PIM (Privileged Identity Management): Microsoft Entra ID built-in — JIT activation cho Azure AD roles, approval workflow, access review, alert khi role được activate.
Tại sao PAM quan trọng trong kiến trúc Zero Trust: Zero Trust không tin tưởng ngay cả user đã xác thực — PAM là hiện thực hóa nguyên lý least privilege và verify explicitly. Khi attacker steal credential thông thường, họ chỉ có quyền hạn chế. PAM đảm bảo ngay cả khi compromised, blast radius bị giới hạn tối đa. Theo báo cáo Verizon DBIR, 74% vi phạm liên quan đến yếu tố con người và credential abuse — PAM trực tiếp giảm thiểu rủi ro này.
2. Bài thực hành / Hands-on lab
Lab 1 — Windows System Hardening Check (PowerShell)
OS: Windows 11 · Tool: PowerShell 7 (Administrator).
Mục tiêu: đánh giá nhanh trạng thái hardening — patch status, antivirus, enabled features — tạo baseline security posture report.
# === PATCH STATUS ===
Write-Host "=== Recent Hotfixes (Top 10) ===" -ForegroundColor Cyan
Get-HotFix |
Sort-Object InstalledOn -Descending |
Select-Object -First 10 HotFixID, Description, InstalledOn |
Format-Table -AutoSize
# Kiểm tra bản cập nhật Windows Update còn chờ
Write-Host "`n=== Pending Windows Updates ===" -ForegroundColor Yellow
$updateSession = New-Object -ComObject Microsoft.Update.Session
$updateSearcher = $updateSession.CreateUpdateSearcher()
try {
$pendingUpdates = $updateSearcher.Search("IsInstalled=0 and IsHidden=0")
Write-Host "Pending updates: $($pendingUpdates.Updates.Count)"
$pendingUpdates.Updates | Select-Object -First 5 Title | Format-List
} catch {
Write-Host "Windows Update COM object not accessible in this context." -ForegroundColor Gray
}
# === ANTIVIRUS / DEFENDER STATUS ===
Write-Host "`n=== Windows Defender / Antivirus Status ===" -ForegroundColor Cyan
$mpStatus = Get-MpComputerStatus
[PSCustomObject]@{
AntivirusEnabled = $mpStatus.AntivirusEnabled
RealTimeProtectionEnabled = $mpStatus.RealTimeProtectionEnabled
AntispywareEnabled = $mpStatus.AntispywareEnabled
BehaviorMonitorEnabled = $mpStatus.BehaviorMonitorEnabled
AntivirusSignatureLastUpdated= $mpStatus.AntivirusSignatureLastUpdated
NISSignatureLastUpdated = $mpStatus.NISSignatureLastUpdated
} | Format-List
# === ENABLED WINDOWS FEATURES ===
Write-Host "`n=== Enabled Optional Features ===" -ForegroundColor Cyan
Get-WindowsOptionalFeature -Online |
Where-Object { $_.State -eq 'Enabled' } |
Select-Object FeatureName |
Format-Table -AutoSize
# === AUDIT POLICY ===
Write-Host "`n=== Audit Policy Status ===" -ForegroundColor Cyan
auditpol /get /category:* | Select-String -Pattern "Logon|Account|Object|Privilege" |
Select-Object -First 15
# === AUTORUN / STARTUP ===
Write-Host "`n=== Startup Programs (potential persistence) ===" -ForegroundColor Yellow
Get-CimInstance Win32_StartupCommand |
Select-Object Name, Command, Location, User |
Format-Table -AutoSize -Wrap
✅ Kết quả mong đợi / Expected output: Top 10 hotfix gần nhất với ngày cài — nếu hotfix cuối cùng cách đây >30 ngày là warning. Defender status: tất cả phải True và signature <1 ngày cũ. Enabled features: nếu thấy TelnetClient hoặc TFTP — disable ngay (cleartext protocol). Audit policy: Logon Events, Account Management, Privilege Use phải được audit. Startup entries lạ (đường dẫn trong %TEMP%, %APPDATA%) là dấu hiệu malware persistence.
Lab 2 — Linux Hardening Audit (Bash + Lynis)
OS: Ubuntu 22.04 · Tool: Bash + Lynis (security auditing tool).
Mục tiêu: chạy audit hardening tự động với Lynis và kiểm tra thủ công các mục bảo mật quan trọng theo CIS Benchmark.
# === CÀI LYNIS (nếu chưa có) ===
sudo apt update && sudo apt install -y lynis
# === CHẠY LYNIS AUDIT ===
# Lynis sẽ kiểm tra hàng trăm điểm bảo mật và cho hardening index
sudo lynis audit system 2>&1 | tee /tmp/lynis-report.txt
# Xem kết quả tóm tắt
grep -E "Hardening index|Warning|Suggestion" /tmp/lynis-report.txt | head -30
# === MANUAL CHECKS — theo CIS Ubuntu Benchmark ===
# 1. Kiểm tra chính sách mật khẩu (password policy)
echo "=== Password Policy ==="
grep -E "PASS_MAX_DAYS|PASS_MIN_DAYS|PASS_WARN_AGE|LOGIN_RETRIES|LOGIN_TIMEOUT" /etc/login.defs
# 2. Kiểm tra IP forwarding (server không nên forward packet trừ khi là router)
echo "`n=== IP Forwarding (should be 0) ==="
sysctl net.ipv4.ip_forward
sysctl net.ipv6.conf.all.forwarding
# 3. Kiểm tra file cấu hình nào mới được sửa (suspicious changes)
echo "`n=== /etc configs modified recently ==="
find /etc -name "*.conf" -newer /etc/passwd -ls 2>/dev/null | head -20
# 4. Kiểm tra SUID/SGID binaries (tiềm năng privilege escalation)
echo "`n=== SUID Binaries (review carefully) ==="
find / -perm -4000 -type f 2>/dev/null | sort
# 5. Kiểm tra world-writable directories (rủi ro ghi file độc hại)
echo "`n=== World-writable directories ==="
find / -xdev -type d -perm -0002 -not -path "/proc/*" 2>/dev/null | head -20
# 6. Kiểm tra SSH hardening
echo "`n=== SSH Config Security Check ==="
grep -E "PermitRootLogin|PasswordAuthentication|X11Forwarding|MaxAuthTries|Protocol" /etc/ssh/sshd_config
# 7. Kiểm tra unattended-upgrades (tự động cập nhật bảo mật)
echo "`n=== Automatic Security Updates ==="
dpkg -l | grep unattended-upgrades
cat /etc/apt/apt.conf.d/20auto-upgrades 2>/dev/null
✅ Kết quả mong đợi / Expected output: Lynis hardening index từ 0-100 — hệ thống mới cài thường 55-65; sau hardening nên đạt 75+. Warnings và Suggestions là danh sách cụ thể cần xử lý. Password policy: PASS_MAX_DAYS 90, PASS_MIN_DAYS 7. IP forwarding phải là 0 trên server thông thường. SSH: PermitRootLogin no, PasswordAuthentication no (dùng key only), MaxAuthTries 3. SUID binaries: các binary hệ thống thông thường (sudo, passwd, ping) là bình thường — binary lạ cần điều tra.
3. Tình huống doanh nghiệp / Real-world scenario
Bối cảnh — Phishing simulation: 35% click rate và kế hoạch cải thiện 90 ngày:
Đội bảo mật của một công ty bán lẻ 800 nhân viên chạy phishing simulation lần đầu tiên — gửi email giả mạo thông báo "cập nhật chính sách nghỉ phép, click để xem chi tiết." Kết quả: 35% nhân viên click link, 18% điền thông tin vào trang phishing giả. Con số này cao hơn mức trung bình ngành (dưới 10%) — đội bảo mật lập kế hoạch cải thiện khẩn cấp.
Kế hoạch 90 ngày:
- Tuần 1-2 — Immediate technical controls:
- Triển khai SPF, DKIM, DMARC cho domain công ty — ngăn domain giả mạo trong email outbound và inbound.
- Bật Microsoft Defender for Office 365 Safe Links và Safe Attachments — sandbox attachment, block malicious URL.
- Bật MFA cho 100% tài khoản — ngay cả khi credentials bị stolen, attacker không login được.
- Tuần 3-4 — Awareness training (tiered approach):
- 18% đã điền thông tin vào form phishing → mandatory intensive training (60 phút, có quiz, phải pass).
- 35% click nhưng không điền → standard training module (30 phút) trên LMS.
- 65% không click → optional refresher, nhận badge khen thưởng.
- Nội dung training: cách nhận biết email phishing, verify sender domain, báo cáo suspicious email.
- Tháng 2 — Email filtering enhancement: Thêm external email banner tất cả email từ ngoài ("EXTERNAL: This email originated outside the organization"). Block auto-forward external. Quarantine email chứa password-protected zip từ sender lạ.
- Tháng 3 — Re-test & Measure: Chạy phishing simulation lần 2 với email phức tạp hơn (spear-phishing style). Mục tiêu: click rate <10%, credential submission rate <2%. Nếu đạt → publish kết quả trong company newsletter, maintain quarterly simulation schedule.
- Bài học về đo lường: Security awareness không phải "train và quên." Cần đo lường liên tục qua simulation và track improvement. Kết hợp technical controls (MFA, SPF/DKIM/DMARC, Safe Links) + human training — không bao giờ chỉ dựa vào một lớp.
Key takeaway: Con người là mắt xích yếu nhất và cũng là lớp phòng thủ quan trọng nhất. Đầu tư vào awareness training có ROI cao nhất trong tất cả security controls — "A security-aware employee is better than any technical control."
4. Tự kiểm tra / Knowledge check
- Một công ty cần dispose 50 laptop cũ chứa dữ liệu khách hàng (PII). Họ có ba lựa chọn: overwrite, degauss, hoặc physical shredding. Cho từng loại storage (HDD, SSD, NVMe), phương án nào đảm bảo nhất? Tại sao?
- Phân biệt phishing và spear-phishing về kỹ thuật chuẩn bị, tỉ lệ thành công và mức độ nguy hiểm. Loại nào thường được dùng để tấn công C-level executives?
- SPF, DKIM và DMARC là ba cơ chế email authentication. Mỗi cơ chế bảo vệ chống lại loại tấn công gì? Tại sao cần cả ba thay vì chỉ một?
- SIEM khác gì với một hệ thống log tập trung thông thường (như ELK Stack)? Tính năng nào của SIEM là đặc trưng nhất?
- Một admin Linux phát hiện file
/tmp/update.shcó SUID bit và được tạo từ 2 giờ trước, không phải do ai trong team tạo. Đây có thể là dấu hiệu của gì? Bước tiếp theo là gì theo PICERL?