Khái niệm và lịch sử bảo mật hệ thống
Giáo trình đào tạo Quản trị mạng thiết bị mạng Hoạt động người quản trị hệ thống mạng phải đảm bảo thông tin mạng tin cậy sử dụng mục đích, đối tượng đồng thời đảm bảo mạng hoạt động ổn định, không bị cơng kẻ phá hoại Có thực tế không hệ thống mạng đảm bảo an toàn tuyệt đối, hệ thống dù bảo vệ chắn đến mức có lúc bị vơ hiệu hố kẻ có ý đồ xấu I.1.1 Một số khái niệm lịch sử bảo mật hệ thống Trước tìm hiểu vấn đề liên quan đến phương thức phá hoại biện pháp bảo vệ thiết lập sách bảo mật, ta tìm hiểu số khái niệm liên quan đến bảo mật thông tin mạng Internet I.1.1.1 Một số khái niệm: a) Đối tượng công mạng (Intruder): Là cá nhân tổ chức sử dụng kiến thức mạng công cụ phá hoại (phần mềm phần cứng) để dị tìm điểm yếu, lỗ hổng bảo mật hệ thống, thực hoạt động xâm nhập chiếm đoạt tài nguyên mạng trái phép Một số đối tượng công mạng là: - Hacker: Là kẻ xâm nhập vào mạng trái phép cách sử dụng công cụ phá mật khai thác điểm yếu thành phần truy nhập hệ thống - Masquerader: Là kẻ giả mạo thơng tin mạng Có số hình thức giả mạo địa IP, tên miền, định danh người dùng - Eavesdropping: Là đối tượng nghe trộm thông tin mạng, sử dụng công cụ sniffer; sau dùng cơng cụ phân tích debug để lấy thơng tin có giá trị Những đối tượng cơng mạng nhằm nhiều mục đích khác như: ăn cắp thơng tin có giá trị kinh tế, phá hoại hệ thống mạng có chủ định, hành động vơ ý thức, thử nghiệm chương trình khơng kiểm tra cẩn thận Trung tâm Điện tốn Truyền số liệu KV1 262 Giáo trình đào tạo Quản trị mạng thiết bị mạng b) Các lỗ hổng bảo mật: Các lỗ hổng bảo mật điểm yếu hệ thống ẩn chứa dịch vụ mà dựa vào kẻ cơng xâm nhập trái phép để thực hành động phá hoại chiếm đoạt tài nguyên bất hợp pháp Nguyên nhân gây lỗ hổng bảo mật khác nhau: lỗi thân hệ thống, phần mềm cung cấp, người quản trị yếu không hiểu sâu sắc dịch vụ cung cấp Mức độ ảnh hưởng lỗ hổng khác Có lỗ hổng ảnh hưởng tới chất lượng dịch vụ cung cấp, có lỗ hổng ảnh hưởng nghiêm trọng tới toàn hệ thống c) Chính sách bảo mật: Là tập hợp qui tắc áp dụng cho đối tượng có tham gia quản lý sử dụng tài nguyên dịch vụ mạng Mục tiêu sách bảo mật giúp người sử dụng biết trách nhiệm việc bảo vệ tài ngun thơng tin mạng , đồng thời giúp nhà quản trị thiết lập biện pháp bảo đảm hữu hiệu q trình trang bị, cấu hình, kiểm sốt hoạt động hệ thống mạng Một sách bảo mật coi hồn hảo xây dựng gồm văn pháp qui, kèm theo công cụ bảo mật hữu hiệu nhanh chóng giúp người quản trị phát hiện, ngăn chặn xâm nhập trái phép I.1.1.2 Lịch sử bảo mật hệ thống: Có số kiện đánh dấu hoạt động phá hoại mạng, từ nảy sinh yêu cầu bảo mật hệ thống sau: - Năm 1988: Trên mạng Internet xuất chương trình tự nhân phiên lên tất máy mạng Internet Các chương trình gọi "sâu" Tuy mức độ nguy hại khơng lớn, đặt vấn đề nhà quản trị quyền truy nhập hệ thống, lỗi phần mềm - Năm 1990: Các hình thức truyền Virus qua địa Email xuất phổ biến mạng Internet - Năm 1991: Phát chương trình trojans Trung tâm Điện toán Truyền số liệu KV1 263 Giáo trình đào tạo Quản trị mạng thiết bị mạng Cùng thời gian phát triển dịch vụ Web công nghệ liên quan Java, Javascipts có nhiều thơng báo lỗi bảo mật liên quan như: lỗ hổng cho phép đọc nội dung file liệu người dùng, số lỗ hổng cho phép cơng hình thức DoS, spam mail làm ngưng trệ dịch vụ - Năm 1998: Virus Melisa lan truyền mạng Internet thông qua chương trình gửi mail Microsoft, gây thiết hại kinh tế không nhỏ - Năm 2000: Một loạt Web Site lớn yahoo.com ebay.com bị tê liệt, ngừng cung cấp dịch vụ nhiều bị cơng hình thức DoS I.1.2 Các lỗ hổng phương thức công mạng chủ yếu I.1.2.1 Các lỗ hổng Như phần trình bày, lỗ hổng bảo mật hệ thống điểm yếu tạo ngưng trệ dịch vụ, thêm quyền người sử dụng cho phép truy nhập không hợp pháp vào hệ thống Các lỗ hổng nằm dịch vụ cung cấp sendmail, web, ftp Ngồi lỗ hổng cịn tồn tại hệ điều hành Windows NT, Windows 95, UNIX ứng dụng mà người sử dụng thường xuyên sử dụng word processing, hệ databases Có nhiều tổ chức khác tiến hành phân loại dạng lỗ hổng đặc biêt Theo cách phân loại Bộ quốc phòng Mỹ, loại lỗ hổng bảo mật hệ thống chia sau: - Lỗ hổng loại C: lỗ hổng loại cho phép thực phương thức công theo DoS (Denial of Services - Từ chối dịch vụ) Mức độ nguy hiểm thấp, ảnh hưởng tới chất lượng dịch vụ, làm ngưng trệ, gián đoạn hệ thống; không làm phá hỏng liệu đạt quyền truy nhập bất hợp pháp - Lổ hổng loại B: Các lỗ hổng cho phép người sử dụng có thêm quyền hệ thống mà không cần thực kiểm tra tính hợp lệ nên dẫn đến mát lộ thông tin yêu cầu bảo mật Mức độ nguy hiểm trung bình Những lỗ hổng thường có ứng dụng hệ thống Trung tâm Điện toán Truyền số liệu KV1 264 Giáo trình đào tạo Quản trị mạng thiết bị mạng - Lỗ hổng loại A: Các lỗ hổng cho phép người sử dụng cho thể truy nhập vào hệ thống bất hợp pháp Lỗ hổng nguy hiểm, làm phá hủy tồn hệ thống Hình sau minh họa mức độ nguy hiểm loại lỗ hổng tương ứng: Hình 1.1: Các loại lỗ hổng bảo mật mức độ ngưy hiểm Sau ta phân tích số lỗ hổng bảo mật thường xuất mạng hệ thống a) Các lỗ hổng loại C Các lỗ hổng loại cho phép thực công DoS DoS hình thức cơng sử dụng giao thức tầng Internet giao thức TCP/IP để làm hệ thống ngưng trệ dẫn đến tình trạng từ chối người sử dụng hợp pháp truy nhập hay sử dụng hệ thống Một số lượng lớn gói tin gửi tới server khoảng thời gian liên tục làm cho hệ thống trở nên Trung tâm Điện toán Truyền số liệu KV1 265 Giáo trình đào tạo Quản trị mạng thiết bị mạng tải, kết server đáp ứng chậm đáp ứng yêu cầu từ client gửi tới Các dịch vụ có lỗ hổng cho phép thực cơng DoS nâng cấp sửa chữa phiên nhà cung cấp dịch vụ Hiện nay, chưa có giải pháp toàn diện để khắc phục lỗ hổng loại thân việc thiết kế giao thức tầng Internet (IP) nói riêng giao thức TCP/IP chứa đựng nguy tiềm tàng lỗ hổng Ví dụ điển hình phương thức công DoS công vào số Web Site lớn làm ngưng trệ hoạt động web site như: www.ebay.com www.yahoo.com Tuy nhiên, mức độ nguy hiểm lỗ hổng loại xếp loại C, nguy hiểm chúng làm gián đoạn cung cấp dịch vụ hệ thống thời gian mà không làm nguy hại đến liệu kẻ công không đạt quyền truy nhập bất hợp pháp vào hệ thống Một lỗ hổng loại C khác thường thấy điểm yếu dịch vụ cho phép thực công làm ngưng trệ hệ thống người sử dụng cuối Chủ yếu hình thức cơng sử dụng dịch vụ Web Giả sử Web Server có trang Web có chứa đoạn mã Java JavaScripts, làm "treo" hệ thống người sử dụng trình duyệt Web Netscape bước sau: - Viết đoạn mã để nhận biết Web Browers sử dụng Netscape - Nếu sử dụng Netscape, tạo vịng lặp vơ thời hạn, sinh vô số cửa sổ, cửa sổ nối đến Web Server khác Với hình thức cơng đơn giản này, làm treo hệ thống khoảng thời gian 40 giây (đối với máy client có 64 MB RAM) Đây hình thức cơng kiểu DoS Người sử dụng trường hợp khởi động lại hệ thống Một lỗ hổng loại C khác thường gặp hệ thống mail không xây dựng chế anti-relay (chống relay) cho phép thực hành động spam mail Như biết, chế hoạt động dịch vụ thư điện tử lưu chuyển tiếp Một số hệ thống mail khơng có xác thực người dùng gửi thư, dẫn đến tình trạng đối tượng cơng lợi dụng Trung tâm Điện tốn Truyền số liệu KV1 266 Giáo trình đào tạo Quản trị mạng thiết bị mạng máy chủ mail để thực spam mail Spam mail hành động nhằm làm tê liệt dịch vụ mail hệ thống cách gửi số lượng lớn message tới địa khơng xác định, máy chủ mail ln phải tốn lực tìm địa khơng có thực dẫn đến tình trạng ngưng trệ dịch vụ Các message sinh từ chương trình làm bom thư phổ biến mạng Internet b) Các lỗ hổng loại B: Lỗ hổng loại có mức độ nguy hiểm lỗ hổng loại C, cho phép người sử dụng nội chiếm quyền cao truy nhập không hợp pháp Ví dụ hình 12, lỗ hổng loại B có hệ thống UNIX mà file /etc/passwd để dạng plaintext; không sử dụng chế che mật UNIX (sử dụng file /etc/shadow) Những lỗ hổng loại thường xuất dịch vụ hệ thống Người sử dụng local hiểu người có quyền truy nhập vào hệ thống với số quyền hạn định Một loại vấn đề quyền sử dụng chương trình UNIX thương gây nên lơ hổng loại B Vì hệ thống UNIX chương trình thực thi với khả năng: - Người chủ sở hữu chương trình kích hoạt chạy - Người mang quyền người sở hữu file kích hoạt chạy Một dạng khác lỗ hổng loại B xảy chương trình có mã nguồn viết C Những chương trình viết C thường sử dụng vùng đệm - vùng nhớ sử dụng để lưu liệu trước xử lý Những người lập trình thường sử dụng vùng đệm nhớ trước gán khoảng không gian nhớ cho khối liệu Ví dụ, người sử dụng viết chương trình nhập trường tên người sử dụng, qui định trường dài 20 ký tự Do họ khai báo: char first_name [20]; Khai báo cho phép người sử dụng nhập vào tối đa 20 ký tự Khi nhập liệu, trước tiên liệu lưu vùng đệm; người sử dụng nhập vào 35 ký tự xảy tượng tràn vùng đệm kết 15 ký tự dư thừa nằm vị trí khơng kiểm sốt nhớ Đối với kẻ cơng, lợi dụng lỗ hổng để nhập vào ký tự đặc biệt, để thực thi Trung tâm Điện tốn Truyền số liệu KV1 267 Giáo trình đào tạo Quản trị mạng thiết bị mạng số lệnh đặc biệt hệ thống Thông thường, lỗ hổng thường lợi dụng người sử dụng hệ thống để đạt quyền root không hợp lệ Việc kiểm sốt chặt chẽ cấu hình hệ thống chương trình hạn chế lỗ hổng loại B c) Các lỗ hổng loại A: Các lỗ hổng loại A có mức độ nguy hiểm, đe dọa tính tồn vẹn bảo mật hệ thống Các lỗ hổng loại thường xuất hệ thống quản trị yếu không kiểm sốt cấu hình mạng Một ví dụ thường thấy nhiều hệ thống sử dụng Web Server Apache, Đối với Web Server thường cấu hình thư mục mặc định để chạy script cgi-bin; có Scripts viết sẵn để thử hoạt động apache test-cgi Đối với phiên cũ Apache (trước version 1.1), có dịng sau file test-cgi: echo QUERY_STRING = $QUERY_STRING Biến môi trường QUERY_STRING khơng đặt có dấu " (quote) nên phía client thưc u cầu chuỗi ký tự gửi đến gồm số ký tự đặc biệt; ví dụ ký tự "*", web server trả nội dung toàn thư mục thời (là thư mục chứa script cgi) Người sử dụng nhìn thấy tồn nội dung file thư mục thời hệ thống server Một ví dụ khác xảy tương tự Web server chạy hệ điều hành Novell: web server có scripts convert.bas, chạy scripts cho phép đọc toàn nội dung files hệ thống Những lỗ hổng loại nguy hiểm tồn sẵn có phần mềm sử dụng, người quản trị không hiểu sâu dịch vụ phần mềm sử dụng bỏ qua điểm yếu Đối với hệ thống cũ, thường xuyên phải kiểm tra thơng báo nhóm tin bảo mật mạng để phát lỗ hổng loại Một loạt chương trình phiên cũ thường sử dụng có lỗ hổng loại A như: FTP, Gopher, Telnet, Sendmail, ARP, finger Trung tâm Điện toán Truyền số liệu KV1 268 Giáo trình đào tạo Quản trị mạng thiết bị mạng I.1.2.2 Một số phương thức công mạng phổ biến a) Scanner Scanner chương trình tự động rà sốt phát điểm yếu bảo mật trạm làm việc cục trạm xa Với chức này, kẻ phá hoại sử dụng chương trình Scanner phát lỗ hổng bảo mật server xa Các chương trình scanner thường có chế chung rà soát phát port TCP/UDP sử dụng hệ thống cần cơng từ phát dịch vụ sử dụng hệ thống Sau chương trình scanner ghi lại đáp ứng hệ thống xa tương ứng với dịch vụ mà phát Dựa vào thơng tin này, kẻ cơng tim điểm yếu hệ thống Những yếu tố để chương trình Scanner hoạt động sau: - Yêu cầu thiết bị hệ thống: Một chương trình Scanner hoạt động mơi trường có hỗ trợ TCP/IP (bất kể hệ thống UNIX, máy tính tương thích với IBM, dịng máy Macintosh) - Hệ thống phải kết nối vào mạng Internet Tuy nhiên đơn giản để xây dựng chương trình Scanner, kẻ phá hoại cần có kiến thức sâu TCP/IP, kiến thức lập trình C, PERL số ngơn ngữ lập trình shell Ngồi người lập trình (hoặc người sử dụng) cần có kiễn thức lập trình socket, phương thức hoạt động ứng dụng client/server Các chương trình Scanner có vai trị quan trọng hệ thống bảo mật, chúng có khả phát điểm yếu hệ thống mạng Đối với người quản trị mạng thông tin hữu ích cần thiết; kẻ phá hoại thông tin nguy hiểm b) Password Cracker Password cracker chương trình có khả giải mã mật mã hố vơ hiệu hoá chức bảo vệ mật hệ thống Để hiểu cách thức hoạt động chương trình bẻ khố, cần hiểu cách thức mã hoá để tạo mật Hầu hết việc mã hoá mật Trung tâm Điện toán Truyền số liệu KV1 269 Giáo trình đào tạo Quản trị mạng thiết bị mạng tạo từ phương thức mã hố Các chương trình mã hố sử dụng thuật toán mã hoá để mã hoá mật Quá trình hoạt động chương trình bẻ khố minh hoạ hình sau: Hình 1.2: Hoạt động chương trình bẻ khóa Theo sơ đồ trên, danh sách từ tạo mã hoá từ Sau lần mã hố, chương trình so sánh với mật mã hố cần phá Nếu khơng thấy trùng hợp, q trình lại quay lại Phương thức bẻ khố gọi bruce-force Yếu tố thiết bị phần cứng: Trong hình máy tính thực chương trình phá khoấ máy PC 66MHz cấu hình cao Trong thực tế yêu cầu thiết bị phần cứng mạnh kẻ phá khoá Trung tâm Điện toán Truyền số liệu KV1 270 Giáo trình đào tạo Quản trị mạng thiết bị mạng chuyên nghiệp Một phương thức khác thay thực việc phá khoá hệ thống phần tán; giảm bớt yêu cầu thiết bị so với phương pháp làm máy Nguyên tắc số chương trình phá khố khác Một vài chương trình tạo một danh sách từ giới hạn, áp dụng số thuật toán mã hoá, từ kết so sánh với password mã hoá cần bẻ khoá để tạo danh sách khác theo lôgic chương trình, cách khơng chuẩn tắc nhanh dựa vào nguyên tắc đặt mật người sử dụng thường tuân theo số qui tắc để thuận tiện sử dụng Đến giai đoạn cuối cùng, thấy phù hợp với mật mã hố, kẻ phá khố có mật dạng text thơng thường Trong hình trên, mật dạng text thông thường ghi vào file Để đánh giá khả thành cơng chương trình bẻ khố ta có cơng thức sau: P = L x R /S Trong đó: P: Xác suất thành cơng L: Thời gian sống mật R: Tốc độ thử S: Không gian mật = AM (M chiều dài mật khẩu) Ví dụ, hệ thống UNIX người ta chứng minh mật dài q ký tự xác suất phá khố gần = Cụ thể sau: Nếu sử dụng khoảng 92 ký tự đặt mật khẩu, khơng gian mật có S = 928 Với tốc độ thử 1000 mật giây có R = 1000/s Thời gian sống mật năm Ta có xác suất thành công : P = 1x 365 x 86400 x 1000/928 = 1/1.000.000 Trung tâm Điện toán Truyền số liệu KV1 271 ... TCP/UDP sử dụng hệ thống cần cơng từ phát dịch vụ sử dụng hệ thống Sau chương trình scanner ghi lại đáp ứng hệ thống xa tương ứng với dịch vụ mà phát Dựa vào thông tin này, kẻ cơng tim điểm yếu hệ thống. .. phát hiện, ngăn chặn xâm nhập trái phép I.1.1.2 Lịch sử bảo mật hệ thống: Có số kiện đánh dấu hoạt động phá hoại mạng, từ nảy sinh yêu cầu bảo mật hệ thống sau: - Năm 1988: Trên mạng Internet xuất... dịch vụ hệ thống Người sử dụng local hiểu người có quyền truy nhập vào hệ thống với số quyền hạn định Một loại vấn đề quyền sử dụng chương trình UNIX thương gây nên lơ hổng loại B Vì hệ thống UNIX