Gửi lúc 03:09 | 09/06/2015 | 15891 lượt xem

Hỏi:

Để thiết kế được hệ điều hành tin cậy thì các phần tử nào cần phải tuân thủ?

Trả lời:

- Đặc quyền ít nhất. Mỗi NSD và mỗi chương trình sẽ làm việc với đặc quyền tới mức có thể. Theo cách này, mỗi nguy hại nảy sinh do thiếu thận trọng hay tấn công ác ý sẽ được tối thiểu hóa.

- Tính kinh tế của cơ chế. Việc thiết kế một hệ thống bảo vệ cần nhỏ, đơn giản và minh bạch. Một hệ thống như vậy có thể được phân tích cẩn thận, được thử nghiệm hay kiểm tra toàn diện và tin cậy.

- Thiết kế mở. Cơ chế bảo vệ phải không phụ thuộc vào tính kém cỏi của kẻ tấn công; cơ chế cần công khai, tùy thuộc vào tính bí mật của vài mục chủ chốt, chẳng hạn như bảng mật khẩu. Một thiết kế mở cũng có giá trị cho việc mở rộng tính cẩn thận, công khai và như vậy sẽ cho sự khẳng định độc lập về tính an toàn thiết kế.

- Sự dàn xếp đẩy đủ. Mỗi cố gắng truy nhập phải được kiểm tra. Cả những nỗ lực truy nhập trực tiếp lẫn những truy nhập lừa cơ chế kiểm tra đều cần phải được xem xét, còn cơ chế thì cần phải sắp xếp để không bị lừa.

- Dựa trên cấp phép. Điều kiện ngầm định sẽ là từ chối truy nhập. Người thiết kế thận trọng sẽ xác định những mục truy nhập được hơn là những mục dữ liệu không thể truy nhập được.

- Phân tách độc quyền. Một cách lý tưởng, sự truy nhập tới các đối tượng cần phải phụ thuộc vào nhiều hơn một điều kiện, chẳng hạn, việc xác thực NSD cộng thêm khóa mã. Theo cách này, người nào đó phá được hệ thống bảo vệ vẫn sẽ không có được sự truy nhập đầy đủ.

- Cơ chế ít chung nhất. Những đối tượng được chia sẻ tạo nên những kênh thông tin tiềm tàng. Những hệ thống tận dụng sự tách bạch vật lý hay logic sẽ làm giảm rủi ro do chia sẻ.

- Dễ sử dụng. Nếu một cơ chế dễ sử dụng thì không hẳn là bị né tránh.

Các nguyên tắc thiết kế này hiện vẫn còn đúng như lúc chúng được viết ra. Chúng đã được dùng trong thiết kế và thực hiện vô số HĐH tin cậy.