Chương 1: CÁC HIỂM HỌA VỀ AN TOÀN THÔNG TIN TRÊN MẠNG MÁY TÍNH. VẤN ĐỀ AN NINH MẠNG MÁY TÍNH. An ninh hệ thống. Các hệ thống máy tính được cấu thành từ các thiết bị phần cứng như bộ vi xử lý, đơn vị điều khiển vào ra, các thiết bị ngoại vi (đĩa cứng, máy in.) và hệ điều hành với các thành phần lõi hệ điều hành, hệ thống tệp, các tiến trình hệ thống, các dịch vụ hệ thống.
Tất cả các thành phần nêu trên đều có thể bị đột nhập hay bị lợi dụng khai thác bởi các kẽ hở của chính bản thân các thành phần đó nhằm làm suy yếu và tê liệt một phần hoặc toàn bộ hệ thống 1. Các tấn công vào phần cứng. Các tấn công vào phần cứng dựa trên lỗi của chính bản thân phần cứng. Đây là lỗi của thiết kế phần cứng và kẻ tấn công có thể lợi dụng những lỗi này để tấn công hệ thống.Ví dụ: mặc dù đã được cải tiến và phát triển rất lâu, bộ vi xử lý Pentium của Intel vẫn còn có lỗi.
Chỉ cần thực hiện một đoạn mã đặc biệt là có thể làm cho hệ thống bị tê liệt hoàn toàn, bất kể hệ điều hành được sử dụng có ưu việt đến đâu và hoạt động ở chế độ bảo vệ nào. Các truy nhập không được phép. Cách dễ nhất để vào một hệ thống máy tính là thông qua hình thức đăng nhập “Login”. Kẻ tấn công có nhiều cách để truy nhập bất hợp pháp vào hệ thống.
Các kiểu này có thể là: a/. Mạo danh người sử dụng để yêu cầu thay đổi mật khẩu. Các phép toán đơn giản (thử một tên tài khoản và các kết hợp của mật khẩu cho đến khi có được một tài khoản hoạt động); hoặc c/. Bằng một cách phức tạp mà không cần biết tên tài khoản và mật khẩu.
LUAN VAN CHAT LUONG download : add luanvanchat@agmail. Lỗi hệ thống và các trình ẩn nấp. Sau đây là mô tả một số lỗi hệ thống thường gặp. Lỗi của cơ chế xác thực Rất nhiều cuộc tấn công xuất phát từ sự hỏng cơ chế xác thực của hệ thống.
Ví dụ: quá trình kiểm tra địa chỉ nguồn IP có thể hoạt động tốt trong một tình huống nào đó, nhưng những kẻ tấn công có thể dùng trình “portmapper” để gửi lại các yêu cầu. Trong trường hợp đó, dịch vụ nền tảng cuối cùng đã bị lừa, bản tin được gửi đến máy dịch vụ xuất hiện dường như từ địa chỉ nguồn nội bộ, nhưng thực ra nó xuất phát từ nơi nào đó khác. Xác thực dựa trên địa chỉ IP cũng có thể bị hỏng nếu hệ thống gửi yêu cầu xác thực không đáng tin cậy. Có lúc, cơ chế xác thực hỏng do các giao thức không mang thông tin đúng đắn.
Cả TCP và IP đều không định dạng người gửi; các giao thức như X11 và rsh phải tự lấy địa chỉ nguồn IP mà không biết có tin tưởng được địa chỉ đó không. Lỗi các giao thức Đây là trường hợp các lỗi xuất hiện trong bản thân các phần mềm thực hiện giao thức, từ chối các ứng dụng và từ chối công việc thường nhật. Một ví dụ: các tấn công nhờ “số tuần tự IP”. Vì không đủ số ngẫu nhiên trong quá trình tạo “số tuần tự TCP ban đầu” cho một kết nối TCP nên có thể gây ra kẽ hở cho kẻ tấn công lừa địa chỉ nguồn.
Nói đúng hơn, các số tuần tự TCP không được thiết kế để chống lại các tấn công thâm hiểm. Các giao thức khác dựa trên số tuần tự đều có thể bị tấn công bằng cùng một phương thức, bao gồm cả dịch vụ tên miền DNS và dịch vụ thực hiện tiến trình từ xa RPC (Remote Procedure Call) Rò rỉ thông tin người sử dụng Hầu hết các dịch vụ đều cung cấp một vài thông tin về người sử dụng dịch vụ đó. Thông thường, đây là yêu cầu của chính người dùng dịch vụ này. Các thông tin đó có thể là mục tiêu của các tình báo thương mại hay nó có thể giúp đỡ đột nhập hệ thống.
Dịch vụ “finger” là một ví dụ. Các thông tin mà nó cung cấp có ích rất nhiều cho các kẻ mò mật khẩu hoặc mạo danh người sử dụng. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 5 Từ chối dịch vụ Các yêu cầu được gửi đến máy dịch vụ quá nhiều có thể gây nên tình trạng từ chối dịch vụ. Nguyên nhân ở đây là do các máy dịch vụ phải sản sinh nhiều tiến trình con và hệ thống phải cấp phát bộ nhớ và vùng đệm cho chúng.
Đến một lúc, tài nguyên hệ thống hết và dịch vụ trở nên “trơ” với các yêu cầu, nghĩa là nó không trả lời các yêu cầu từ người dùng. Làm tràn ngập mạng để dẫn đến từ chối dịch vụ là cách đơn giản và thông thường. Những kẻ tấn công thông minh hơn còn có thể làm tê liệt dịch vụ, định hướng lại hay thay thế các dịch vụ. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.
HIỂM HỌA VỀ AN NINH MẠNG. Ta xem xét khía cạnh an ninh của mạng dựa trên công nghệ Internet, sử dụng bộ giao thức TCP/IP: TCP/IP không có cơ chế xác thực đối với mỗi số liệu, do đó kẻ tấn công có thể dùng các gói số liệu giả mạo đánh lừa các hệ thống. Bản thân các giao thức thành phần trong bộ giao thức TCP/IP đều được thiết kế để làm việc với một loại gói số liệu nhất định, với một thủ tục thiết lập kết nối (thủ tục bắt tay) và trao đổi số liệu nhất định. Do đó, nếu các giao thức thành phần này phải làm việc ở một chế độ khác hay với một loạt giả mạo khi thiết lập kết nối và trao đổi số liệu thì rất có thể chúng ta sẽ suy yếu hay là sụp đổ cả hệ TCP/IP của hệ thống.
Các mô tả một số ví dụ về hiểm họa tấn công hệ thống. Sử dụng gói số liệu quá lớn (Ping of Death) Thực tế cho thấy, nhiều hệ thống có các phản ứng bất bình thường (ví dụ: hệ hoạt động suy sụp, bị treo hoặc bị khởi động lại) khi nhận được gói IP quá lớn. Cách thông thường nhất để lợi dụng điểm yếu này là thông qua gói ICMP được tạo ra bởi lệnh ping trong các hệ thống. ICMP là một giao thức hỗ trợ điều khiển trong bộ giao thức TCP/IP.
Thông thường, các lệnh ping đều tạo các gói số liệu có chứa 8 byte thông tin tiêu đề của ICMP và khoảng 64 byte số liệu. Nhưng các lệnh ping còn cho phép người dung tạo các gói lớn hơn nếu họ muốn. Một gói IP có độ dài lớn hơn 65536 byte được coi là không hợp lệ. Khi gói này được tạo ra và truyền đến đích nó sẽ bị phân mảnh trên đường truyền.
Khi các gói đến đích, chúng sẽ được tái lập thành gói ban đầu, với độ lớn 65536 bytes và làm tràn vùng đệm trên nhiều hệ thống. Giả địa chỉ IP Thông thường, đối với một mạng dùng riêng, có một hệ thống tường lửa (firewall) hay bộ lọc gói (parket filter) dùng ngăn chặn việc trao đổi số liệu không được phép giữa mạng dùng riêng và mạng bên ngoài. Trong trường hợp một hoặc nhiều máy thuộc mạng dùng riêng được “quy định” là tin cậy thì các dịch vụ đi từ những máy này đến máy đích không cần qua bất cứ LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 7 trình xác thực nào. Công việc này cho phép giảm thiểu các quá trình xác thực truy nhập vào các máy trong cùng mạng nội bộ.
Nếu kẻ tấn công bên ngoài gửi các gói vào mạng dùng riêng, có địa chỉ IP nguồn là địa chỉ IP của các máy tin cậy thì hệ thống tường lửa hay bộ lọc gói đều cho phép chúng đi qua. Phương pháp tấn công này được gọi là “giả địa chỉ IP” (IP spoofing). Nhờ phương pháp này, kẻ tấn công có thể đột nhập được vào các máy có đặt chế độ làm việc tin cậy và các máy khác trong mạng dùng riêng. Giả điều khiển TCP (TCP spoofing) Một kết nối TCP được định nghĩa đầy đủ với 4 tham số: địa chỉ IP nguồn, số hiệu cổng TCP nguồn, địa chỉ IP đích, số hiệu cổng TCP đích, Phần tiêu đề để gói IP chứa địa chỉ ICP nguồn, địa chỉ IP đích và phân loại giao thức vận chuyển (TCP=6).
Phần tiêu đề để gói TCP có chứa số hiệu cổng nguồn, số hiệu cổng đích, các số tuần tự (sequence) và báo nhận (acknowledge) cũng như các cờ như: SYN, ACK, RST, FIN,.v… Khi một gói IP đi qua một giao diện mạng của hệ thống, ta có thể đọc được nội dung của gói đó, bao gồm các giá trị trả lời số tuần tự STN/ACK hiện thời của các gói trên kết nối đó. Khi bắt được một gói, hệ thống của kẻ tấn công có thể tạo ra các gói số liệu IP giả có cùng địa chỉ IP nguồn, số hiệu cổng TCP nguồn cũng như các giá trị SEQ/ACK và các cờ của TCP đặt trong gói sao cho hệ thống đích bị đánh lừa, ngộ nhận gói số liệu thu được là gói số liệu của bên phát thật. Đồng thời, hệ thống của kẻ tấn công còn gửi gói TCP cho hệ thống nguồn với cờ FIN = 1 (kết thúc kết nối) hay cờ RST = 1 (khởi tạo lại) để đánh lừa hệ thống đích muốn kết thúc kết nối với hệ thống nguồn. Sau khi bị lừa, bên phát kết thúc kết nối vời hệ thống nguồn, Sau khi bị lừa, bên phát kết thúc kết nối TCP với bên thu, trong khi bên thu lại tưởng hệ thống của kẻ tấn công là bên phát và tiếp tục trao đổi số liệu.
Session hijacking LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 8 Khi bên phát S và bên thu D thiết lập kết nối cũng như truyền số liệu, mối tin tưởng của S và D với nhau là: địa chỉ IP nguồn, địa chỉ TCP nguồn, địa chỉ IP đích, địa chỉ TCP đích và các giá trị SEQ/ACK. Nếu kẻ tấn công (hacker) làm lẫn lộn các giá trị SEQ/ACK trong các gói từ S đến D thì D sẽ không còn tin tưởng các gói thật từ S đến nữa. Khi đó, kẻ tấn công sẽ giả làm S, dùng đúng các giá trị SEQ/ACK của S để tiếp tục trao đổi số liệu với D. Phương thức tấn công loại này, nghĩa là làm lẫn lộn các giá trị SEQ/ACK từ S đến D, được thực hiện bằng cách chèn các gói số liệu vào đúng thời điểm gói từ S đến D, làm cho D chấp nhận gói số liệu lừa này và cập nhật giá trị ACK của nó.