An toàn hệ thống (Security)

Một phần của tài liệu Giáo trình hệ điều hành phần 2 (Trang 43 - 46)

Bảo vệ hệ thống (protection) là một cơ chế kiểm soát việc sử dụng tài nguyên của các tiến trình hay người sử dụng để đối phó với các tình huống lỗi có thể phát sinh từ trong hệ thống . Trong khi đó khái niệm an toàn hệ thống (security) muốn đề cập đến mức độ tin cậy mà hệ thống duy trì khi phải

đối phó không những với các vấn đề nội bộ, mà còn cả với những tác hại đến từ môi trường ngoài .

V.1. Các vấn đề về an toàn hệ thống

Hệ thống được gọi là an toàn nếu các tài nguyên được sử dụng đúng như quy ước trong mọi hoàn cảnh. Kém may mắm là điều này hiếm khi đạt được trong thực tế ! Thông thường, an toàn bị vi phạm vì các nguyên nhân vô tình hay cố ý phá hoại. Việc chống đỡ các phá hoại cố ý là rất khó khăn và gần như không thể đạt hiệu quả hoàn toàn. Bảo đảm an toàn hệ thống ở cấp cao chống lại các tác hại từ môi trường ngoài như hoả hoạn, mất điện, phái hoại...cần được thực hiện ở 2 mức độ

vật lý (trang bị các thiết bị an toàn cho vị trí đạt hệ thống...) và nhân sự (chọn lọc cẩn thận những

nhân viên làm việc trong hệ thống...). Nếu an toàn môi trường được bảo đảm khá tốt, an toàn của hệ thống sẽ được duy trì tốt nhờ các cơ chế của hệ điều hành (với sự trợ giúp của phần cứng).

Lưu ý rằng nếu bảo vệ hệ thống có thể đạt độ tin cậy 100%, thì các cơ chế an toàn hệ thống được cung cấp chỉ với hy vọng ngăn chặn bớt các tình huống bất an hơn là đạt đến độ an toàn tuyệt đối.

V.2. Kiểm định danh tính (Authentication)

Để đảm bảo an toàn, hệ điều hành cần giải quyết tốt vấn đề chủ yếu là kiểm định danh tính

(authentication). Hoạt động của hệ thống bảo vệ phụ thuộc vào khả năng xác định các tiến trình

đang xử lý. Khả năng này, đến lượt nó, lại phụ thuộc vào việc xác định được người dùng đang sử dụng hệ thống để có thể kiểm tra người dùng này được cho phép thao tác trên những tài nguyên nào.

Cách tiếp cận phổ biến nhất để giải quyết vấn đề là sử dụng password để kiểm định đúng danh tính của người dùng. Mỗi khi người dùng muốn sử dụng tài nguyên, hệ thống sẽ kiểm tra password của người dùng nhập vào với password được lưu trữ, nếu đúng, người dùng mới được cho phép sử dụng tài nguyên. Password có thể đuợc để bảo vệ từng đối tượng trong hệ thống, thậm chí cùng một đối tượng sẽ có các password khác nhau ứng với những quyền truy xuất khác nhau. Cơ chế password rất dễ hiểu và dễ sử dụng do vậy được sử dụng rộng rãi, tuy nhiên yếu điểm nghiêm trọng của phương pháp này là khả năng bảo mật password rất khó đạt được sự hoàn hảo, những tác nhân tiêu cực có thể đoán ra password của người khác nhờ nhiều cách thức khác nhau.

V.3. Mối đe dọa từ các chương trình

Trong môi trường mà một chương trình được tạo lập bởi người này lại có thể được người khác sử dụng, có thể xảy ra các tình huống sử dụng không đúng, từ đó dẫn đến những hậu qủa khó lường. Hai trường hợp điển hình là :

V.3.1. Ngựa thành Troy

Khi một người dùng A cho một chương trình do B viết hoạt động dưới danh nghĩa của mình ( trong miền bảo vệ được gán tương ứng cho người dùng A), chương trình này có thể trở thành một « con ngựa thành Troy » vì khi đó các đoạn lệnh trong chương trình có thể thao tác trên các tài nguyên với những quyền tương ứng của người A (mà có thể người B vốn bị cấm!), nhiều chương trình như thế đã « lợi dụng hoàn cảnh » để gây ra các tác hại đáng tiếc.

V.3.2. Cánh cửa nhỏ ( Trap-door)

Một mối đe dọa đặc biệt nguy hiểm và khó chống đỡ đến từ sự vô tình hay ý nghĩ bất chính của các lập trình viên. Khi xây dựng chương trình, các lập trình viên có thể để lại một « cánh cửa nhỏ » trong phần mềm mà chỉ có họ là có khả năng sử dụng , qua đó thâm nhập và phá hoại hệ thống ( ví dụ làm tròn các số lẻ trong những tài khoản, và thu lợi riêng từ phần dư này...). Vấn đề này rất khó đối phó vì cần phải tiến hành phân tích chương trình nguồn để tìm ra chỗ sơ hở.

V.4. Mối đe dọa từ hệ thống

Hầu hết các hệ điều hành đều cung cấp phương tiện cho phép các tiến trình khi hoạt động có thể tạo ra (spawn) những tiến trình khác. Trong các môi trường như thế, tài nguyên hệ thống và các tập tin của người dùng có thể bị sử dụng sai lạc để gây tác hại. Hai phương pháp phổ biến để phá hoại hệ thống theo phương thức này là :

V.4.1. Các chương trình « sâu bọ » ( Worm)

Một chương trình « sâu bọ » là chương trình lợi dụng cơ chế phát sinh tiến trình của hệ thống để đánh bại chính hệ thống. Tiến trình « sâu bo »ï có khả năng tự động phát sinh các phiên bản ngay cả trên môi trường mạng, lan tràn trên nhiều máy tính khác nhau, sau đó chiếm dụng các tài nguyên hệ thống và làm ngừng trệ hoàn toàn hoạt động của các tiến trình khác trên hệ thống mạng .

Ví dụ : chương trình của Robert Tappan Morris, 11/1988 lan truyền trên Internet

V.4.2. Các chương trình Virus

Virus là một dạng phá hoại nguy hiểm khác đối với các hệ thống thông tin. Khác với « sâu bọ » là những chương trình hoàn chỉnh, virus chỉ là những đoạn code có khả năng lây truyền vào các chương trình chính thống khác và từ đó tàn phá hệ thống. Virus thường hoành hành trên các máy đơn, và chủ yếu lây truyền giữa các máy qua việc trao đổi đĩa mềm.

V.5. Giám sát các mối đe doạ

Nhìn chung việc bảo đảm an toàn hệ thống là rất khó do có các yếu tố con người. Hệ điều hành chỉ có thể áp dụng một số kỹ thuật để giảm bớt khả năng bị phá hoại như ghi nhận các sự kiện như :

 cố gắng nhập nhiều lần password sai

 sử dụng các password dễ đoán

 các tiến trình với định danh nghi ngờ không được ủy quyền

 các tiến trình không được ủy quyền trong những thư mục hệ thống

 các chương trình kéo dài xử lý một cách đáng ngờ

 bảo vệ các tập tin và thư mục không hợp lý

 thay đổi kích thước của các chương trình hệ thống

Việc kiểm tra thường kỳ và ghi nhận các thông tin này giúp hệ thống phát hiện kịp thời các nguy cơ, và cho phép phân tích , dự đoán các cách đối phó về sau.

VI. Tóm tắt

 Các đối tượng trong hệ thống ( có thể là phần cứng như CPU, bộ nhớ chính ; hay phần mềm như tập tin, chương trình) cần phải được bảo vệ khỏi sự sử dụng sai trái. Điều này có thể thực hiện được bằng cách đặt các đối tượng vào những miền bảo vệ thích hợp với các quyền truy xuất được định nghĩa trên đó.

 Quyền truy xuất trên một đối tượng là thao tác đượcphép thực hiện trên đối tượng đó.

 Miền bảo vệ là tập các quyền truy xuất trên một số các đối tượng. Mỗi tiến trình sẽ hoạt động trong một miền bảo vệ tại một thời điểm.

 Ma trận quyền truy xuất là mô hình tổng quát cho bài toán bảo vệ hệ thống. Ma trận này có thể được cài đặt như một mảng, các danh sách quyền truy xuất hoặc các danh sách tiềm năng.

 Mô hình bảo vệ động cho phép tiến trình có thể chuyển đổi miền bảo vệ trong thời gian xử lý. Có thể tổ chức mô hình bảo vệ động nếu xem các miền bảo vệ và bản thân ma trận quyền truy xuất cũng là các đối tượng trong hệ thống.

 An toàn hệ thống không chỉ quan tâm đến các nguy cơ nội bộ hệ thống, mà phải đối phó với cả các nguy cơ từ môi trường ngoài.

 Vấn đề quan trọng nhất trong an toàn hệ thống là kiểm định danh tính của người dùng để xác định đúng các quyền tương ứng của họ. Phương pháp thông dụng nhất để làm điều này là kiểm tra password.

 Ngoài ra hệ thống còn phải đối phó vớ các tác hại của những sự tấn công cố ý từ phía những chương trình « sâu bọ », virus, các loại khe hở trong chương trình...

 Nhìn chung không thể đạt được mức độ an toàn hệ thống 100%, nhưng có thể áp dụng các biện pháp để hạn chế tối đa các nguy cơ phá hoại hệ thống.

BÀI 12 : WINDOWS NT I. LỊCH SỬ I. LỊCH SỬ

Vào khoảng cuối những năm1980, IBM và Microsoft cố gắng thay thế MS-DOS với một hệ điều hành mới là OS/2. Tuy nhiên diễn tiến không được tốt đẹp như mong muốn : OS/2 ra đời chậm trễ, không có tính tương thích cao và không phổ biến. IBM và Microsoft đổ lỗi lẫn nhau để cuối cùng sự hợp tác đi đến đỗ vỡ .

1988, Microsoft mời Dave Cutler (người phát triển VMS và VAX ở Digital ) làm thủ lĩnh để phát triển phần của họ trong dự án OS/2 thành một hệ điều hành hoàn toàn mới là Windows New

Technology haty vắn tắt là WinNT.

Thoạt trông thì giao diện thân thiện của WinNT giống như họ Windows 9x, nhưng thực sự thì phần lõi bên trong của hệ điều hành được xây dựng hoàn toàn khác biệt. WinNT kết hợp chặt chẽ các tính năng bảo vệ phần cứng và bảo đảm an toàn người dùng, là một hệ điều hành có độ tin cậy cao.

Một phần của tài liệu Giáo trình hệ điều hành phần 2 (Trang 43 - 46)

Tải bản đầy đủ (PDF)

(53 trang)