CHƯƠNG 2: COMPUTER SECURITY CONCEPTS AND PRINCIPLES¤
PHẦN 1: KHÁI NIỆM BẢO MẬT MÁY TÍNH¤
1. ĐỊNH NGHĨA COMPUTER SECURITY (NIST)¤
Computer Security: "Các biện pháp và kiểm soát đảm bảo tính confidentiality, integrity và availability của tài sản hệ thống thông tin bao gồm hardware, software, firmware và thông tin đang được xử lý, lưu trữ và truyền thông"
2. MỤC TIÊU BẢO MẬT MỞ RỘNG¤
Ngoài CIA Triad, còn có 2 mục tiêu quan trọng:
1. Authenticity (Tính xác thực): - Xác minh người dùng là đúng người họ tuyên bố - Đảm bảo mỗi input đến hệ thống đến từ nguồn đáng tin cậy
2. Accountability (Tính trách nhiệm): - Ghi lại các hoạt động của người dùng - Cho phép phân tích pháp y (forensic analysis) sau này - Truy vết vi phạm bảo mật hoặc giải quyết tranh chấp giao dịch
3. CÁC KHÁI NIỆM QUAN TRỌNG¤
Vulnerability (Lỗ hổng): - Điểm yếu đã biết của tài sản (system resource) - Có thể bị khai thác bởi một hoặc nhiều kẻ tấn công
Threat (Mối đe dọa): - Sự cố mới hoặc mới phát hiện - Có khả năng gây hại cho hệ thống hoặc công ty
Risk (Rủi ro): - Tiềm năng mất mát hoặc thiệt hại - Xảy ra khi một threat khai thác vulnerability
Ví dụ: - Vulnerability: Cửa sổ không khóa - Threat: Kẻ trộm trong khu vực - Risk: Khả năng bị trộm vào nhà
Attack (Tấn công): - Threat được thực hiện (bởi threat agent hoặc adversary) - Nếu thành công → vi phạm bảo mật hoặc hậu quả đe dọa
Countermeasure (Biện pháp đối phó): - Bất kỳ phương tiện nào để đối phó với tấn công bảo mật - Lý tưởng: ngăn chặn tấn công - Nếu không thể: phát hiện → phục hồi hoặc giảm thiểu tác động
4. PHÂN LOẠI TẤN CÔNG¤
A. Theo cách thức:
1. Active Attack (Tấn công chủ động): - Cố gắng thay đổi tài nguyên hệ thống hoặc ảnh hưởng hoạt động - Liên quan đến sửa đổi data stream hoặc tạo false stream - Các loại: - Replay: Phát lại dữ liệu đã chặn - Masquerade: Giả mạo danh tính - Modification of messages: Sửa đổi thông điệp - DOS (Denial of Service): Từ chối dịch vụ
2. Passive Attack (Tấn công thụ động): - Cố gắng học hoặc sử dụng thông tin từ hệ thống - KHÔNG ảnh hưởng đến tài nguyên hệ thống - Khó phát hiện (difficult to detect) - Các loại: - Release of message contents: Tiết lộ nội dung thông điệp - Traffic analysis: Phân tích lưu lượng
B. Theo nguồn gốc: - Inside attack (Insider): Từ bên trong - Outside attack (Outsider): Từ bên ngoài
PHẦN 2: THREAT CONSEQUENCES VÀ THREAT ACTIONS¤
1. UNAUTHORIZED DISCLOSURE (Tiết lộ trái phép)¤
Định nghĩa: Entity truy cập dữ liệu mà không được ủy quyền
4 Threat Actions:
a. Exposure (Phơi bày): - Dữ liệu nhạy cảm được phát hành trực tiếp cho entity không được phép
b. Interception (Chặn giữa): - Entity không được phép truy cập trực tiếp dữ liệu nhạy cảm - Đang truyền giữa nguồn và đích được ủy quyền
c. Inference (Suy luận): - Entity không được phép truy cập gián tiếp dữ liệu nhạy cảm - Thông qua suy luận từ đặc điểm hoặc sản phẩm phụ của truyền thông
d. Intrusion (Xâm nhập): - Entity không được phép truy cập dữ liệu nhạy cảm - Bằng cách vượt qua các biện pháp bảo vệ của hệ thống
2. DECEPTION (Lừa dối)¤
Định nghĩa: Entity được ủy quyền nhận dữ liệu sai và tin là đúng
3 Threat Actions:
a. Masquerade (Giả mạo): - Entity không được phép truy cập hệ thống hoặc thực hiện hành vi độc hại - Bằng cách giả vờ là entity được ủy quyền
b. Falsification (Làm giả): - Dữ liệu sai lừa dối entity được ủy quyền
c. Repudiation (Từ chối): - Entity lừa dối entity khác - Bằng cách từ chối sai trách nhiệm cho một hành động
3. DISRUPTION (Gián đoạn)¤
Định nghĩa: Ngắt quãng hoặc ngăn chặn hoạt động đúng của dịch vụ và chức năng hệ thống
3 Threat Actions:
a. Incapacitation (Vô hiệu hóa): - Ngăn chặn hoặc gián đoạn hoạt động hệ thống - Bằng cách vô hiệu hóa thành phần hệ thống
b. Corruption (Hỏng hóc): - Thay đổi không mong muốn hoạt động hệ thống - Bằng cách sửa đổi bất lợi chức năng hoặc dữ liệu hệ thống
c. Obstruction (Cản trở): - Gián đoạn việc cung cấp dịch vụ hệ thống - Bằng cách cản trở hoạt động hệ thống
4. USURPATION (Chiếm đoạt)¤
Định nghĩa: Kiểm soát dịch vụ hoặc chức năng hệ thống bởi entity không được ủy quyền
2 Threat Actions:
a. Misappropriation (Chiếm đoạt trái phép): - Entity giả định kiểm soát logic hoặc vật lý không được phép - Đối với tài nguyên hệ thống
b. Misuse (Sử dụng sai mục đích): - Làm cho thành phần hệ thống thực hiện chức năng hoặc dịch vụ - Có hại cho bảo mật hệ thống
PHẦN 3: THREATS VÀ ASSETS¤
BẢNG PHÂN LOẠI THREATS THEO ASSETS¤
1. HARDWARE (Phần cứng):
| CIA | Threat Example |
|---|---|
| Availability | Thiết bị bị đánh cắp hoặc vô hiệu hóa → từ chối dịch vụ |
| Confidentiality | USB drive không mã hóa bị đánh cắp |
| Integrity | - |
2. SOFTWARE (Phần mềm):
| CIA | Threat Example |
|---|---|
| Availability | Chương trình bị xóa → từ chối truy cập cho người dùng |
| Confidentiality | Bản sao không được phép của phần mềm được tạo |
| Integrity | Chương trình đang hoạt động bị sửa đổi → lỗi khi thực thi hoặc thực hiện tác vụ không mong muốn |
3. DATA (Dữ liệu):
| CIA | Threat Example |
|---|---|
| Availability | Files bị xóa → từ chối truy cập cho người dùng |
| Confidentiality | Đọc dữ liệu không được phép |
| Integrity | Files hiện có bị sửa đổi hoặc files mới bị giả mạo |
4. COMMUNICATION LINES AND NETWORKS:
| CIA | Threat Example |
|---|---|
| Availability | Messages bị phá hủy hoặc xóa; Đường truyền/mạng không khả dụng |
| Confidentiality | Messages bị đọc; Traffic pattern bị quan sát |
| Integrity | Messages bị sửa đổi, trзадержка, sắp xếp lại hoặc nhân đôi; Messages giả được tạo |
PHẦN 4: SECURITY DESIGN PRINCIPLES¤
6 NGUYÊN TẮC THIẾT KẾ BẢO MẬT QUAN TRỌNG¤
1. Economy of Mechanism (Tiết kiệm cơ chế): - Thiết kế đơn giản, nhỏ gọn - Càng đơn giản → càng ít lỗi - Ví dụ: Sử dụng firewall rules đơn giản thay vì phức tạp
2. Fail-safe Defaults (Mặc định an toàn khi lỗi): - Quyền truy cập dựa trên permission (cho phép) chứ không phải exclusion (loại trừ) - Mặc định: DENY tất cả, chỉ ALLOW khi cần - Ví dụ: Firewall mặc định BLOCK tất cả, chỉ mở port cần thiết
3. Complete Mediation (Trung gian hoàn toàn): - Kiểm tra quyền truy cập cho MỌI lần truy cập tài nguyên - KHÔNG cache quyết định kiểm tra - Ví dụ: Mỗi lần đọc file đều kiểm tra quyền, không chỉ lần đầu
4. Open Design (Thiết kế mở): - Bảo mật KHÔNG phụ thuộc vào bí mật của thiết kế - Chỉ phụ thuộc vào bí mật của key/password - Ví dụ: Thuật toán mã hóa AES được công khai nhưng vẫn an toàn
5. Separation of Privilege (Phân tách đặc quyền): - Yêu cầu nhiều điều kiện để cấp quyền - Không phụ thuộc vào một điều kiện duy nhất - Ví dụ: 2FA - cần cả password VÀ OTP code
6. Least Privilege (Đặc quyền tối thiểu): - Mỗi chương trình/người dùng chỉ có quyền tối thiểu cần thiết - Để hoàn thành công việc - Ví dụ: Web server chỉ có quyền đọc web files, không có quyền write system files
BÀI TẬP QUAN TRỌNG: LỖI BẢO MẬT¤
Code có lỗi:
DWORD dwRet = IsAccessAllowed(...);
if (dwRet == ERROR_ACCESS_DENIED) {
// Security check failed
// Inform user that access is denied
} else {
// Security check OK.
// Do something
}
Lỗi bảo mật:
- Vi phạm nguyên tắc Fail-safe Defaults
- Nếu IsAccessAllowed() trả về giá trị KHÁC ERROR_ACCESS_DENIED (ví dụ: error code khác, NULL, exception)
- Code sẽ nhảy vào nhánh else → CHO PHÉP truy cập
- SAI! Nên mặc định DENY trừ khi rõ ràng ALLOW
Code đúng:
DWORD dwRet = IsAccessAllowed(...);
if (dwRet == ERROR_SUCCESS) {
// Security check OK.
// Do something
} else {
// Security check failed (ANY other value)
// Inform user that access is denied
}
Giải thích:
- Chỉ cho phép khi dwRet == ERROR_SUCCESS (rõ ràng thành công)
- Tất cả các trường hợp khác → DENY
- Đúng với nguyên tắc Fail-safe Defaults
PHẦN 5: SCOPE OF COMPUTER SECURITY¤
Computer Security bao gồm nhiều lĩnh vực: - Network Security (trọng tâm khóa học NT140) - Internet Security - Database Security - Application Security - Operating System Security - Physical Security - Human Factors
Khóa NT140 tập trung vào: NETWORK SECURITY
NGÂN HÀNG CÂU HỎI CHƯƠNG 2¤
PHẦN 1: KHÁI NIỆM CƠ BẢN¤
Câu 1: Computer Security theo NIST đảm bảo những gì?
A. Chỉ bảo vệ hardware
B. Confidentiality, Integrity, Availability của tài sản hệ thống thông tin ✓
C. Chỉ bảo vệ software
D. Chỉ bảo vệ network
Câu 2: Authenticity trong bảo mật có nghĩa là?
A. Ghi lại mọi hoạt động của người dùng
B. Xác minh người dùng là đúng người họ tuyên bố và input đến từ nguồn tin cậy ✓
C. Đảm bảo hệ thống luôn sẵn sàng
D. Mã hóa toàn bộ dữ liệu
Câu 3: Accountability trong bảo mật phục vụ mục đích gì?
A. Ngăn chặn tấn công
B. Mã hóa dữ liệu
C. Ghi lại hoạt động để phân tích pháp y sau này và truy vết vi phạm ✓
D. Tăng tốc độ hệ thống
Câu 4: Vulnerability là gì?
A. Một cuộc tấn công đang diễn ra
B. Điểm yếu đã biết của tài sản có thể bị khai thác ✓
C. Biện pháp phòng thủ
D. Loại virus mới
Câu 5: Threat khác với Vulnerability như thế nào?
A. Threat và Vulnerability giống nhau
B. Threat là sự cố mới có khả năng gây hại; Vulnerability là điểm yếu đã biết ✓
C. Threat ít nguy hiểm hơn Vulnerability
D. Threat chỉ có ở phần mềm
Câu 6: Risk được định nghĩa như thế nào?
A. Lỗ hổng trong hệ thống
B. Cuộc tấn công thành công
C. Tiềm năng mất mát hoặc thiệt hại khi threat khai thác vulnerability ✓
D. Biện pháp bảo vệ
Câu 7: Cho ví dụ: Cửa sổ không khóa, kẻ trộm trong khu vực, khả năng bị trộm. Đâu là Vulnerability?
A. Kẻ trộm trong khu vực
B. Cửa sổ không khóa ✓
C. Khả năng bị trộm
D. Cảnh sát tuần tra
Câu 8: Trong ví dụ câu 7, đâu là Threat?
A. Cửa sổ không khóa
B. Kẻ trộm trong khu vực ✓
C. Nhà có hệ thống báo động
D. Cửa được làm bằng gỗ
Câu 9: Trong ví dụ câu 7, đâu là Risk?
A. Cửa sổ không khóa
B. Kẻ trộm trong khu vực
C. Khả năng bị trộm vào nhà ✓
D. Hàng xóm canh giúp
Câu 10: Attack là gì?
A. Lỗ hổng trong hệ thống
B. Threat được thực hiện bởi threat agent, nếu thành công dẫn đến vi phạm bảo mật ✓
C. Biện pháp phòng thủ
D. Phần mềm diệt virus
PHẦN 2: PHÂN LOẠI TẤN CÔNG¤
Câu 11: Active Attack có đặc điểm gì?
A. Không ảnh hưởng đến tài nguyên hệ thống
B. Cố gắng thay đổi tài nguyên hệ thống hoặc sửa đổi data stream ✓
C. Chỉ nghe lén thông tin
D. Không thể phát hiện được
Câu 12: Passive Attack có đặc điểm gì?
A. Sửa đổi dữ liệu
B. Phá hủy hệ thống
C. Cố gắng học hoặc sử dụng thông tin KHÔNG ảnh hưởng tài nguyên, khó phát hiện ✓
D. Dễ dàng phát hiện
Câu 13: Loại tấn công nào KHÓ PHÁT HIỆN nhất?
A. Active Attack
B. Passive Attack ✓
C. DDoS Attack
D. Phishing Attack
Câu 14: Replay attack thuộc loại nào?
A. Active Attack ✓
B. Passive Attack
C. Inside Attack
D. Không phải attack
Câu 15: Traffic analysis thuộc loại nào?
A. Active Attack
B. Passive Attack ✓
C. Physical Attack
D. Social Engineering
Câu 16: Masquerade attack là gì?
A. Phân tích lưu lượng mạng
B. Giả mạo danh tính để truy cập hệ thống ✓
C. Từ chối dịch vụ
D. Đánh cắp phần cứng
Câu 17: DOS (Denial of Service) thuộc loại attack nào?
A. Passive Attack
B. Active Attack ✓
C. Không phải attack
D. Chỉ là warning
Câu 18: Release of message contents thuộc loại attack nào?
A. Active Attack
B. Passive Attack ✓
C. Physical Attack
D. Malware
Câu 19: Inside Attack khác Outside Attack như thế nào?
A. Inside Attack nguy hiểm hơn vì có thể bypass nhiều security controls
B. Outside Attack dễ phát hiện hơn
C. Inside Attack đến từ bên trong tổ chức; Outside Attack từ bên ngoài ✓
D. Cả A và C đúng
Câu 20: Countermeasure là gì?
A. Một loại attack mới
B. Biện pháp đối phó với security attack ✓
C. Lỗ hổng bảo mật
D. Phần mềm độc hại
PHẦN 3: THREAT CONSEQUENCES¤
Câu 21: Unauthorized Disclosure có nghĩa là?
A. Hệ thống bị gián đoạn
B. Dữ liệu bị sửa đổi
C. Entity truy cập dữ liệu mà không được ủy quyền ✓
D. Hệ thống bị chiếm quyền kiểm soát
Câu 22: Exposure trong Unauthorized Disclosure là gì?
A. Chặn dữ liệu đang truyền
B. Dữ liệu nhạy cảm được phát hành TRỰC TIẾP cho entity không được phép ✓
C. Suy luận ra thông tin
D. Xâm nhập hệ thống
Câu 23: Interception khác với Exposure như thế nào?
A. Giống nhau hoàn toàn
B. Interception chặn dữ liệu ĐANG TRUYỀN giữa nguồn và đích; Exposure là phát hành trực tiếp ✓
C. Interception nguy hiểm hơn
D. Exposure khó thực hiện hơn
Câu 24: Inference attack là gì?
A. Đánh cắp trực tiếp dữ liệu
B. Chặn dữ liệu đang truyền
C. Truy cập GIÁN TIẾP dữ liệu nhạy cảm bằng cách suy luận từ đặc điểm hoặc sản phẩm phụ ✓
D. Xâm nhập hệ thống
Câu 25: Intrusion trong Unauthorized Disclosure nghĩa là?
A. Chặn dữ liệu
B. Suy luận thông tin
C. Truy cập dữ liệu nhạy cảm bằng cách VƯỢT QUA các biện pháp bảo vệ ✓
D. Phát hành trực tiếp dữ liệu
Câu 26: Deception trong threat consequences có nghĩa là?
A. Đánh cắp dữ liệu
B. Entity được ủy quyền nhận dữ liệu SAI và tin là ĐÚNG ✓
C. Gián đoạn dịch vụ
D. Chiếm quyền kiểm soát
Câu 27: Masquerade trong Deception là gì?
A. Làm giả dữ liệu
B. Entity không được phép giả vờ là entity được ủy quyền để truy cập ✓
C. Từ chối trách nhiệm
D. Phá hủy hệ thống
Câu 28: Falsification có nghĩa là?
A. Giả mạo danh tính
B. Dữ liệu sai lừa dối entity được ủy quyền ✓
C. Từ chối hành động
D. Chặn dữ liệu
Câu 29: Repudiation attack là gì?
A. Giả mạo danh tính
B. Làm giả dữ liệu
C. Entity từ chối SAI trách nhiệm cho một hành động đã thực hiện ✓
D. Phá hủy bằng chứng
Câu 30: Disruption trong threat consequences nghĩa là?
A. Đánh cắp dữ liệu
B. Lừa dối người dùng
C. Ngắt quãng hoặc ngăn chặn hoạt động đúng của dịch vụ và chức năng ✓
D. Chiếm quyền kiểm soát
Câu 31: Incapacitation trong Disruption là gì?
A. Sửa đổi dữ liệu
B. Ngăn chặn hoặc gián đoạn hoạt động bằng cách VÔ HIỆU HÓA thành phần hệ thống ✓
C. Cản trở cung cấp dịch vụ
D. Đánh cắp tài nguyên
Câu 32: Corruption trong Disruption có nghĩa là?
A. Vô hiệu hóa hệ thống
B. Thay đổi không mong muốn bằng cách SỬA ĐỔI BẤT LỢI chức năng hoặc dữ liệu ✓
C. Cản trở dịch vụ
D. Phát hành dữ liệu
Câu 33: Obstruction trong Disruption là gì?
A. Vô hiệu hóa thành phần
B. Sửa đổi dữ liệu
C. Gián đoạn cung cấp dịch vụ bằng cách CẢN TRỞ hoạt động hệ thống ✓
D. Đánh cắp tài nguyên
Câu 34: Usurpation có nghĩa là?
A. Đánh cắp dữ liệu
B. Gián đoạn dịch vụ
C. Kiểm soát dịch vụ hoặc chức năng hệ thống bởi entity KHÔNG ĐƯỢC ỦY QUYỀN ✓
D. Lừa dối người dùng
Câu 35: Misappropriation trong Usurpation là gì?
A. Sử dụng sai mục đích
B. Entity giả định kiểm soát logic hoặc vật lý KHÔNG ĐƯỢC PHÉP đối với tài nguyên ✓
C. Phá hủy tài nguyên
D. Đánh cắp thông tin
Câu 36: Misuse trong Usurpation có nghĩa là?
A. Chiếm đoạt tài nguyên
B. Làm cho thành phần hệ thống thực hiện chức năng CÓ HẠI cho bảo mật ✓
C. Vô hiệu hóa hệ thống
D. Sửa đổi dữ liệu
PHẦN 4: THREATS VÀ ASSETS¤
Câu 37: Threat đối với HARDWARE về Availability là gì?
A. USB không mã hóa bị đánh cắp
B. Thiết bị bị đánh cắp hoặc vô hiệu hóa, từ chối dịch vụ ✓
C. Dữ liệu bị sửa đổi
D. Phần mềm bị xóa
Câu 38: Threat đối với SOFTWARE về Confidentiality là gì?
A. Chương trình bị xóa
B. Bản sao không được phép của phần mềm được tạo ✓
C. Chương trình bị sửa đổi
D. Phần cứng bị hỏng
Câu 39: Threat đối với SOFTWARE về Integrity là gì?
A. Phần mềm bị đánh cắp
B. Chương trình bị sửa đổi để lỗi khi thực thi hoặc thực hiện tác vụ không mong muốn ✓
C. Chương trình bị xóa
D. Mã nguồn bị leak
Câu 40: Threat đối với DATA về Availability là gì?
A. Dữ liệu bị đọc trái phép
B. Files bị xóa, từ chối truy cập cho người dùng ✓
C. Dữ liệu bị sửa đổi
D. Dữ liệu bị mã hóa
Câu 41: Threat đối với DATA về Integrity là gì?
A. Files bị xóa
B. Dữ liệu bị đọc trái phép
C. Files hiện có bị sửa đổi hoặc files mới bị giả mạo ✓
D. Ổ cứng bị hỏng
Câu 42: Threat đối với COMMUNICATION LINES về Confidentiality là gì?
A. Messages bị xóa
B. Messages bị đọc; Traffic pattern bị quan sát ✓
C. Messages bị sửa đổi
D. Mạng bị ngắt kết nối
Câu 43: Threat đối với COMMUNICATION LINES về Integrity là gì?
A. Messages bị đọc
B. Đường truyền bị cắt
C. Messages bị sửa đổi, delay, reorder, duplicate; Messages giả được tạo ✓
D. Bandwidth bị giới hạn
Câu 44: Threat đối với COMMUNICATION LINES về Availability là gì?
A. Messages bị đọc
B. Messages bị phá hủy hoặc xóa; Đường truyền/mạng không khả dụng ✓
C. Messages bị sửa đổi
D. Traffic bị phân tích
PHẦN 5: SECURITY DESIGN PRINCIPLES¤
Câu 45: Economy of Mechanism có nghĩa là?
A. Thiết kế phức tạp để khó hack
B. Thiết kế đơn giản, nhỏ gọn - càng đơn giản càng ít lỗi ✓
C. Sử dụng nhiều lớp bảo mật
D. Mã hóa mọi thứ
Câu 46: Fail-safe Defaults yêu cầu điều gì?
A. Cho phép tất cả, chặn một số
B. Quyền truy cập dựa trên permission, mặc định DENY, chỉ ALLOW khi cần ✓
C. Không có quy tắc mặc định
D. Luôn cho phép admin
Câu 47: Ví dụ nào thể hiện Fail-safe Defaults?
A. Firewall mở tất cả port
B. Firewall mặc định BLOCK tất cả, chỉ mở port cần thiết ✓
C. Cho phép tất cả user truy cập
D. Không có password
Câu 48: Complete Mediation có nghĩa là?
A. Chỉ kiểm tra lần đầu tiên
B. Cache quyết định để tăng tốc
C. Kiểm tra quyền truy cập cho MỌI lần truy cập tài nguyên, KHÔNG cache ✓
D. Tin tưởng người dùng đã đăng nhập
Câu 49: Ví dụ nào vi phạm Complete Mediation?
A. Kiểm tra password mỗi lần login
B. Chỉ kiểm tra quyền đọc file ở lần đầu, sau đó không kiểm tra nữa ✓
C. Yêu cầu 2FA mỗi lần
D. Log tất cả hoạt động
Câu 50: Open Design nghĩa là gì?
A. Public source code
B. Không cần mật khẩu
C. Bảo mật KHÔNG phụ thuộc vào bí mật thiết kế, CHỈ phụ thuộc vào key/password ✓
D. Ai cũng có thể truy cập
Câu 51: Ví dụ nào thể hiện Open Design?
A. Security through obscurity
B. Thuật toán AES được công khai nhưng vẫn an toàn nhờ key bí mật ✓
C. Giấu cách hoạt động của hệ thống
D. Không công bố lỗ hổng
Câu 52: Separation of Privilege yêu cầu gì?
A. Chỉ cần một password
B. Yêu cầu NHIỀU điều kiện để cấp quyền, không phụ thuộc vào một điều kiện duy nhất ✓
C. Phân chia quyền cho nhiều người
D. Tách biệt admin và user
Câu 53: Ví dụ nào thể hiện Separation of Privilege?
A. Chỉ cần password
B. 2FA - cần cả password VÀ OTP code ✓
C. Một chữ ký digital
D. Một khóa mã hóa
Câu 54: Least Privilege có nghĩa là?
A. Cho tất cả quyền admin
B. Không cho quyền gì
C. Mỗi chương trình/người dùng CHỈ có quyền TỐI THIỂU cần thiết để hoàn thành công việc ✓
D. Quyền bằng nhau cho tất cả
Câu 55: Ví dụ nào thể hiện Least Privilege?
A. Web server có full quyền admin
B. Web server chỉ có quyền đọc web files, không có quyền write system files ✓
C. User có quyền xóa system files
D. Tất cả user đều là admin
PHẦN 6: BÀI TẬP PHÂN TÍCH CODE¤
Câu 56: Code sau có lỗi bảo mật gì?
A. Không có lỗi
B. Thiếu mã hóa
C. Vi phạm Fail-safe Defaults: nếu dwRet là giá trị khác ERROR_ACCESS_DENIED (như error khác, NULL) vẫn cho phép truy cập ✓
D. Quá phức tạp
Câu 57: Tại sao code trên không an toàn?
A. Thiếu encryption
B. Password yếu
C. Mặc định ALLOW khi có bất kỳ giá trị nào KHÁC ERROR_ACCESS_DENIED, không đúng Fail-safe ✓
D. Không log hoạt động
Câu 58: Code nào sau đây an toàn hơn?
A. if (dwRet != ERROR_SUCCESS) deny else allow
B. if (dwRet == ERROR_SUCCESS) allow else deny ✓
C. if (dwRet == ERROR_ACCESS_DENIED) deny else allow
D. Cả A và B đều đúng
Câu 59: Nguyên tắc nào bị vi phạm trong code lỗi?
A. Economy of Mechanism
B. Fail-safe Defaults ✓
C. Open Design
D. Least Privilege
Câu 60: Cách sửa đúng là?
A. Thêm nhiều điều kiện if-else
B. Sử dụng try-catch
C. Chỉ ALLOW khi dwRet == ERROR_SUCCESS (thành công rõ ràng), tất cả còn lại DENY ✓
D. Xóa bỏ kiểm tra access
ĐÁP ÁN NHANH¤
1.B 2.B 3.C 4.B 5.B 6.C 7.B 8.B 9.C 10.B 11.B 12.C 13.B 14.A 15.B 16.B 17.B 18.B 19.D 20.B 21.C 22.B 23.B 24.C 25.C 26.B 27.B 28.B 29.C 30.C 31.B 32.B 33.C 34.C 35.B 36.B 37.B 38.B 39.B 40.B 41.C 42.B 43.C 44.B 45.B 46.B 47.B 48.C 49.B 50.C 51.B 52.B 53.B 54.C 55.B 56.C 57.C 58.B 59.B 60.C