Bài 100. Penetration testing: các loại, phạm vi, rules of engagement, red/blue/purple team
Khóa học CompTIA Security+ SY0-801 · Phần 5: Quản trị, rủi ro và tuân thủ · Bài 100 · 🎯 Objective 5.5 · ⏱️ Đọc khoảng 17 phút · 🧪 Không cần lab · 📝 5 câu bài tập cuối bài
🎯 Mục tiêu bài học
- Mô tả penetration testing (kiểm thử xâm nhập) và phân biệt với quét lỗ hổng.
- Nhận biết các loại: physical, offensive, defensive, integrated; và các mức hiểu biết về môi trường: known, partially known, unknown.
- Giải thích quy tắc tham gia (rules of engagement), phạm vi và việc ủy quyền bằng văn bản.
- Hiểu các giai đoạn ở mức khái niệm, reconnaissance thụ động và chủ động, và vai trò red, blue, purple, white team, bug bounty.
📎 Vị trí trong đề thi: Objective 5.5. Bài này dùng lại quét lỗ hổng (Bài 86), diễn tập (Bài 88) và audit (Bài 99). Bài sau, Bài 101, giới thiệu MITRE ATT&CK, Cyber Kill Chain và Diamond Model.
⚠️ Lưu ý đạo đức và pháp lý: bài này chỉ nói ở mức khái niệm và quy trình quản trị. Chỉ kiểm thử hệ thống mà bạn có ủy quyền bằng văn bản. Kiểm thử không phép là hành vi trái pháp luật, kể cả khi bạn có ý tốt.
💡 Liên hệ thực tế: quét xong rồi, vậy đã đủ chưa?
Nam đã quét lỗ hổng định kỳ và vá. Chị Lan hỏi: "Nếu có kẻ tấn công thật, họ vào được không?" Quét lỗ hổng trả lời "có những điểm yếu nào", nhưng chưa trả lời "kẻ tấn công nối các điểm yếu thành đường vào được không, và đội phòng thủ có phát hiện không". Nam đề xuất thuê một đơn vị penetration testing với phạm vi và quy tắc ghi rõ, thực hiện ngoài giờ cao điểm, có đầu mối liên lạc để dừng ngay nếu gây sự cố. Đây là tình huống minh họa, không phải vụ việc có thật.
🎯 Hình 100a. Physical, offensive, defensive, integrated.
📘 Kiến thức cốt lõi
🧪 Pentest và quét lỗ hổng
| Tiêu chí | Quét lỗ hổng | Penetration testing |
|---|---|---|
| Mục đích | Liệt kê điểm yếu đã biết | Chứng minh điểm yếu có thể bị khai thác và tác động thực tế |
| Thực hiện | Công cụ tự động, thường xuyên | Con người kết hợp công cụ, theo kịch bản, thường định kỳ |
| Kết quả | Danh sách lỗ hổng, điểm số | Chuỗi tấn công, mức độ tiếp cận, khuyến nghị theo ngữ cảnh |
| Rủi ro | Thấp, nhưng có thể gây tải | Cao hơn: có thể ảnh hưởng hệ thống, cần kiểm soát chặt |
| Tần suất | Hằng tuần, hằng tháng | Hằng năm hoặc sau thay đổi lớn |
Hai việc bổ trợ, không thay thế nhau.
🗂️ Các loại kiểm thử
| Loại | Nội dung | Ví dụ |
|---|---|---|
| Physical | Thử vượt rào vật lý | Khóa, cổng, thẻ ra vào, camera, tailgating (theo sau người có thẻ) |
| Offensive | Chủ động tìm và khai thác điểm yếu như kẻ tấn công | Ứng dụng web, mạng, đám mây, kỹ thuật xã hội |
| Defensive | Đánh giá khả năng phát hiện, ngăn chặn, ứng phó của đội phòng thủ | Xem SIEM và EDR có phát hiện hành vi mô phỏng không |
| Integrated | Kết hợp tấn công, phòng thủ và cả vật lý | Một chiến dịch trọn vẹn từ cổng tòa nhà đến máy chủ |
🔍 Mức hiểu biết về môi trường
| Mức | Tên khác | Người kiểm thử biết gì | Đặc điểm |
|---|---|---|---|
| Known environment | White box | Đầy đủ: sơ đồ, mã nguồn, tài khoản | Sâu, nhanh, bao phủ rộng; ít giống kẻ tấn công thật |
| Partially known environment | Gray box | Một phần: ví dụ có tài khoản người dùng thường | Cân bằng giữa độ sâu và thực tế |
| Unknown environment | Black box | Gần như không biết gì | Giống kẻ tấn công bên ngoài; tốn thời gian hơn, có thể bỏ sót |
Mẹo: chọn mức theo mục tiêu: muốn bao phủ sâu thì known; muốn mô phỏng kẻ tấn công bên ngoài thì unknown.
📜 Quy tắc tham gia (Rules of Engagement, ROE) và ủy quyền
Trước khi làm bất kỳ điều gì, hai bên phải thống nhất bằng văn bản:
| Nội dung | Câu hỏi cần trả lời |
|---|---|
| Ủy quyền | Ai có thẩm quyền cho phép? Có thư ủy quyền bằng văn bản không? (người kiểm thử thường mang theo như "giấy bảo đảm") |
| Phạm vi (scope) | Hệ thống, dải địa chỉ, ứng dụng, tòa nhà được phép; những gì ngoài phạm vi |
| Thời gian | Khi nào được làm, khi nào cấm (giờ cao điểm, kỳ kết toán) |
| Kỹ thuật được phép | Có kỹ thuật xã hội không, có thử từ chối dịch vụ không, có kiểm thử vật lý không |
| Liên lạc và leo thang | Đầu mối, cách dừng khẩn cấp khi gây sự cố |
| Xử lý dữ liệu | Dữ liệu nhạy cảm tìm thấy được xử lý, lưu, hủy thế nào |
| Bên thứ ba và đám mây | Có cần phép của nhà cung cấp đám mây hoặc bên thứ ba sở hữu hệ thống không |
| Pháp lý | Bảo mật thông tin, trách nhiệm, bảo hiểm |
| Báo cáo | Định dạng, thời hạn, ai nhận |
Vượt phạm vi là lỗi nghiêm trọng, có thể là hành vi vi phạm pháp luật, vì thế phạm vi phải rõ và được tôn trọng.
🪜 Các giai đoạn (mức khái niệm)
| Giai đoạn | Nội dung |
|---|---|
| 1. Lập kế hoạch | Mục tiêu, phạm vi, ROE, ủy quyền |
| 2. Reconnaissance (trinh sát) | Thu thập thông tin về mục tiêu |
| 3. Khai thác | Thử tận dụng điểm yếu để giành quyền truy cập ban đầu |
| 4. Sau khai thác | Đánh giá mức độ tiếp cận: leo thang đặc quyền, di chuyển ngang, duy trì truy cập, pivoting (dùng máy đã chiếm làm bàn đạp) |
| 5. Dọn dẹp | Gỡ mọi công cụ, tài khoản, dữ liệu thử để không để lại cửa hậu |
| 6. Báo cáo | Phát hiện, bằng chứng, tác động, khuyến nghị khắc phục theo mức ưu tiên |
Trinh sát thụ động và chủ động:
| Loại | Cách làm | Ví dụ | Mức "ồn" |
|---|---|---|---|
| Thụ động (passive) | Thu thập không tương tác trực tiếp với mục tiêu | OSINT: trang web công khai, mạng xã hội, hồ sơ công khai, bản ghi DNS công khai | Rất khó bị phát hiện |
| Chủ động (active) | Tương tác trực tiếp với mục tiêu | Quét cổng, dò dịch vụ | Có thể bị phát hiện trong nhật ký |
Báo cáo là sản phẩm quan trọng nhất: một pentest không có khuyến nghị khắc phục có ích thì chưa tạo giá trị. Báo cáo nên có tóm tắt cho lãnh đạo và chi tiết kỹ thuật cho đội xử lý.
🎨 Các đội màu
🟥🟦🟪⬜ Hình 100b. Đỏ tấn công, xanh phòng thủ, tím phối hợp, trắng điều phối.
| Đội | Vai trò |
|---|---|
| Red team (đội đỏ) | Mô phỏng kẻ tấn công, tìm cách vượt phòng thủ, thường ít báo trước cho đội phòng thủ |
| Blue team (đội xanh) | Phòng thủ: giám sát, phát hiện, ứng phó |
| Purple team (đội tím) | Phối hợp đỏ và xanh, chia sẻ kỹ thuật để cải thiện phát hiện ngay trong quá trình diễn tập |
| White team (đội trắng) | Đặt luật, điều phối, làm trọng tài, đảm bảo diễn tập an toàn và đúng phạm vi |
Mục tiêu của diễn tập đội màu là cải thiện năng lực phát hiện và ứng phó, không phải phân thắng thua. Kết quả nên được đưa vào quy trình ứng phó (Bài 82) và điều chỉnh quy tắc phát hiện (Bài 85).
🐞 Bug bounty và khai báo lỗ hổng
| Hình thức | Nội dung |
|---|---|
| Bug bounty | Tổ chức mời cộng đồng nhà nghiên cứu tìm lỗ hổng trong phạm vi cho phép và trả thưởng |
| Chính sách khai báo (disclosure policy) | Hướng dẫn nhà nghiên cứu báo lỗ hổng an toàn mà không bị truy cứu nếu làm đúng quy định |
| Khai báo có phối hợp (coordinated disclosure) | Nhà nghiên cứu báo cho tổ chức, cho thời gian vá trước khi công bố |
Bug bounty bổ sung, không thay thế pentest theo hợp đồng, vì phạm vi, chất lượng và độ bao phủ có thể không đều.
🧭 Áp vào câu chuyện của Nam
| Tình huống | Lựa chọn |
|---|---|
| Quét lỗ hổng chỉ liệt kê, chị Lan muốn biết có vào được thật không | Penetration testing |
| Muốn thử tòa nhà văn phòng có cho người lạ theo sau vào không | Physical pentest |
| Muốn đo xem SOC có phát hiện hành vi mô phỏng không | Defensive hoặc purple team |
| Muốn thử như kẻ tấn công ngoài Internet, không cho thông tin | Unknown environment (black box) |
| Muốn bao phủ sâu, đưa tài liệu thiết kế và mã nguồn | Known environment (white box) |
| Chỉ kiểm thử trong dải 10.20.0.0/24, cấm làm từ chối dịch vụ | Ghi trong ROE và phạm vi |
| Có sự cố khi đang thử | Dừng khẩn cấp, liên lạc theo kênh đã thống nhất |
🎯 Mẹo làm bài
"Chứng minh có thể khai thác" → pentest. "Liệt kê điểm yếu tự động" → quét lỗ hổng. "Vượt khóa, cổng, theo sau" → physical. "Đánh giá khả năng phát hiện và ứng phó" → defensive. "Kết hợp tất cả" → integrated. "Biết đầy đủ" → known / white box; "biết một phần" → partially known / gray box; "không biết" → unknown / black box. "Thỏa thuận về phạm vi, thời gian, kỹ thuật" → ROE. "OSINT, không tương tác trực tiếp" → trinh sát thụ động. "Quét cổng" → trinh sát chủ động. "Mô phỏng kẻ tấn công" → red; "phòng thủ" → blue; "phối hợp" → purple; "trọng tài" → white. "Ủy quyền bằng văn bản" → luôn cần.
📖 Thuật ngữ cần nhớ
| Thuật ngữ | Nghĩa |
|---|---|
| Penetration testing | Kiểm thử xâm nhập có ủy quyền. |
| Rules of engagement | Quy tắc tham gia: phạm vi, thời gian, kỹ thuật, liên lạc. |
| Scope | Phạm vi được phép kiểm thử. |
| Known, partially known, unknown environment | White box, gray box, black box. |
| Reconnaissance | Trinh sát; thụ động (OSINT) hoặc chủ động (quét). |
| Lateral movement, pivoting | Di chuyển ngang; dùng máy đã chiếm làm bàn đạp. |
| Red, blue, purple, white team | Đội tấn công, phòng thủ, phối hợp, điều phối. |
| Bug bounty | Chương trình thưởng cho người báo lỗ hổng. |
| Coordinated disclosure | Khai báo có phối hợp, cho thời gian vá. |
📌 Tóm tắt nhanh
- Pentest chứng minh khả năng khai thác; quét lỗ hổng liệt kê điểm yếu; hai việc bổ trợ.
- Loại: physical, offensive, defensive, integrated; mức hiểu biết: known, partially known, unknown.
- ROE bằng văn bản: ủy quyền, phạm vi, thời gian, kỹ thuật, liên lạc, xử lý dữ liệu; vượt phạm vi là sai nghiêm trọng.
- Giai đoạn: kế hoạch, trinh sát (thụ động, chủ động), khai thác, sau khai thác, dọn dẹp, báo cáo.
- Red, blue, purple, white team nhằm cải thiện phát hiện và ứng phó; bug bounty bổ sung cho pentest.
📝 Bài tập đánh giá
Tự chọn đáp án cho từng câu, rồi đối chiếu với phần đáp án ở cuối bài.
Câu 1. Mục đích chính của penetration testing so với quét lỗ hổng là gì?
- A. Chứng minh các điểm yếu có thể bị khai thác và đánh giá tác động thực tế
- B. Chỉ liệt kê phiên bản phần mềm đang chạy
- C. Thay thế hoàn toàn việc vá lỗi
- D. Sao lưu dữ liệu
Câu 2. Người kiểm thử nhận đầy đủ sơ đồ mạng, tài khoản và tài liệu thiết kế trước khi bắt đầu. Đây là kiểu kiểm thử nào?
- A. Unknown environment
- B. Partially known environment
- C. Known environment
- D. Passive reconnaissance
Câu 3. Tài liệu nào xác định phạm vi, thời gian, kỹ thuật được phép và cách dừng khẩn cấp của một cuộc pentest?
- A. SLA
- B. NDA
- C. Rules of engagement
- D. BIA
Câu 4. Hoạt động nào sau đây là trinh sát thụ động?
- A. Quét cổng trực tiếp lên máy chủ mục tiêu
- B. Thu thập thông tin từ nguồn công khai (OSINT) mà không tương tác trực tiếp với mục tiêu
- C. Thử đăng nhập vào cổng quản trị
- D. Gửi thư giả mạo đến nhân viên
Câu 5. Đội nào có nhiệm vụ đặt luật, điều phối và làm trọng tài trong một cuộc diễn tập đội màu?
- A. White team
- B. Red team
- C. Blue team
- D. Purple team
👉 Đáp án
Câu 1: A — Pentest chứng minh khả năng khai thác và tác động; quét lỗ hổng chỉ liệt kê điểm yếu.
Câu 2: C — Biết đầy đủ thông tin là known environment (white box).
Câu 3: C — Rules of engagement quy định phạm vi, thời gian, kỹ thuật, liên lạc và dừng khẩn cấp.
Câu 4: B — Thu thập từ nguồn công khai mà không tương tác trực tiếp với mục tiêu là trinh sát thụ động (OSINT).
Câu 5: A — White team đặt luật, điều phối và làm trọng tài.
📚 Bài viết thuộc khóa học CompTIA Security+ của VNExperts
🧭 Điều hướng
| ⬅️ Bài trước | 🏠 Mục lục khóa học | Bài kế tiếp ➡️ |
|---|---|---|
| Bài 99: Audit và assessment: đánh giá nội bộ, bên ngoài và độc lập | Mục lục khóa học CompTIA Security+ | Bài 101: Khung tham chiếu: MITRE ATT&CK, Cyber Kill Chain, Diamond Model |