Skip to content

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:

C
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:

C
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ì?

C
if (dwRet == ERROR_ACCESS_DENIED) {
    // Deny access
} else {
    // Allow access
}

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