Mục tiêu chương / Learning objectives
- So sánh AV, EDR, HIPS và DLP — hiểu tầng bảo vệ và giới hạn của từng loại endpoint security.
- Thiết kế chính sách MDM/MAM và BYOD phù hợp cho doanh nghiệp.
- Phân tích rủi ro bảo mật trong môi trường ảo hóa: VM escape, hypervisor attack, container breakout.
- Nhận diện và phân tích 8 lỗ hổng OWASP Top 10 phổ biến nhất với ví dụ code thực tế.
- Phân biệt 7 loại malware theo cơ chế lây lan và ẩn náu.
- Cấu hình WAF rules cơ bản và áp dụng API security best practices.
1. Lý thuyết cốt lõi / Core theory
1.1. Endpoint Security — AV, EDR, HIPS, DLP
Các lớp bảo vệ endpoint theo mức độ tiên tiến:
- AV (Antivirus): Signature-based, phát hiện malware đã biết. Hiệu quả thấp với zero-day và fileless malware. Cần thiết nhưng không đủ.
- EDR (Endpoint Detection & Response): Ghi lại toàn bộ hoạt động endpoint (process creation, file I/O, network, registry), phân tích behavioral, cho phép investigate và respond remotely. CrowdStrike Falcon, Microsoft Defender for Endpoint, SentinelOne.
- HIPS (Host-based Intrusion Prevention System): Giám sát và chặn hành vi đáng ngờ ở cấp OS — thay đổi registry, inject vào process khác, privilege escalation attempt.
- DLP (Data Loss Prevention): Phát hiện và ngăn chặn dữ liệu nhạy cảm rời khỏi tổ chức qua email, USB, cloud upload, print. Dựa trên content inspection (regex pattern cho PII, PCI data).
Fileless Malware: Malware không ghi file xuống disk — sống hoàn toàn trong RAM (reflective DLL injection, process hollowing, living-off-the-land sử dụng PowerShell/WMI). AV không phát hiện được vì không có file để scan. EDR phát hiện qua behavioral analysis của process.
1.2. Mobile Device Security — MDM, MAM, BYOD
MDM (Mobile Device Management): quản lý toàn bộ thiết bị — enforce encryption, remote wipe, certificate deployment, restrict features (camera, USB). Phù hợp với thiết bị công ty. MAM (Mobile Application Management): chỉ quản lý ứng dụng doanh nghiệp, không đụng đến dữ liệu cá nhân — phù hợp BYOD. Containerization: tạo vùng tách biệt (work profile trên Android) giữa dữ liệu cá nhân và công việc.
BYOD Policy cần quy định: thiết bị nào được phép (OS version tối thiểu, không jailbroken/rooted), ứng dụng nào được cài, network access level (chỉ truy cập email hay cả internal apps?), quy trình khi thiết bị mất/bị đánh cắp (remote wipe work profile ngay lập tức).
1.3. Virtualization Security
Các rủi ro bảo mật đặc thù môi trường ảo hóa:
- VM Escape: Lỗ hổng cho phép code trong VM vượt ra ngoài và tấn công hypervisor hoặc VM khác — nguy hiểm nhất trong môi trường multi-tenant cloud.
- Hypervisor Attack: Tấn công trực tiếp vào hypervisor (Type 1: bare-metal như VMware ESXi; Type 2: hosted như VirtualBox). Compromise hypervisor = kiểm soát tất cả VM.
- VM Sprawl: VM được tạo ra nhưng không được quản lý, patch — trở thành điểm tấn công.
- Container Security: Container chia sẻ kernel với host — container breakout nghiêm trọng hơn VM escape. Cần chạy container với non-root user, read-only filesystem, resource limits.
1.4. OWASP Top 10, WAF & API Security
OWASP Top 10 (2021) — các lỗ hổng web phổ biến nhất:
| Hạng | Lỗ hổng | Ví dụ tấn công | Biện pháp |
|---|---|---|---|
| A01 | Broken Access Control | IDOR, path traversal | Server-side authz check |
| A02 | Cryptographic Failures | Dữ liệu không mã hóa, MD5 | TLS, AES-256, bcrypt |
| A03 | Injection (SQL/LDAP/OS) | ' OR 1=1-- | Parameterized queries |
| A04 | Insecure Design | Thiếu rate limiting, business logic flaw | Threat modeling, secure design |
| A05 | Security Misconfiguration | Default creds, verbose errors | Hardening, config review |
| A07 | XSS (Cross-Site Scripting) | <script>steal cookie</script> | Output encoding, CSP header |
| A10 | SSRF (Server-Side Request Forgery) | Truy cập metadata AWS từ app | Allowlist URLs, network segmentation |
WAF (Web Application Firewall): layer 7 firewall phân tích HTTP request/response — phát hiện SQL injection, XSS, path traversal dựa trên signature và behavioral rules. API Security: OAuth2 cho authorization, API key rotation, rate limiting (chống abuse và DDoS), input validation, không expose sensitive data trong response.
1.5. Phân loại Malware (Malware Types)
- Virus: Cần file host để lây lan — tự chèn code vào file khác. Lây qua file share, USB.
- Worm: Tự lây lan qua mạng mà không cần file host — khai thác lỗ hổng network service. Ví dụ: WannaCry lây qua SMB EternalBlue.
- Trojan: Giả dạng phần mềm hợp lệ — không tự lây lan, cần user cài đặt. Thường chứa backdoor/RAT.
- Ransomware: Mã hóa dữ liệu, đòi tiền chuộc. Hiện đại: double extortion (mã hóa + đe dọa công bố dữ liệu).
- Rootkit: Ẩn sâu trong OS (kernel level), che giấu process/file/kết nối mạng của malware khác. Rất khó phát hiện và xóa.
- Spyware: Thu thập thông tin người dùng (keystroke, screenshot, browsing) gửi về attacker.
- Fileless Malware: Sống trong RAM, dùng legitimate tools (PowerShell, WMI, LOLBins) — không có file trên disk để AV phát hiện.
2. Bài thực hành / Hands-on labs
Lab 1 — Endpoint Security Check với Windows Defender (PowerShell)
OS: Windows 11 · Tool: PowerShell 7 (Run as Administrator)
# Trạng thái tổng quan Windows Defender
Get-MpComputerStatus | Select-Object `
AMServiceEnabled, AntispywareEnabled, AntivirusEnabled, `
RealTimeProtectionEnabled, BehaviorMonitorEnabled, `
AntivirusSignatureLastUpdated, QuickScanStartTime |
Format-List
# Xem các mối đe dọa đã phát hiện gần đây
Get-MpThreatDetection | Select-Object `
ActionSuccess, CleaningActionID, ThreatName, Resources, InitialDetectionTime |
Sort-Object InitialDetectionTime -Descending | Select-Object -First 10
# Kiểm tra AppLocker policy đang active (ngăn chặn unauthorized executables)
Get-AppLockerPolicy -Effective | Format-List
# Kiểm tra Process Mitigation settings (ASLR, DEP, CFG, etc.)
Get-ProcessMitigation -System | Format-List
# Kiểm tra Exploit Protection settings
Get-ProcessMitigation -System | Select-Object ASLR, DEP, SEHOP | Format-List
# Xem controlled folder access status (ransomware protection)
Get-MpPreference | Select-Object EnableControlledFolderAccess, ControlledFolderAccessProtectedFolders
✅ Kết quả mong đợi / Expected output: Tất cả *Enabled: True cho thấy Defender đang hoạt động đầy đủ. AntivirusSignatureLastUpdated không quá 24 giờ — signature cũ = bảo vệ kém. EnableControlledFolderAccess: Enabled = ransomware protection bật. Nếu RealTimeProtectionEnabled: False → cần alert ngay. AppLocker policy trống = không có application whitelisting.
Lab 2 — Web Application Security Test (Ubuntu 22.04)
OS: Ubuntu 22.04 · Tool: Bash + Nikto · Chỉ test trên môi trường lab của chính bạn — KHÔNG test trên hệ thống không có quyền!
# Cài nikto nếu chưa có (web vulnerability scanner)
sudo apt install nikto curl -y
# Kiểm tra web server header — thông tin lộ lọt
curl -I http://localhost 2>/dev/null || curl -I http://127.0.0.1 2>/dev/null
# Chạy Nikto scan cơ bản (nếu có local web server)
# nikto -h http://localhost
# Demo SQL Injection attempt (chỉ xem HTTP response, không tấn công thật)
# Test trên local server học tập như DVWA (Damn Vulnerable Web App)
curl -s -X POST http://localhost/login \
-d "username=admin'--&password=anything" \
-H "Content-Type: application/x-www-form-urlencoded" \
-v 2>&1 | grep -E "HTTP|Location|Set-Cookie|error|Error" || \
echo "No local web server running — install DVWA for practice"
# Kiểm tra security headers của một website
curl -s -I https://google.com 2>/dev/null | grep -iE \
"Strict-Transport-Security|Content-Security-Policy|X-Frame-Options|X-Content-Type|Referrer-Policy"
# Test SSRF vector (chỉ educational — không có target thực)
echo "SSRF prevention check: does the app validate URL inputs?"
echo "Example dangerous input: http://169.254.169.254/latest/meta-data/ (AWS metadata endpoint)"
echo "Mitigation: allowlist URLs, block private IP ranges at app level"
✅ Kết quả mong đợi / Expected output: curl -I response header tiết lộ server software (vd Server: Apache/2.4.41) — thông tin này giúp attacker tìm CVE phù hợp. Security headers check với google.com sẽ thấy Strict-Transport-Security, Content-Security-Policy — các header này bảo vệ khỏi MITM và XSS. Nếu website thiếu các header này → cần thêm vào web server config.
3. Tình huống doanh nghiệp / Real-world scenario
Bối cảnh:
Pentest team báo cáo: web application e-commerce của công ty có lỗ hổng SQL Injection trong trang tìm kiếm sản phẩm. Họ đã extract được tên và password hash của 50,000 khách hàng từ database. Ứng dụng không có WAF. Password hash dùng MD5 không có salt.
Phân tích và kế hoạch remediation:
- Tức thời — Containment: Offline trang tìm kiếm bị ảnh hưởng. Block IP của pentest team (và bất kỳ IP nào có pattern tương tự trong log). Thông báo cho CISO và Legal.
- OWASP A03 — SQL Injection fix: Thay dynamic query bằng parameterized query / prepared statements. Ví dụ: thay
SELECT * FROM products WHERE name = '" + input + "'"bằngSELECT * FROM products WHERE name = ?với binding. - OWASP A02 — Cryptographic Failure fix: Hash lại toàn bộ password bằng bcrypt/Argon2 (adaptive, slow hash với salt). Force reset password cho tất cả user bị ảnh hưởng.
- WAF deployment: Triển khai WAF (AWS WAF, ModSecurity, Cloudflare) với OWASP Core Rule Set — phát hiện và chặn SQL injection pattern.
- Notification: Theo GDPR/nghị định 13/2023/NĐ-CP (VN) — phải thông báo cho cơ quan chức năng trong 72 giờ và thông báo cho người dùng bị ảnh hưởng.
- Prevent recurrence: Mandatory SAST (Static Application Security Testing) trong CI/CD pipeline. Developer security training về OWASP Top 10.
Bài học: SQL Injection là lỗ hổng có từ 1998 nhưng vẫn xếp #3 OWASP Top 10 năm 2021. Parameterized query là fix đơn giản nhất với cost gần như bằng 0 — không có lý do để không dùng. MD5 password hash là sai lầm không thể chấp nhận trong 2026.
4. Tự kiểm tra / Knowledge check
- EDR vượt trội hơn AV truyền thống ở điểm gì khi đối phó với fileless malware?
- VM Escape và Container Breakout khác nhau như thế nào về mức độ nguy hiểm và cơ chế?
- OWASP A01 Broken Access Control là gì? Cho ví dụ IDOR (Insecure Direct Object Reference) cụ thể.
- Worm khác Virus ở điểm gì? Tại sao ransomware như WannaCry lây lan nhanh như vậy?
- Tại sao bcrypt tốt hơn SHA-256 để hash password? Giải thích khái niệm "adaptive" và "salt".