Ứng dụng mạng Neural trong hệ thống phát hiện xâm nhậ p( Intrusion Detection System IDS)

Một phần của tài liệu Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực Công nghệ thông tin (Trang 25)

III.1. Tổng quan về IDS và những nghiên cứu IDS ứng dụng mạng Neural

III.1.1.Định Nghĩa

Hệ thống phát hiện xâm nhập là một hệ thống giám sát lưu thông mạng, các hoạt động khả nghi và cảnh báo cho hệ thống, nhà quản trị.IDS cũng có thể phân biệt giữa những tấn công bên trong từ bên trong (từ những người trongcông ty) hay tấn công từ bên ngoài (từ các hacker). IDS phát hiện dựa trên các dấu hiệu đặc biệtvề các nguy cơ đã biết (giống như cách các phần mềm diệt virus dựa vào các dấu hiệu đặc biệt để phát hiện và diệt virus) hay dựa trên so sánh lưu thông mạng hiện tại với baseline (thông số đođạc chuẩn của hệ thống) để tìm ra các dấu hiệu khác thường

III.1.2.Phân loại

HIDS (Host Intrustion Detection System): triển khai trên máy trạm hoặc server quan trọng, chỉ để bảo vệ riêng từng máy.

Hình 3.1: Mô hình HIDS

NIDS (Network Intrustion Detection System): đặt tại những điểm quan trọng của hệ thống mạng, để phát hiện xâm nhập cho khu vực đó.

Hình 3.2: Mô hình NIDS

III.1.3.Chức năng của IDS

Hệ thống phát hiện xâm nhập cho phép các tổ chức bảo vệ hệ thống của họ khỏi những đe dọa vớiviệc gia tăng kết nối mạng và sự tin cậy của hệ thống thông tin. Những đe dọa đối với an ninhmạng ngày càng trở nên cấp thiết đã đặt ra câu hỏi cho các nhà an ninh mạng chuyên nghiệp cónên sử dụng hệ thống phát hiện xâm nhập trừ khi những đặc tính của hệ thống phát hiện xâm nhậplà hữu ích cho họ, bổ sung những điểm yếu của hệ thống khác…IDS có được chấp nhận là một thành phần thêm vào cho mọi hệ thống an toàn hay không vẫn là một câu hỏi của nhiều nhà quảntrị hệ thống. Có nhiều tài liệu giới thiệu về những chức năng mà IDS đã làm được. Sau đây là vài lý do do tại sao nên sử dụng hệ thống IDS:

• Bảo vệ tính toàn vẹn (integrity) của dữ liệu, bảo đảm sự nhất quán của dữ liệu

trong hệ thống.Các biện pháp đưa ra ngăn chặn được việc thay đổi bất hợp pháp hoặc phá hoại dữ liệu.

• Bảo vệ tính bí mật, giữ cho thông tin không bị lộ ra ngoài. Bảo vệ tính khả dụng, tức là hệ thốngluôn sẵn sàng thực hiện yêu cầu truy nhập thông tin của người dùng hợp pháp.

• Bảo vệ tính riêng tư, tức là đảm bảo cho người sử dụng khai thác tài nguyên

của hệ thống theođúng chức năng, nhiệm vụ đã được phân cấp, ngăn chặn được sự truy nhập thông tin bất hợp pháp.

• Cung cấp thông tin về sự xâm nhập, đưa ra những chính sách đối phó, khôi

phục, sửa chữa…

Nói tóm lại ta có thể tóm tắt IDS như sau:

• Chức năng quan trọng nhất là: giám sát – cảnh báo – bảo vệ

o Giám sát: lưu lượng mạng và các hoạt động khả nghi.

o Cảnh báo: báo cáo về tình trạng mạng cho hệ thống và nhà quản trị.

o Bảo vệ: Dùng những thiết lập mặc định và sự cấu hình từ nhà quản

trị mà có những hành độngthiết thực chống lại kẻ xâm nhập và phá hoại.

• Chức năng mở rộng:

o Phân biệt tấn công bên trong và tấn công bên ngoài.

o Phát hiện: những dấu hiệu bất thường dựa trên những gì đã biết hoặc

nhờ vào sự so sánh thônglượng mạng hiện tại với Baseline

o Ngăn chặn sự gia tăng của những tấn công

III.1.4.Hạn chế và hướng cải tiến ứng dụng mạng Neural

Các hệ thống IDS thực hiện việc kiểm soát một hệ thống bằng cách tìm kiếm các “dấu vết” nhất định của các hành vi. Tuy nhiên, việc sử dụng phương pháp này hầu hết đều không thể phát triển các cơ sở dữ liệu đủ thông minh nhằm cảnh báo các hiểm hoạ tấn công. Sở dĩ có điều này là do ba nguyên nhân. Đầu tiên, các dấu hiệu này phải ở dạng hand-coded (nhập liệu thủ công). Các dấu hiệu tấn công đã được nhận dạng thì đã được mã hoá trong cơ sở dữ liệu, đối lập với các dấu hiệu mà IDS sử dụng để nhận biết hành vi hiện tại, các hệ thống như vậy có thể thấy rằng rất cứng nhắc. Thứ hai, có vô vàn các phương thức tấn công cùng với các dị bản của nó, như vậy cần phải có một cơ sở dữ liệu với kích thước vô tận để có thể phát hiện tất cả các tấn công có thể xảy ra. Đương nhiên

điều này là không thể thực hiện được và một khi có bất kỳ một sự tấn công nào đấy không được nhận diện chính xác sẽ là một hiểm hoạ tiềm ẩn đối với hệ thống. Vấn đề thứ 3 là các phương pháp hiện tại thường xảy ra nhiều cảnh báo sai, vì vậy nó không chỉ ngăn cản đối với các cuộc tấn công mới mà có thể còn cản trở các hoạt động hợp pháp. (adsbygoogle = window.adsbygoogle || []).push({});

Hướng ứng dụng mạng Neural nhằm xây dựng một hệ thống IDS có khả năng “học” các hành vi tấn công và có thể xác định được các cuộc tấn công mới mà không cần phải cập nhật lại hệ thống. Điều này là khả quan. Một hệ thống uyển chuyển như vậy sẽ không cần thiết phải có một cơ sở dữ liệu cập nhật thủ công của các dấu hiệu tấn công, bên cạnh đó nó có thể xác định các cuộc tấn công mới dựa trên các mẫu học và không bị phụ thuộc vào các luật học của hãng thứ ba.

III.2. ứng dụng mạng Neural trong IDS

Trong phần này, ta sẽ đi xem xét việc ứng mạng Neural lan truyền ngược trong hệ thống phát hiện xâm nhập

Mạng lan truyền ngược (BP) là mô hình mạng Neural truyền thắng được sử dụng phổ biến nhất. Nhằm mục đích khắc phục tỉ lệ cảnh báo sai cao và tỉ lệ báo cáo lỗi của IDS truyền thống, chúng ta thiết kế hệ thống IDS dựa trên mạng Neural BP. Với lượng lớn dữ liệu mẫu, việc dạy của giá trị trọng số được cải thiện so với các mạng Neural lan truyền ngược truyền thống và sự mô phỏng, các kết quả thể hiện phương pháp là có hiệu quả.

Là một sự thay thế của IDS truyền thống, mạng Neural được sử dụng để định danh đặc trưng điển hình để phân biệt sự thay đổi bất thường. Hệ thống kết hợp mẫu so khớp với mạng Neural nhân tạo, dạng IDS động có thể mở rộng dựa trên nguyên lý (nguyên tắc) xâm nhập đã biết, rồi tự điều chỉnh tách (trích rút) các đặc trưng, cuối cùng hoàn thành sự phát hiện xâm nhập hiệu quả cao. Hệ thống lọc sự kiện đáng nghi và chuyển sự kiện này đến hệ thống để xử lý nhiều hơn. Kết cấu có thể giảm chi tiêu của hệ thống và tỷ lệ cảnh báo sai của IDS. Mô hình IDS dựa trên mạng Neural được hiển thị như dưới hình 11

Hình 11: Mô hình IDS dựa trên mạng Neural

Mạng Neural tăng thêm khả năng dự báo bằng kiểu đặc trưng bình thường (normal characteristic mode). IDS dựa trên mạng Neural có khả năng tự điều chỉnh bằng việc dạy mẫu xâm nhập mới. Khi hệ thống được học chế độ làm việc bình thường và có thể tác động trở lại các sự kiện không bình thường, rồi tìm một số kiểu tấn công mới.

III.2.1.Kiểm tra dữ liệu và xử lý

III.2.1.1. Kiểm tra dữ liệu

Để nhận được ánh xạ của IDS, chúng ta cũng có thể để ý một vài nhóm hoạt động thực tế như là học mẫu bằng giá trị trạng thái khác nhau và đánh dấu có hoặc không có xâm nhập.

Bản ghi file log của server WWW được mô tả như dưới đây: Log_file_record=(Host_name(IP),

Process_time,URL_object,Request,Access_result_status)

Host_name: operator of URL_object, for example user address, user name;

Process_time:the process time;

URL_object:URL object;

Request: user detail request, e.g., get resources, change resources and so on; ( biểu diến bằng 3 bit : GET – 001, Head – 010)

Access_result_status: trạng thái truy cập và được biểu diễn bằng mã nhị phân. Kết quả của Access_result_status bao gồm: thành công (success), yêu cầu lỗi (request error), sắp xếp lại (rearrange), không được cho phép (non-authorization) và các kết quả khác.

Giá sử, tổng số sự kiện thu thập là 1688, sau đó các sự kiện đó được chia thành 3 phần: một phần sử dụng cho việc dạy việc huấn luyện và tìm kiếm mô hình mạng, một phần kiểm tra tính khả dụng của mô hình, phần cuối sử dụng phát hiện đúng.

Bởi vì hệ thống phi tuyến, giá trị khởi đầu của dữ liệu là rất liên quan nếu tỷ lệ học (learning training) là tới cục bộ nhỏ nhất và hội tụ. Trọng số khởi đầu làm giá trị trạng thái mỗi Neural thành phần gần tới 0 trong sự liên tục bổ sung của đầu vào, trọng số thường thường lựa chọn sô ngẫu nhiên nhỏ hơn.

Bởi vì mỗi giá trị hệ số của vectorr đầu vào ban đầu là rất khác nhau, tác động trên trọng số trở lên rất đều, nó cần thiết để định mức vector đầu vào ban đầu bằng việc chuẩn hóa để khởi động đầu vào lớn hơn vẫn đặt trong những bậc (grad) lớn của hàm truyền. Phương trình chuẩn hóa là :

min max min x x x x x − − =

III.2.1.2. Quyết định của tổng số nút lớp ẩn

Số nút mạng Neural thường thường được quyết định bởi phương trình thực nghiệm hoặc thử nghiệm lặp. Trong khi phương trình thực nghiệm cần nhiều sự thừa

2000, độ chính xác việc dạy là 0.002, tỷ lệ dạy là 0.03, hệ số động lượng là 0.01, số nút lớp ẩn lựa chọn 3-15, như thể hiện trên bảng 1 cho sự so sánh.

Bảng 1: Số nút lớp ẩn ảnh hưởng tới các mạng huấn luyện lỗi

Tổng số nút 3 4 5 6 Lỗi huấn luyện 0.9533 0.6880 0.5275 0.5500 Tổng số nút 7 8 9 10 Lỗi huấn luyện 0.4633 0.4010 0.3313 0.2249 Tổng số nút 11 12 13 14 15 Lỗi huấn luyện 0.1745 0.1458 0.1606 0.1568 0.1481

Như đã đề cập trong 2 bảng trước đó, khi tổng số nút lớp ẩn từ 3 đến 12, tất cả lỗi dần dần trở lên nhỏ, trong khi tổng số lớp ẩn lần nữa bắt đẩu tăng từ 12, tất cả lỗi dao động gần 0.1458, không còn ít, đến trạng thái ổn định. Do đó, lựa chọn 12 như tổng số

nút lớp ẩn là phù hợp. Theo lý thuyết, phương trình thực nghiệm: n1 = n+m

+ a, ở đó m

định nghĩa số phần tử Neural (thực nghiệm ở đây là 3), n định nghĩa như là số nút đầu (adsbygoogle = window.adsbygoogle || []).push({});

vào (thực nghiệm ở đây là 7), a là hằng số giữa 1 và 10, n1 là số nút lớp ẩn. Theo như phương trình thực nghiệm, n1 nên ở giữa 4 và 14. Giá trị n1 là 12 bằng thực nghiệm lỗi kiểm tra dữ liệu, và nó giống như giá trị từ chương trình thực nghiệm.

III.2.1.3. Kiểm tra mô phỏng

Với một cái nhìn đơn giản cho việc thực nghiệm, chúng ta biểu diễn sự thu thập dữ liệu đầu vào. Đầu vào của mạng Neural được tạo thành bởi trường quan trọng của tiêu đề TCP và IP. Các trường của đầu đề IP bao gồm độ dài của đầu để, tổng số độ dài, thời gian sống, địa chỉ nguồn, địa chỉ đích. Trường tiêu đề của TCP bao gồm cổng nguồn, cổng đích, bit điều khiển. Dữ liệu đầu vào thông qua hệ thống số thập phân, tất cả giá trị của các trường sẽ chuyển sang dữ liệu thập phân bằng chương trình lọc tới tiêu chuẩn hóa. Mẫu dạy của các gói ngoại lệ được sinh ra bởi các tấn công mô phỏng.

Sử dụng thuật toán BP truyền thống, chúng ta sửa chữa trọng số sau mỗi đầu vào của mỗi mẫu. Bởi vì lượng dữ liệu dạy thường lớn, hệ thống sẽ cộng tất cả lỗi để thu được tổng lỗi sau khi tất cả giá trị của mẫu được đặt vào trong giai đoạn dạy, sau đó tập trung vào sự điều chỉnh trọng số. Các dạng mạng phù hợp giá trị trọng số và giá trị ngưỡng, sau đó phát hiện dữ liệu của liên kết mạng. Liên kết mạng Neural cái mà kinh nghiệm dạy sẽ có tốc độ nhanh.

Các kết quả thực nghiệm bằng như hiển thị dưới hình 3 và 4 bằng chương trình MATLAB7.7. Chúng ta lựa chọn tổng số chu trình lớn nhất là 2000, độ chính xác việc dạy là 0.01, hệ số động lực là 0.01, số nút lớp ẩn là 12, tỷ lệ học là 0.03. Lớp đầu ra có một phần tử Neural, giá trị của đầu ra mạng là giữa 0 và 1, đầu ra 0 thể hiện không có tấn công, đầu ra 1 thể hiện tấn công, hoặc đầu ra gần tới 0 là không có tấn công, gần 1 là tấn công.

Các mạng Neural BP đạt tới độ chính xác. Do đó, điều này thể hiện rằng hệ thống là một IDS tốt.

Hình 10: Mô phỏng kiểm tra 1

Hình 11: Mô phỏng kiểm tra 2

Như vậy :Ưu điểm của mạng Neural nhân tạo là : Khi các tấn công mới xuất hiện, nó có thể được phát hiện và bị dừng lại. Nói cách khác, IDS truyền thống cần một thời gian dài để phân tích và thiết bị hãm, sau đó làm mới các luật. Vấn đề chính của các mạng Neural BP là sụ thiếu tính làm rõ được thông tin ( thiếu khả năng trình diễn thông tin).

Kết Luận

Với những sự thông minh và những ứng dụng cũng như những tiềm năng của mạng Neural, có thể nói mạng Neural sẽ còn nhiều đóng góp to lớn vào sự phát triển của ngành trí tuệ nhân tạo trong tương lai gần. Trong bài thu hoạch của em đã trình bày về định nghĩa, cách hoạt dộng, các phương pháp huấn luyện mạng Neural cũng như những ứng dụng của nó trong nhiều lĩnh vực khác nhau. Tuy nhiên do còn nhiều mặt hạn chế về nền tảng kiến thức cũng như về mặt thời gian nên bài thu hoahc này chỉ khái quát được phần nào kiến thức về mặt lý thuyết, chưa thực sự hoàn thiện và chưa đưa ra được sản phẩm. Hướng phát triển trong thời gian tới sẽ là nghiên cứu hoàn thiện hơn các điểm yếu về mặt kiến thức để có thể cụ thể hóa hơn ứng dụng trong hệ thống phát hiện xâm nhập. Để làm được điều này em rất mong nhận được những ý kiến đóng góp nhằm hoàn thiện hơn nữa hiểu biết của mình.

Tài liệu tham khảo

[1]. Lý thuyết mạng noron nhân tạo.

[2]. Bài nghiên cứu: Công cụ cảnh báo thời gian thực tấn công DoS sử dụng bản đồ tự

tổ chức, Phan Thanh Nam – Lớp CH2 – Trường ĐHCNTT HCM.

[3]. ZHENG, H.L. Yang: Implementation of Intrusion Detection Classifier System

Based on the BP Network, Journal of Hefei University of Technology (2003)

[4]. GUO, C.Y., YU X.L.: An Intrusion Detection Model Based on Neural Network,

Journal of Taiyuan University of Technology (2001)

[5] Tìm hiểu mạng neural nhân tạo cho bài toán nhận dạng.

Một phần của tài liệu Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực Công nghệ thông tin (Trang 25)