Tổng quan về giáo trình

Introduction to Computer Security (xuất bản bởi Addison-Wesley / Pearson Education, ISBN: 0-321-24744-2) của tác giả Matt Bishop (Đại học California, Davis), với sự đóng góp chuyên môn của Elisabeth Sullivan trong lĩnh vực bảo đảm hệ thống (Assurance), là tài liệu học thuật giảng dạy về an toàn hệ thống máy tính ở cấp độ đại học và sau đại học thuộc khối ngành Khoa học Máy tính và Kỹ thuật Thông tin.

Giáo trình được biên soạn nhằm đáp ứng các mục tiêu học tập cốt lõi:

  • Phân tích và làm rõ ba thuộc tính an ninh nền tảng: Tính bảo mật (Confidentiality), Tính toàn vẹn (Integrity), và Tính sẵn sàng (Availability).
  • Phân biệt ranh giới giữa chính sách an ninh (Security Policy) – tuyên ngôn xác định các trạng thái được phép và không được phép – với cơ chế an ninh (Security Mechanism) – các công cụ, thủ tục thực thi chính sách.
  • Xác định vị trí của mật mã học như một cơ chế thành phần trong bức tranh an ninh tổng thể, thay vì đồng nhất an ninh máy tính với mật mã học.
  • Khảo sát các giới hạn lý thuyết nền tảng (tính bất khả định của bài toán an toàn tổng quát - Undecidability of the safety problem) và phương pháp chuyển hóa các mô hình toán học thành cơ chế kỹ thuật thực tế.

Cấu trúc giáo trình gồm 29 chương được tổ chức theo tiến trình logic: từ tổng quan khái niệm, mô hình chính sách truy cập, cơ sở mật mã, nguyên lý thiết kế hệ thống, kiểm soát dòng thông tin, quy chuẩn bảo đảm và đánh giá (Assurance & Evaluation), đến phân tích mã độc, lỗ hổng phần mềm, kiểm toán, phát hiện xâm nhập và an ninh mạng. Giáo trình là phiên bản rút gọn từ công trình Computer Security: Art and Science của cùng tác giả, lược bớt các chứng minh toán học hình thức phức tạp để tập trung vào bản chất khái niệm và khả năng ứng dụng thực tế.


Nội dung kiến thức cốt lõi

                             [ YÊU CẦU AN NINH HỆ THỐNG ]
     [ Chính Sách An Ninh (Policy) ]                 [ Giả Định & Tin Cậy (Trust) ]
     - Trạng thái hợp lệ (Q)                         - Ranh giới tin cậy
     - Mô hình: BLP, Biba, Clark-Wilson              - Phân tích rủi ro & Chi phí
                         [ Cơ Chế Thực Thi (Mechanism) ]
                         - Độ chính xác: R ⊆ Q (Secure), R = Q (Precise)
                         - Mật mã học, Quản lý khóa (X.509, PGP)
                         - Kiểm soát truy cập: ACM, ACL, Capabilities, RBAC
                         - Nguyên lý thiết kế: Saltzer & Schroeder (1975)
    [ Đánh Giá & Bảo Đảm (Assurance) ]              [ Phòng Thủ & Phân Tích Thực Chiến ]
    - Vòng đời phần mềm (Waterfall)                 - Mã độc & Confinement (Covert Channels)
    - Tiêu chuẩn: TCSEC, CC, SSE-CMM                - Phân tích lỗ hổng: RISOS, NRL
    - Kiểm định hình thức & Kiểm thử                - Kiểm toán (LAFS) & IDS (NSM, DIDS, AAFID)
                     [ Ứng Dụng Đa Tầng: Mạng - Hệ Thống - Mã Nguồn ]
                     - Cấu hình Tường lửa / DMZ (Mail, Web, DNS)
                     - Lập trình an toàn: Tránh Race Condition, Buffer Overflow

Các chương/chủ đề chính

  1. Tổng quan và Phân loại Đe dọa (Chương 1): Thiết lập mô hình CIA; hệ thống hóa 4 nhóm đe dọa tổng quát theo Shirey (Disclosure, Deception, Disruption, Usurpation) cùng các dạng tấn công cụ thể như Snooping, Modification, Masquerading, Spoofing, Repudiation, Delay và Denial of Service; định nghĩa cơ chế an ninh an toàn ($R \subseteq Q$), chính xác ($R = Q$) và mở rộng ($R \not\subseteq Q$).
  2. Mô hình và Chính sách Kiểm soát Truy cập (Chương 2 – 7): Khảo sát Ma trận kiểm soát truy cập (Access Control Matrix); bài toán an toàn tổng quát (Safety Problem); phân tích chi tiết các mô hình chính sách bảo mật Bell-LaPadula, mô hình toàn vẹn Biba, mô hình Clark-Wilson, mô hình hỗn hợp Chinese Wall, chính sách hệ thống thông tin y tế (Clinical Information Systems), ORCON và kiểm soát truy cập dựa trên vai trò (RBAC).
  3. Mật mã học, Quản lý khóa và Giao thức (Chương 8 – 11): Nguyên lý mật mã cổ điển, DES, mã hóa khóa công khai; cơ sở hạ tầng chứng thực X.509 và PGP; giao thức an ninh mạng PEM, IPsec (gồm AH và ESP); các cơ chế xác thực mật khẩu, One-Time Passwords và Challenge-Response.
  4. Nguyên lý Thiết kế và Cơ chế Hệ thống (Chương 12 – 16): 8 nguyên lý thiết kế an ninh của Saltzer và Schroeder (1975); biểu diễn danh tính; cơ chế Access Control Lists (ACLs), Capabilities, cơ chế phân tầng (Rings); mô hình kiểm soát dòng thông tin (Information Flow Models), máy phân dấu dữ liệu của Fenton (Fenton's Data Mark Machine); bài toán giam cầm (Confinement Problem) và kênh truyền ngầm (Covert Channels).
  5. Bảo đảm và Đánh giá Hệ thống (Chương 17 – 18): Khái niệm Assurance; phân tích bảo đảm trong vòng đời phần mềm (Waterfall Model); các tiêu chuẩn đánh giá hình thức gồm TCSEC (Orange Book), FIPS 140-2, Common Criteria (ISO/IEC 15408) với các cấp độ EAL, và mô hình SSE-CMM.
  6. Mã độc, Phân tích Lỗ hổng, Kiểm toán và Giám sát (Chương 19 – 22): Boot sector infectors, vi khuẩn (Bacteria), mã tự chứng minh (Proof-Carrying Code); phương pháp luận Flaw Hypothesis và các phân loại lỗ hổng RISOS, Protection Analysis (PA), NRL; kiến trúc hệ thống kiểm toán (NFS v2, LAFS); hệ thống phát hiện xâm nhập (NSM, DIDS, AAFID).
  7. Triển khai Thực tế và Lập trình An toàn (Chương 23 – 26): Thiết kế kiến trúc mạng phòng thủ đa tầng, cấu hình tường lửa và vùng mạng DMZ (Web, Mail, DNS); an ninh cấp hệ thống và người dùng; các lỗi lập trình bảo mật điển hình như tràn bộ đệm (Buffer Overflow trong fingerd), điều kiện tranh định (Race Conditions), xử lý lỗi và xác thực dữ liệu đầu vào.
  8. Phụ lục Toán học và Kiến trúc Ảo hóa (Chương 27 – 29): Lý thuyết dàn (Lattices), Thuật toán Euclid mở rộng ứng dụng trong mật mã modulo ($ax \equiv 1 \pmod n$), và cấu trúc giám sát máy ảo (Virtual Machine Monitor - VMM).

Kiến thức nền tảng được xây dựng

  • Cơ sở lý thuyết: Cung cấp khung lý thuyết trạng thái chuyển đổi (Protection State Transitions) và chứng minh tính bất khả quyết của bài toán kiểm tra độ an toàn tổng quát (Harrison-Ruzzo-Ullman context).
  • Nguyên lý cốt lõi: Bộ 8 nguyên lý Saltzer & Schroeder (Least Privilege, Fail-Safe Defaults, Economy of Mechanism, Complete Mediation, Open Design, Separation of Privilege, Least Common Mechanism, Psychological Acceptability).
  • Khung tiêu chuẩn: Các mô hình chính sách toán học (Lattice-based Access Control, Biba, Bell-LaPadula) và các bộ tiêu chuẩn kiểm định quốc tế (Common Criteria, TCSEC).

Kỹ năng phát triển

  • Phân tích kỹ thuật: Phân tích rủi ro (Risk Analysis), đánh giá chi phí - lợi ích (Cost-Benefit Analysis), phát hiện điểm yếu trong kiến trúc phân quyền và dòng thông tin.
  • Kỹ năng thực hành: Cấu hình danh sách kiểm soát quyền (ACL), thiết kế phân vùng mạng an toàn (DMZ, Firewalls), kiểm toán dấu vết hệ thống (System Auditing) và thiết kế phần mềm hạn chế lỗi quản lý tài nguyên.

Phương pháp giảng dạy và học tập

Giáo trình áp dụng phương pháp sư phạm tiếp cận theo thứ tự logic 4 bước:

$$\text{Khái niệm/Định lý} \longrightarrow \text{Mô hình Chính sách} \longrightarrow \text{Cơ chế Thực thi} \longrightarrow \text{Đánh giá/Ứng dụng}$$

Cách tiếp cận này yêu cầu người học trước hết phải xác định rõ ràng giả định (Assumptions) và ranh giới tin cậy (Trust) của môi trường hoạt động trước khi lựa chọn bất kỳ giải pháp kỹ thuật nào.

+-------------------------------------------------------------------------+
|                  TIẾN TRÌNH SƯ PHẠM TRONG MỖI CHỦ ĐỀ                    |
+-------------------------------------------------------------------------+
|  1. XÁC ĐỊNH MỤC TIÊU VÀ GIẢ ĐỊNH                                       |
|     - Thiết lập biên giới tin cậy (Trust Boundary)                      |
|     - Mô hình hóa rủi ro và tổn thất (Cost-Benefit & Risk Analysis)     |
|                                                                         |
|  2. ĐẶC TẢ CHÍNH SÁCH HỌC THUẬT (FORMAL / INFORMAL SPECIFICATION)       |
|     - Phân định trạng thái: Được phép (Secure) / Không được phép        |
|     - Áp dụng mô hình chuẩn: Bell-LaPadula, Biba, Clark-Wilson, RBAC... |
|                                                                         |
|  3. XÂY DỰNG CƠ CHẾ KỸ THUẬT (MECHANISM IMPLEMENTATION)                 |
|     - Hiện thực hóa qua Access Control Matrix, ACL, Crypto, IPsec       |
|     - Tuân thủ 8 nguyên tắc thiết kế của Saltzer & Schroeder            |
|                                                                         |
|  4. KIỂM CHỨNG & PHÂN TÍCH CA ĐIỂN HÌNH (CASE STUDY & ASSURANCE)         |
|     - Đánh giá theo tiêu chuẩn: TCSEC, Common Criteria, SSE-CMM         |
|     - Kiểm nghiệm qua các sự cố thực tế: Morris Worm, fingerd, xterm... |
+-------------------------------------------------------------------------+

Tài liệu tích hợp các sự kiện lịch sử và trường hợp điển hình thực tế làm phương tiện minh họa:

  • Phân tích sự cố: Khảo sát cuộc tấn công của Internet Worm năm 1988 (Morris Worm), việc sử dụng công cụ bắt gói tin (Sniffers) năm 1993, vụ theo dõi và bắt giữ kẻ tấn công hệ thống của Tsutomu Shimomura (1995).
  • Phân tích ca nghiên cứu hệ thống: Phân tích kỹ thuật xâm nhập vào hệ thống Michigan Terminal System, Burroughs, UNIX, và Windows NT; mổ xẻ lỗi ghi tệp bản ghi của xterm và lỗ hổng tràn bộ đệm trong trình dịch vụ fingerd.
  • Nghiên cứu chính sách thực tế: Triển khai chính sách thư điện tử và quản lý máy tính tại Đại học California, Davis (UC Davis); mô hình gán nhãn điều khiển truy cập bắt buộc (MAC) trên hệ thống Data General B2 UNIX.

Mỗi chương kết thúc bằng phần tóm tắt nội dung trọng tâm và danh mục tài liệu đọc thêm (Further Reading) trích dẫn các công trình nghiên cứu gốc, hỗ trợ định hướng tự học và nghiên cứu chuyên sâu.


Điểm nổi bật và cập nhật

  • Quan hệ với ấn bản toàn văn (Computer Security: Art and Science): Tác phẩm giữ lại toàn bộ khung lý thuyết nền tảng, hệ thống mô hình và các ca nghiên cứu thực tế, nhưng lược bỏ phần lớn các chứng minh hình thức mang tính toán học thuần túy (như các mô hình bất khả suy diễn - Nondeducibility, tính không can thiệp - Noninterference). Điều này tạo điều kiện tiếp cận thuận lợi cho sinh viên đại học và kỹ sư thực hành mà không làm mất đi tính chặt chẽ khoa học.
  • Tích hợp tiêu chuẩn bảo đảm hệ thống: Khảo sát đầy đủ quá trình phát triển của các khung đánh giá an ninh từ TCSEC (Orange Book), FIPS 140-2 đến Common Criteria (với các cấu trúc Protection Profiles, Security Targets, EALs) và mô hình trưởng thành năng lực an ninh hệ thống SSE-CMM.
  • Cập nhật vấn đề an ninh hiện đại: Bổ sung các phân tích về giao thức mạng nâng cao (IPsec, PEM), an ninh định danh trên World Wide Web (DNS vulnerabilities, Cookie, trạng thái phiên, tính ẩn danh) và các công nghệ mới nổi tại thời điểm biên soạn như mã tự mang chứng minh (Proof-Carrying Code).
  • Đóng góp chuyên gia về Assurance: Toàn bộ phần bảo đảm hệ thống (Chương 17 và 18) do chuyên gia Elisabeth Sullivan trực tiếp biên soạn, kết hợp kinh nghiệm thực tế về quản lý và đánh giá mức độ tin cậy của phần mềm công nghiệp.

Đối tượng sử dụng giáo trình

Đối tượng Yêu cầu tiên quyết (Prerequisites) Mục đích & Phương thức sử dụng
Sinh viên Đại học (Năm 3, 4 ngành KHMT, ATTT, CNTT) - Kiến thức về Hệ điều hành (tiến trình, quản lý bộ nhớ)
- Kiến thức Mạng máy tính cơ bản (TCP/IP)
- Kiến thức cấu trúc dữ liệu và giải thuật
Sử dụng làm tài liệu học tập chính cho các học phần: An toàn thông tin, An ninh mạng, Quản lý đặc quyền hệ thống.
Học viên Cao học (Thạc sĩ KHMT, Kỹ thuật Phần mềm) - Toán học rời rạc, Đại số cơ bản (Logic vị từ, Lý thuyết dàn)
- Nền tảng phân tích mã nguồn và kiến trúc hệ thống
Khai thác các mô hình chính sách toán học (BLP, Biba, Clark-Wilson), các bài toán giới hạn an toàn và tiêu chuẩn đánh giá Common Criteria.
Giảng viên - Chuyên môn về Khoa học Máy tính hoặc An ninh mạng Làm khung chuẩn để xây dựng đề cương bài giảng, thiết kế bài tập phân tích tình huống (Case Studies) và đề tài kiểm tra.
Kỹ sư / Chuyên viên Thực hành (Practitioners) - Kinh nghiệm quản trị hệ thống, phát triển phần mềm hoặc an ninh mạng Sử dụng làm tài liệu tham khảo kỹ thuật để thiết kế kiến trúc phân quyền, xây dựng quy chuẩn DMZ, phân tích lỗi mã nguồn và thẩm định an toàn hệ thống.

Câu hỏi thường gặp

1. Giáo trình này phù hợp với ai?

Giáo trình được thiết kế cho sinh viên đại học năm cuối, học viên cao học chuyên ngành Khoa học Máy tính, An toàn Thông tin, cũng như các kỹ sư phần mềm và chuyên viên quản trị hệ thống cần nắm vững bản chất kiến trúc an ninh thay vì chỉ sử dụng các công cụ cấu hình bề mặt.

2. Cần kiến thức nền nào để học?

Người học cần có kiến thức nền tảng về:

  • Nguyên lý Hệ điều hành (tiến trình, không gian bộ nhớ, lời gọi hệ thống, hệ thống tệp).
  • Mạng máy tính cơ bản (mô hình phân tầng, bộ giao thức TCP/IP, cổng và dịch vụ mạng).
  • Kỹ năng lập trình cơ bản (C/UNIX) để hiểu các phân tích về tràn bộ đệm và điều kiện tranh định.
  • Toán học cơ bản: Số học modulo và các khái niệm tập hợp cơ bản.

3. Điểm khác biệt so với cuốn Computer Security: Art and Science là gì?

Cuốn sách này là phiên bản cô đọng của Computer Security: Art and Science. Tác giả Matt Bishop đã loại bỏ các cấu trúc chứng minh hình thức phức tạp và các mô hình toán học nâng cao không còn phổ biến, tập trung vào cách giải thích trực quan, các mô hình thực thi và các ca điển hình thực tế.

4. Làm sao để tự học giáo trình hiệu quả?

Người học nên tuân thủ trình tự:

  1. Đọc kỹ mục tiêu chương và bảng phân loại khái niệm tại Chương 1 để nắm vững ranh giới giữa Chính sách (Policy) và Cơ chế (Mechanism).
  2. Tự làm lại các sơ đồ phân quyền dựa trên Ma trận kiểm soát truy cập và kiểm tra tính hợp lệ của các mô hình chính sách (Bell-LaPadula, Biba, Clark-Wilson).
  3. Đọc kỹ phần tóm tắt ở cuối mỗi chương và đối chiếu các lỗi bảo mật trong Chương 26 với các quy tắc thiết kế tại Chương 12.
  4. Tham khảo các tài liệu nghiên cứu gốc được liệt kê tại mục Further Reading.

5. Có tài liệu bổ trợ nào kèm theo trong cấu trúc sách?

Sách cung cấp các chương phụ lục chuyên sâu giải quyết các công cụ toán học và hệ thống bổ trợ: Phụ lục về Lý thuyết Dàn (Lattices - Chương 27), Thuật toán Euclid mở rộng ứng dụng trong giải phương trình đồng dư mã hóa (Chương 28), và Kiến trúc Bộ giám sát máy ảo (Virtual Machine Monitor - Chương 29).


Kết luận

Giáo trình Introduction to Computer Security của Matt Bishop xác lập hệ thống kiến thức toàn diện về an toàn máy tính thông qua việc làm rõ mối quan hệ giữa chính sách, cơ chế kỹ thuật và công tác bảo đảm hệ thống. Giá trị cốt lõi của tài liệu nằm ở việc duy trì các nguyên lý thiết kế bền vững (như 8 nguyên tắc của Saltzer & Schroeder) và các mô hình toán học nền tảng, giúp người học có cơ sở lý thuyết vững chắc để phân tích các môi trường công nghệ mới.

Lộ trình học tập khuyến nghị bắt đầu từ việc nắm vững mô hình trạng thái an toàn và 3 trụ cột CIA (Chương 1–7), tiếp cận các công cụ kỹ thuật mật mã và thiết kế hệ thống (Chương 8–16), hiểu rõ các chuẩn mực thẩm định hệ thống (Chương 17–18), và kết thúc bằng việc phân tích thực nghiệm các lỗ hổng, mã độc và kỹ thuật bảo mật đa tầng từ mạng đến mã nguồn phần mềm (Chương 19–26).