Công nghệ thông tin<br />
<br />
CẢNH BÁO AN NINH THÔNG MINH<br />
ỨNG DỤNG HỆ MIỄN DỊCH NHÂN TẠO<br />
Vũ Văn Cảnh*, Hoàng Tuấn Hảo<br />
Tóm tắt: Trong lĩnh vực bảo mật máy tính, cảnh báo an ninh, phát hiện xâm<br />
nhập (ID) là một cơ chế tìm ra truy cập bất thường vào hệ thống mạng, máy tính<br />
bằng cách phân tích các tương tác khác nhau. Các kỹ thuật ID hiện nay có tỷ lệ<br />
phát hiện, cảnh báo an ninh nhầm khá lớn, do đó, cần có những giải pháp nhằm<br />
giảm tỷ lệ cảnh báo nhầm. Các kỹ thuật tính toán thông minh đang được nghiên cứu<br />
nhằm nâng cao tỷ lệ phát hiện và đưa ra cảnh báo chính xác. Đã có một số công<br />
trình nghiên cứu về hệ thống miễn dịch nhân tạo (AIS), tuy nhiên, các nghiên cứu<br />
này cơ bản thiên về khảo sát phương pháp tiếp cận dựa trên AIS. Ứng dụng AIS<br />
trong ID hiện đang là hướng mới cho kỹ thuật phát hiện xâm nhập, cảnh báo an<br />
ninh. Trong bài báo này, nhóm tác giả trình bày một số nội dung cơ bản của hệ<br />
miễn dịch nhân tạo, các kết quả nghiên cứu ứng dụng hệ miễn dịch nhân tạo trong<br />
việc phát hiện xâm nhập mạng được thực hiện tại Phòng thí nghiệm An ninh mạng -<br />
Học viện Kỹ thuật quân sự.<br />
Từ khóa: Học máy, Xâm nhập mạng, Phát hiện xâm nhập, Cảnh báo an ninh, Hệ miễn dịch nhân tạo.<br />
<br />
1. GIỚI THIỆU<br />
Cùng với sự phát triển của mạng máy tính, vấn đề an ninh mạng cũng đang đối<br />
mặt với những thách thức lớn, ngày càng có nhiều hành vi xâm nhập trái phép vào<br />
hệ thống mạng nhằm phá hoại, ăn cắp thông tin với nhiều hình thức khác nhau,<br />
tinh vi hơn. Để giải quyết vấn đề này, nhiều kỹ thuật phát hiện xâm nhập mạng,<br />
cảnh báo an ninh đã được nghiên cứu và ứng dụng, tuy nhiên, các kỹ thuật này<br />
chưa có hiệu quả cao đối với các hình thức tấn công xâm nhập mới, ngày càng tinh<br />
vi với nhiều biến thể khác nhau.<br />
Làm thế nào để chúng ta có thể phát hiện xâm nhập, đưa ra cảnh báo an ninh có<br />
hiệu quả với tất cả các hành vi tấn công, xâm nhập trái phép vào hệ thống máy<br />
tính? Nhiều công trình nghiên cứu đã được thực hiện, Anderson J.P [1] đưa ra quan<br />
điểm phát hiện xâm nhập vào hệ thống máy tính, đến năm 1980 Anderson đã đưa<br />
ra khái niệm về hệ thống phát hiện xâm nhập (IDS) mạng máy tính. Năm 1987,<br />
Denning D.E đưa ra mô hình hệ thống chuyên gia phát hiện xâm nhập (IDES) [5].<br />
Năm 1990 đã tạo ra bước ngoặt trong lịch sử phát hiện xâm nhập, Heberlein L.T<br />
phát triển mô hình giám sát an ninh mạng [10]. Sau đó, ID chính thức được phân<br />
chia thành 2 dạng: Hệ thống phát hiện xâm nhập dựa trên mạng (Network Intrusion<br />
<br />
<br />
42 V. V. Cảnh, H. T. Hảo, “Cảnh báo an ninh thông minh ứng dụng hệ miễn dịch nhân tạo.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
Detection System - NIDS) và hệ thống phát hiện xâm nhập dựa trên máy trạm<br />
(Host-based Intrusion Detection System). Hiện nay, ID đang là một chủ đề nghiên<br />
cứu được rất nhiều nhà nghiên cứu về bảo mật, an ninh mạng máy tính quan tâm,<br />
phát triển.<br />
Những năm gần đây, một số nghiên cứu đã áp dụng lý thuyết miễn dịch học cho<br />
hệ thống phát hiện xâm nhập, các nghiên cứu này được gọi là hệ miễn dịch nhân<br />
tạo (Artificial Immune System - AIS) [8]. Các nghiên cứu đã đóng góp đáng kể<br />
vào sự phát triển của AIS, nhiều công trình liên quan đã được ứng dụng như phát<br />
hiện gian lận [14], tối ưu hóa [9], học máy [3], robotics [13] và bảo mật máy tính<br />
[12]. Hầu hết các nghiên cứu về IDS dựa trên AIS cơ bản chỉ dừng lại ở mức độ<br />
đưa ra quan điểm sử dụng thuật toán và phát triển hệ thống. Trong nghiên cứu,<br />
chúng tôi nghiên cứu một số khía cạnh của AIS ứng dụng trong phát hiện xâm<br />
nhập mạng.<br />
Phần còn lại của bài báo, chúng tôi giới thiệu nền tảng AIS và mô hình thiết kế<br />
cho AIS. Hệ phát hiện xâm nhập được trình bày chi tiết trong phần 2. Phần 3 trình<br />
bày về mô hình AIS trong cảnh báo an ninh, thực nghiệm và kết quả sẽ được trình<br />
bày trong phần 4. Một số nhận xét, kết luận và định hướng nghiên cứu tiếp theo<br />
được trình bày trong phần 5.<br />
<br />
2. KIẾN THỨC NỀN TẢNG<br />
2.1. Hệ miễn dịch sinh học<br />
Hệ miễn dịch là hệ thống sinh học bảo vệ cơ thể chống lại những tấn công liên<br />
tục từ các sinh vật, tác động bên ngoài. Đây là mạng lưới vô cùng phức tạp của các<br />
tế bào, mô và các bộ phận giúp bảo vệ cơ thể khỏi các tác nhân xâm nhập như vi<br />
khuẩn, virus, ký sinh trùng, cũng như các rối loạn của tế bào. Hệ miễn dịch tạo ra<br />
các kháng thể và các tế bào đặc biệt để tấn công các sinh vật lạ thâm nhập cơ thể<br />
sống. Một trong những hệ miễn dịch được truyền từ đời này sang đời kia theo di<br />
truyền được gọi là hệ miễn dịch bẩm sinh, cơ thể ngay từ khi ra đời đã luôn ở trạng<br />
thái sẵn sàng nhận diện, loại bỏ và tiêu diệt các vi sinh vật lạ. Bên cạnh đó, cùng<br />
với sự phát triển của cơ thể sẽ tạo ra các hệ miễn dịch tham gia vào việc bảo vệ cơ<br />
thể, được gọi là hệ miễn dịch thích nghi, có hiệu quả hơn trong việc bảo vệ cơ thể<br />
chống lại các vi sinh vật mới.<br />
Hệ miễn dịch thực hiện nhận diện, ngăn chặn và loại bỏ những vi sinh vật xâm<br />
nhập vào cơ thể; chúng nhận dạng tế bào và phân chia thành hai nhóm khác nhau:<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san An toàn Thông tin, 05 - 2017 43<br />
Công nghệ thông tin<br />
<br />
self (những tế bào của cơ thể tạo ra) và nonself (những tế bào lạ), đồng thời loại bỏ<br />
các tế bào thuộc loại nonself.<br />
Hệ miễn dịch thực hiện cơ chế miễn dịch thông qua 3 lớp được mô tả trong hình 1.<br />
<br />
<br />
<br />
<br />
Hình 1. Các lớp của hệ miễn dịch sinh học.<br />
Khi các chất lạ xâm nhập vào cơ thể, các tế bào thực bào và kháng thể sẽ tiến<br />
hành ngăn chặn (lớp vật lý), trường hợp các chất lạ là các vi sinh vật bình thường<br />
sẽ bị ngăn chặn và giết chết. Trường hợp các vi sinh vật vượt qua lớp vật lý nó sẽ<br />
bị ngăn chặn và đào thải ra khỏi cơ thể bởi lớp sinh hóa, trong lớp này chứa các<br />
enzym có thể loại bỏ các kháng nguyên bởi các axit và nhiệt độ cơ thể. Một số sinh<br />
vật có cấu trúc mạnh mẽ hơn, vượt qua 2 lớp bảo vệ trên sẽ đi sâu vào cơ thể, khi<br />
này hệ thống miễn dịch bẩm sinh và miễn dịch thích nghi sẽ kích hoạt các cơ chết<br />
bảo vệ để giết chết vi sinh vật xâm nhập.<br />
2.2. Hệ miễn dịch nhân tạo<br />
Hệ miễn dịch nhân tạo (AIS) lấy ý tưởng của hệ miễn dịch học thích nghi và<br />
những chức năng, nguyên tắc, mô hình miễn dịch quan sát được, áp dụng để giải<br />
các bài toán thực tế [4]. AIS có phạm vi ứng dụng rất rộng rãi như nhận dạng mẫu,<br />
an ninh máy tính, lập lịch, tìm kiếm tối ưu và điều khiển tự động.<br />
Trong các thuật toán mô phỏng tiến hoá sinh học, đối tượng tiến hóa là tập các<br />
nhiễm sắc thể nhân tạo (quần thể), quần thể này trải qua quá trình chọn lọc, sinh<br />
sản và đột biến gien. Quá trình này lặp lại nhiều lần, sau mỗi lần thực hiện sẽ nhận<br />
được quần thể mới tiến hóa (tốt) hơn. Để xây dựng được cấu trúc cơ bản của mô<br />
hình này người ta phải biểu diễn được gien các cá thể trong quần thể, cùng với các<br />
thủ tục lựa chọn, sản sinh và đột biến gien. Cấu trúc cơ bản của hệ thống phỏng<br />
sinh học cần có 03 yếu tố cơ bản đó là biểu diễn các thành phần hệ thống, cơ chế<br />
<br />
<br />
44 V. V. Cảnh, H. T. Hảo, “Cảnh báo an ninh thông minh ứng dụng hệ miễn dịch nhân tạo.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
đánh giá tương tác các cá thể với môi trường và các cá thể với nhau và các thủ tục<br />
thích nghi điều khiển tính động của hệ thống, tức là làm cho hoạt động của hệ<br />
thống thay đổi theo thời gian.<br />
<br />
<br />
<br />
<br />
Hình 2. Cấu trúc phân lớp của AIS.<br />
Hệ miễn dịch nhân tạo có thể được xây dựng theo cấu trúc phân lớp gồm 03 lớp<br />
biểu diễn như hình 2.<br />
Các lĩnh vực ứng dụng là cơ sở để xây dựng AIS, đối với mỗi lĩnh vực ứng<br />
dụng sẽ quyết định các thành phần và cách thức biểu diễn, các thao tác khác nhau<br />
trên AIS. Lời giải bài toán sẽ được cập nhật lại sau khi một quần thể mới được tạo<br />
ra và đưa ra kết quả khi đạt được điều kiện kết thúc nào đó [15].<br />
Lớp biểu diễn trong AIS bao gồm 2 thành phần quan trọng là kháng thể và<br />
kháng nguyên. Trong lớp các phương pháp đánh giá độ thích nghi có thể sử dụng<br />
nhiều phương pháp khác nhau như khoảng cách Hamming, Euclid và Mahattan.<br />
Trong lớp các thuật toán miễn dịch có thể sử dụng các thuật toán như chọn lọc tích<br />
cực, chọn lọc tiêu cực, chọn lọc vô tính... để điều chỉnh tính động của AIS [15].<br />
Khả năng phân biệt giữa mình (Self) và không phải mình (NonSelf) là một chức<br />
năng quan trọng nhất trong hệ thống miễn dịch, trong đó, kháng thể và kháng<br />
nguyên kết hợp với nhau như một sự phù hợp, và có thể mô tả như khối lồi và lõm<br />
trên bề mặt 2 phần tử (hình 3). Do vậy, để mô tả hình dạng tổng quát của kháng thể<br />
và kháng nguyên cũng như thể hiện sự kết hợp giữa chúng, ta có thể biểu diễn<br />
kháng thể và kháng nguyên là một tập các khối lồi, lõm với 3 tham số chiều cao,<br />
chiều rộng và chiều dài. Tổng quát hơn ta có thể biểu diễn kháng thể và kháng<br />
nguyên như một tập L tham số.<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san An toàn Thông tin, 05 - 2017 45<br />
Công nghệ thông tin<br />
<br />
<br />
<br />
<br />
Hình 3. Kháng thể (Antibody) nhận diện kháng nguyên (Antigen) dựa vào phần bù.<br />
Mỗi kháng thể và kháng nguyên có thể coi như một chuỗi thuộc tính<br />
trong không gian S với L chiều. Mỗi phần tử chính là một điểm<br />
trong không gian S. Không mất tính tổng quát ta có thể giả sử kháng thể và kháng<br />
nguyên có cùng độ dài là L. Tổng quát một kháng thể được biểu diễn bởi vector<br />
và một kháng nguyên được biểu diễn bởi vector<br />
; để xác định tương tác của các kháng thể với nhau và kháng<br />
thể với kháng nguyên có thể dùng công thức tính khoảng cách để đo độ thích hợp<br />
của 2 phần tử.<br />
Việc đánh giá tương tác giữa các phần tử dựa vào việc tính toán khoảng cách<br />
không gian Euclid và Mahattan để<br />
đánh giá độ thích hợp giữa các thành phần của AIS trong không gian thực. Trong<br />
không gian Hamming, các kháng nguyên và kháng thể được biểu diễn đưới dạng<br />
dãy các ký hiệu trên tập hữu hạn k mẫu tự và việc đánh giá độ thích hợp giữa hai<br />
chuỗi thuộc tính có độ dài L trong không gian Hamming, như sau:<br />
<br />
(1)<br />
<br />
Việc tính toán khoảng cách ở trên không chỉ dùng để biểu diễn tương tác giữa<br />
các kháng thể với kháng nguyên, mà còn có thể dùng để biểu diễn sự tương tác của<br />
kháng thể với kháng nguyên và được sử dụng để xác định tương tác giữa các phần<br />
tử trong AIS. Bên cạnh đó trong các bài toán thường quy định một ngưỡng để<br />
xác định sự tương tác giữa các phần tử. Dựa vào ngưỡng này mà ta có thể xác định<br />
được 2 phần tử có thể tương tác với nhau hay nhận diện được nhau.<br />
2.3. Hệ miễn dịch ứng dụng trong an ninh máy tính<br />
Trong lĩnh vực an ninh máy tính, mục tiêu quan trọng là làm sao phát hiện và<br />
ngăn chặn các truy cập bất hợp pháp và các mã độc. Các nguyên tắc phát hiện và<br />
loại bỏ vi sinh vật lây nhiễm trên hệ miễn dịch sinh học được áp dụng cho thiết kế<br />
hệ thống an ninh máy tính. Cách tiếp cận tự nhiên này cho phép xây dựng các hệ<br />
thống phát hiện và phòng chống xâm nhập thông minh có khả năng tự động phát<br />
<br />
46 V. V. Cảnh, H. T. Hảo, “Cảnh báo an ninh thông minh ứng dụng hệ miễn dịch nhân tạo.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
hiện, cảnh báo sớm các truy cập bất hợp pháp, đây là hướng nghiên cứu có nhiều<br />
triển vọng trong tương lai [16].<br />
Bảng 1. Minh họa ánh xạ giữa các thành phần trong hệ miễn dịch sinh học với<br />
kiến trúc môi trường mạng máy tính.<br />
Hệ miễn dịch sinh học Môi trường mạng<br />
Tế bào Tiến trình hoạt động trong một máy tính<br />
Cơ quan đa bào Máy tính chạy đa tiến trình<br />
Số lượng cơ quan Các máy tính trong mạng<br />
Mật khẩu, quyền truy cập file, truy cập nhóm<br />
Da và hệ miễn dịch bẩm sinh<br />
người dùng,…<br />
Một tiến trình có khả năng kiểm soạt các tiến<br />
Hệ miễn dịch thích nghi<br />
trình khác để phát hiện bất thường<br />
Đáp ứng tự miễn dịch Cảnh báo<br />
Self Hành vi bình thường<br />
Nonself Hành vi bất thường<br />
<br />
Trong hệ thống an ninh máy tính, xem xét sự thay đổi bất thường của dữ liệu<br />
trong máy tính nhằm xác định máy tính có bị xâm nhập trái phép hay không để đưa<br />
ra các cảnh báo. Thông thường, những sự thay đổi này là hành vi hay kết quả của<br />
các cuộc tấn công vào hệ thống máy tính, thường tấn công từ môi trường mạng.<br />
Bảng 2. Minh họa ánh xạ giữa các thành phần của hệ miễn dịch sinh học với quản<br />
lý, điều hành trên máy tính.<br />
Hệ miễn dịch Môi trường máy tính<br />
Tế bào File dữ liệu<br />
Cơ quan Tập hợp các file của chương trình<br />
Mật khẩu, quyền truy cập file, truy cập nhóm<br />
Da và hệ miễn dịch bẩm sinh<br />
người dùng,…<br />
Hệ miễn dịch nhân tạo (có khả năng kiểm soát và<br />
Hệ miễn dịch thích nghi<br />
phát hiện, cảnh báo những thay đổi của dữ liệu)<br />
Đáp ứng tự miễn dịch Cảnh báo<br />
Self Hành vi bình thường<br />
Non-Self Hành vi bất thường<br />
<br />
Kết hợp với việc phân tích log, người quản trị có thể biết được nguồn gốc, mục<br />
tiêu xâm nhập trái phép, để có phương pháp ngăn chặn kịp thời.<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san An toàn Thông tin, 05 - 2017 47<br />
Công nghệ thông tin<br />
<br />
3. MÔ HÌNH HỆ MIỄN DỊCH NHÂN TẠO TRONG<br />
CẢNH BÁO AN NINH THÔNG MINH<br />
3.1. Mô hình AIS trong cảnh báo an ninh thông minh<br />
Trên cơ sở lý thuyết về hệ miễn dịch sinh học, hệ miễn dịch nhân tạo và các vấn<br />
đề an ninh mạng, mô hình AIS được xây dựng với mục đích phát hiện thay đổi bất<br />
thường của dữ liệu (hình 3). Người quản trị hệ thống dựa vào các cảnh báo về sự<br />
thay đổi dữ liệu cùng với các phương thức khác như phân tích log... để đưa ra kết<br />
luận chính xác về sự thay đổi của dữ liệu, dựa vào kết quả phân tích mà người<br />
quản trị có thể ngăn chặn ngay những hành vi bất hợp pháp.<br />
<br />
<br />
<br />
<br />
Hình 4. Mô hình thiết kế hệ miễn dịch nhân tạo.<br />
Với mô hình này, lĩnh vực ứng dụng nhằm mục đích theo dõi, phát hiện sự thay<br />
đổi dữ liệu, làm cơ sở để người dùng kiểm tra phát hiện xâm nhập trái phép trước<br />
khi có các rủi do lớn hơn có thể xảy ra, thông báo tới hệ thống an ninh mạng để<br />
theo dõi và hoàn thiện giải pháp bảo vệ hệ thống. Các thành phần AIS được mô tả<br />
trong bảng 3. Phương pháp đánh giá độ thích hợp theo quy tắc khớp R-Chunk<br />
(mục 3.3). Thuật toán miễn dịch theo thuật toán chọn lọc tiêu cực để phân biệt self-<br />
nonself (mục 3.2). Lời giải của mô hình là kết quả phát hiện dữ liệu có sự thay đổi<br />
hay không và gửi các thông điệp cảnh báo khi phát hiện sự bất thường của dữ liệu.<br />
Bảng 3. Mô tả ánh xạ thành phần hệ miễn dịch sinh học và AIS.<br />
Hệ miễn dịch sinh học Hệ miễn dịch nhân tạo<br />
Kháng thể Bộ dò của chương trình<br />
Kháng nguyên Chuỗi bít rút ra từ file cần kiểm tra<br />
Cơ quan thụ cảm Luật so khớp (R-chunk)<br />
Quá trình chọn lọc âm tính Thuật toán chọn lọc âm tính<br />
<br />
<br />
48 V. V. Cảnh, H. T. Hảo, “Cảnh báo an ninh thông minh ứng dụng hệ miễn dịch nhân tạo.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
Trong các thành phần trong AIS, khái niệm Self là một tập S bao gồm các xâu<br />
(các tập tin) cần được bảo vệ, NonSelf là tập các xâu không thuộc tập<br />
S mà bộ dò có thể so khớp được. Tập dò là các sâu có thể được so khớp với<br />
NonSelf nhằm mục đích xác định các xâu lạ trong S.<br />
3.2. Thuật toán chọn lọc tiêu cực<br />
Thuật toán chọn lọc tiêu cực được sử dụng để phát hiện sự thay đổi bất thường<br />
của dữ liệu và đưa ra các cảnh báo xâm nhập, cảnh báo an ninh mạng. Nhằm phân<br />
biệt Self – NonSelf (SNS) [6], hệ miễn dịch nhân tạo dựa trên nguyên tắc hoạt động<br />
của hệ miễn dịch sinh học, để tiến hành nhận dạng các dữ liệu cần bảo vệ, từ đó<br />
phân tích tìm ra sự thay đổi bất thường của dữ liệu và đưa ra những cảnh báo kịp<br />
thời cho người sử dụng. Trên cơ sở thuật toán chọn lọc tiêu cực (NSA), dựa trên<br />
một tập bộ dò, thuật toán cho phép tìm kiếm những thay đổi bất thường của dữ liệu<br />
(các file dữ liệu) trong máy tính khi dữ liệu nằm trong tầm bảo vệ của chương<br />
trình. Về bản chất, đây là một phương pháp chứng thực các file trên hệ thống máy<br />
tính, kiểm tra sự thay đổi của các file [6]. Thuật toán được chia thành 2 giai đoạn,<br />
giai đoạn sinh ra tập bộ dò và giai đoạn kiểm tra.<br />
3.2.1. Giai đoạn sinh tập bộ dò<br />
Mỗi bộ dò là một chuỗi mà nó không khớp được với bất cứ chuỗi dữ liệu nào<br />
được bảo vệ, tập dữ liệu bộ dò được sinh ra theo các bước như sau:<br />
Bước 1: Sinh ra các chuỗi tế bào có độ dài ℓ từ các file cần bảo vệ trong máy tính.<br />
Bước 2: Sinh ngẫu nhiên một chuỗi có độ dài ℓ.<br />
Bước 3: Tiến hành so khớp với tất cả các chuỗi tế bào của tập bộ dò, nếu<br />
khớp được với bất kì chuỗi tế bào nào thì quay lại bước 2, nếu không chuyển sang<br />
bước 4.<br />
Bước 4: Nạp chuỗi vào tập bộ dò, nếu tập bộ dò đã đủ số lượng phần tử<br />
thì kết thúc, nếu không quay lại bước 2.<br />
3.2.2. Giai đoạn theo dõi dữ liệu<br />
Giai đoạn này thực hiện so khớp dữ liệu với tập bộ dò được tạo ra ở giai đoạn<br />
trước nhằm bảo vệ dữ liệu, nếu bất kì chuỗi dữ liệu được bảo vệ nào khớp với bộ<br />
dò thì một thay đổi được xác nhận [2].<br />
Ví dụ, chuỗi tế bào S dài 32 bit: 10100010010100000100101011010101. Để<br />
sinh ra tập bộ dò, đầu tiên tách chuỗi tế bào thành những phần có độ dài bằng nhau<br />
(giả sử trong trường hợp này tách 8 chuỗi con):<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san An toàn Thông tin, 05 - 2017 49<br />
Công nghệ thông tin<br />
<br />
1 0 0 0 0 1 1 0<br />
010 010 101 000 100 010 101 101<br />
Sau đó tiến hành sinh ngẫu nhiên các chuỗi R0 có độ dài 4 và tiến hành so khớp<br />
với các chuỗi con của chuỗi tế bào S, giả sử sinh các chuỗi 0111, 1000, 0101,<br />
1010. Kết quả bộ dò R gồm 2 chuỗi 0111 và 1000; Các chuỗi 0101 và 1010 bị loại<br />
vì nó khớp với một chuỗi con của S. Sau khi tập bộ dò được sinh ra thì các chuỗi tế<br />
bào sẽ được theo dõi bằng cách so khớp chúng với các chuỗi trong tập bộ dò R. Ví<br />
dụ, trong chuỗi tế bào S ở trên chúng ta thay chuỗi con 0101 thành 0111, như vậy,<br />
trong quá trình so khớp với tập bộ dò sẽ phát hiện ra 1 chuỗi con so khớp được, khi<br />
đó sẽ phát ra cảnh báo chuỗi tế bào đã bị thay đổi.<br />
3.3. Quy tắc so khớp<br />
Như đã đề cập, quy tắc so khớp Hamming dựa trên khoảng cách giữa hai<br />
chuỗi, nếu hai chuỗi có cùng giá trị tại rvị trí thì được gọi là giống nhau. Một quy<br />
tắc so khớp hoàn chỉnh giữa hai chuỗi có độ dài bằng nhau sao cho mỗi vị trí<br />
tương ứng giữa hai chuỗi hoàn toàn giống nhau được gọi là quy tắc so khớp R-<br />
Chunk và R-Contiguous. Để đơn giản, ta so khớp tại r vị trí liên tiếp giữa 2<br />
chuỗi, nếu 2 chuỗi khớp với nhau tại ít nhất r vị trí liên tiếp thì hai chuỗi được<br />
gọi là so khớp với nhau. Ví dụ, so khớp hai chuỗi x:BBAABCDAB,<br />
y:AABABCDBA; Chuỗi x và y gồm 4 ký tự, khi đó, nếu việc so khớp có r ≤ 3 thì<br />
2 chuỗi được gọi là khớp với nhau.<br />
Bộ dò r-chunk là một bộ (d,i) gồm một xâu và một số nguyên<br />
khớp được với xâu nếu là<br />
tập các xâu nhị phân có chiều dài r. Bộ dò r-chunk được đề xuất bởi T.Stibor [11]<br />
có ưu điểm làm giảm tỷ lệ phát hiện sai.<br />
Bộ dò r-contiguous là một xâu khớp được với một xâu khác nếu<br />
với mọi mà .<br />
Ví dụ chuỗi tế bào:<br />
<br />
(2)<br />
<br />
khi đó, với r=3 ta có các bộ dò: gồm 09 bộ:<br />
D1 000,1 , 110,1 , 111,1 D2 011, 2 , 100, 2 , 111, 2 <br />
; ; (3)<br />
D3 001, 3 , 110, 3 , 111, 3 <br />
<br />
ContD S , 3 11001;11110;11111<br />
.<br />
<br />
<br />
50 V. V. Cảnh, H. T. Hảo, “Cảnh báo an ninh thông minh ứng dụng hệ miễn dịch nhân tạo.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
Các quy tắc Humming, R-Chunk và R-Contiguous đều có thể sử dụng điều<br />
chỉnh một biến ngưỡng r để xác thực việc so khớp chuỗi, nếu r càng lớn thì việc<br />
so khớp càng nghiêm ngặt.<br />
3.4. Xác xuất phát hiện thay đổi<br />
Xác suất phát hiện sự thay đổi của tế bào khi được so khớp với r vị trí liên tiếp<br />
(r láng giềng) được xác định bởi , với là m số<br />
lượng ký tự khác nhau trong 2 chuỗi cần so khớp, l là độ dài của chuỗi so khớp và<br />
r là số vị trí liên tiếp cần so khớp.<br />
Bên cạnh đó cũng cần phải xác định số lượng chuỗi ngẫu nhiên cần sinh ra cần<br />
thiết cho tập bộ dò để khi so khớp với các tế bào thì độ chính xác của việc so khớp<br />
và thời gian so khớp có thể chấp nhận được. Ta có xác suất một chuỗi ngẫu nhiên<br />
trong không khớp được với tất cả các chuỗi tế bào là với là<br />
số lượng chuỗi tế bào và xác suất mà bộ dò không phát hiện được sự thay đổi<br />
với là số lượng cuỗi của tập bộ dò. Khi đó, số lượng chuỗi<br />
ngẫu nhiên cần tạo ra cho tập bộ dò là:<br />
.<br />
<br />
4. THỰC NGHIỆM VÀ KẾT QUẢ<br />
Một số công trình nghiên cứu hướng về tìm điểm chung nhất đó là xây dựng tập<br />
bộ dò cho toàn bộ thư mục (ổ đĩa), tuy nhiên, tổng dữ liệu tại các thư mục/ổ đĩa là<br />
rất lớn nên việc kiểm soát và cài đặt một tập bộ dò cho toàn bộ thư mục/ổ đĩa<br />
không khả thi. Trong nghiên cứu này, chúng tôi đưa ra giải pháp là chia nhỏ dữ<br />
liệu đầu vào của bộ dò bằng cách sinh ra chuỗi tế bào S từ một tập tin máy tính hay<br />
nói cách khác mỗi tập tin trên máy tính sẽ tạo ra một chuỗi tế bào riêng. Điều này<br />
làm cho AIS có thể kiểm soát được toàn bộ dữ liệu của hệ thống. Việc tạo ra tập bộ<br />
dò ở đây theo hướng “tìm điểm chung nhất của một tập tin” hay nói cách khác mỗi<br />
tập bộ dò có đặc điểm của từng tập tin tương ứng và các tập bộ dò này được lưu<br />
vào cơ sở dữ liệu. Việc so khớp sẽ được tiến hành trên dữ liệu của tập tin và tập bộ<br />
dò của riêng nó, tập bộ dò mang các đặc điểm nhận dạng của tập tin để phân biệt<br />
self-nonself.<br />
Bên cạnh đó, nghiên cứu còn kết hợp với giải pháp so sánh dung lượng của tập<br />
tin để tìm tham số l phù hợp. Giả sử ta có 5 bít, như vậy, tổ hợp của 5 bít này có<br />
thể tạo ra 25 trường hợp kết hợp, hay nói một cách khác có thể tạo ra một tế bào có<br />
chiều dài 5*2+5+ bít. Tổng quát hơn, nếu một có dung lượng N, như vậy, tham số l<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san An toàn Thông tin, 05 - 2017 51<br />
Công nghệ thông tin<br />
l<br />
tối ưu cho bộ dò có thể được xác định bởi l *2 N . Khi đã biết được tham số l<br />
với mỗi giá trị r ta có thể xây dựng được tập dò khác nhau. Theo phân tích trong<br />
phần 3.2, ta có thể thay đổi lần lượt giá trị r để có thể tìm thấy một phương án phù<br />
hợp với bài toán theo một xác suất nào đó.<br />
Trong giai đoạn tạo tập bộ dò, thuật toán sẽ tiền hành tìm kiếm các tập tin trong<br />
thư mục/ổ đĩa, với mỗi tập tin tìm được hệ thống sẽ tiền hành tạo bộ dò (chuỗi tế<br />
bào) cho tập tin và lưu vào tập tin dữ liệu của tập bộ dò. Lưu đồ thuật toán được<br />
biểu diễn trong hình 5.<br />
<br />
<br />
<br />
<br />
Hình 5. Lưu đồ thuật toán AIS tạo tập bộ dò.<br />
Trong thử nghiệm, chúng tôi đã tiến hành trên vùng dữ liệu gồm 1000 tập tin<br />
được chia thành 20 thư mục khác nhau, dữ liệu của tập bộ dò được tạo ra sẽ được<br />
lưu trong một tập tin văn bản.<br />
<br />
<br />
<br />
<br />
Hình 6. Lưu đồ thuật toán AIS kiểm tra sự thay đổi của các tập tin.<br />
<br />
<br />
52 V. V. Cảnh, H. T. Hảo, “Cảnh báo an ninh thông minh ứng dụng hệ miễn dịch nhân tạo.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
Để kiểm tra sự thay đổi của tập tin hay các tập tin có bị nhiễm mã độc/virus hay<br />
không thuật toán tiến hành tìm kiếm các tập tin trong vùng dữ liệu và truy vấn các<br />
thông tin bộ dò của tập tin tìm được, tiến hành kiểm tra sự thay đổi của tập tin. Lưu<br />
đồ thuật toán được biểu diễn như trong hình 6.<br />
Quá trình thử nghiệm được tiến hành tại phòng thí nghiệm An ninh mạng – Học<br />
viện Kỹ thuật quân sự với vùng dữ liệu gồm 1000 tập tin, mỗi tập tin có dung<br />
lượng xấp xỉ 1MB, tiến hành thay đổi dữ liệu trong 748 tập tin và kiểm tra hiệu<br />
quả của kỹ thuật cho thấy hệ thống đã cảnh báo sự thay đổi của 739 tập tin, trong<br />
đó có 9 tập tin cảnh báo sai.<br />
Từ kết quả trên cho thấy hệ thống AIS kiểm soát sự thay đổi của dữ liệu trong<br />
vùng dữ liệu được kiểm soát đạt độ chính xác 98.80% với sai số 1.22%.<br />
Cùng với các cảnh báo về sự thay đổi dữ liệu trong các tập tin mà AIS đưa ra,<br />
kết hợp với phân tích logfile mà người quản trị có thể phán đoán chính xác sự thay<br />
đổi này do người dùng gây ra (hợp pháp), hay sự thay đổi do virus, mã độc (bất<br />
hợp pháp) mà có thể đưa ra các biện pháp xử lý thích đáng.<br />
5. KẾT LUẬN<br />
Hệ miễn dịch nhân tạo đang là hướng nghiên cứu được quan tâm trong phát<br />
triển hệ thống phát hiện xâm nhập, cảnh báo an ninh. Dựa trên hệ miễn dịch nhân<br />
tạo có thể tạo ra các tế bào (mã) có khả năng đối kháng (nhận diện) được các mã<br />
độc hay các tấn công mới lạ, tinh vi hiện nay. Việc xác định phương án phù hợp<br />
nhất hay tìm tham số r tối ưu tốn nhiều thời gian do phải xét tất cả các trường hợp,<br />
trong thời gian tới nhóm tiếp tục nghiên cứu theo hướng tự động thay đổi tối ưu<br />
tham số đầu vào l và r nhằm tăng tốc độ xử lý trong hệ thống.<br />
TÀI LIỆU THAM KHẢO<br />
[1]. J. P. Anderson, “Computer security threat monitoring and surveillance,”<br />
Tech. Rep., James P. Anderson Company, Fort Washington, Pa, USA, 1980.<br />
[2]. I. Antoniou, S. Gutnikov, V. Ivanov, Yu. Melnikov and A. Tarakanov (2002),<br />
Immunocomputing: a survey, Solvay Preprint 01-02, Brussels, BELGIUM.<br />
[3]. L. N. de Castro and F. J. von Zuben, “Learning and optimization using the<br />
clonal selection principle”, IEEE Transactions on Evolutionary Computation,<br />
vol. 6, no. 3, pp. 239–251, 2002.<br />
[4]. L. N de Castro and J. Timmis, “Artificial Immune Systems: A New<br />
Computational Intlligence Approach”, Springer-Verlag, 2002<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san An toàn Thông tin, 05 - 2017 53<br />
Công nghệ thông tin<br />
<br />
[5]. D. E. Denning, “An intrusion-detection model,” IEEE Transactions on<br />
Software Engineering, vol. 13, no. 2, pp. 222–232, 1987.<br />
[6]. Forrest et al, “Self-Nonself Discrimination in a Computer”, in Proceedings of<br />
1994 IEEE Symposium on Research in Security and Privacy, Oakland, CA,<br />
202-212<br />
[7]. S. Forrest, S. A. Hofmeyr, and A. Somayaji, “Computer Immunology”<br />
Communications of the ACM, vol. 40, no. 10, pp. 88–96, 1997.<br />
[8]. C. A. Janeway, P. Travers, M. Walport, and M. Shlomchik, “Immunobiology:<br />
The Immune System in Health and Disease”, Garland Science, New York,<br />
NY, USA, 2005.<br />
[9]. M. F. A. Gadi, X. Wang, and A. P. do Lago, “Credit card fraud detection with<br />
artificial immune system,” in Artificial Immune Systems, vol. 5132 of Lecture<br />
Notes in Computer Science, pp. 119–131, Springer, Berlin, Germany, 2008.<br />
[10]. L. T. Heberlein, G. V. Dias, K. N. Levitt, B. Mukherjee, J. Wood, and D. D.<br />
Wolber, “A network security monitor,” in Proceedings of the IEEE Computer<br />
Society Symposium on Research in Security and Privacy, pp. 296–304,<br />
Oakland, Calif, USA, May 1990.<br />
[11]. T. Stibor et al, “An investigation of r-chunk detector generation on higher<br />
alphabets”, GECCO 2004, LNCS 3102, 299-30.<br />
[12]. J. Timmis, A. Tyrrell, M. Mokhtar, A. Ismail, N. Owens, and R. Bi, “An<br />
artificial immune system for robot organisms,” in Symbiotic Multi-Robot<br />
Organisms: Reliability, Adaptability, Evolution, pp. 268–288, Springer,<br />
Berlin, Germany, 2010.<br />
[13]. A. Watkins, J. Timmis, and L. Boggess, “Artificial immune recognition<br />
system (AIRS): an immune-inspired supervised learning algorithm,” Genetic<br />
Programming and Evolvable Machines, vol. 5, no. 3, pp. 291–317, 2004.<br />
[14]. S. X. Wu and W. Banzhaf, “The use of computational intelligence in intrusion<br />
detection systems: a review,” Applied Soft Computing Journal, vol. 10, no. 1, pp.<br />
1–35, 2010.<br />
[15]. Phạm Văn Việt, “Nghiên cứu, phát triển và ứng dụng hệ miễn dịch nhân tạo<br />
trong việc giải các bài toán tối ưu”, Luận văn Thạc sĩ, HV Kỹ thuật Quân<br />
sự (2006).<br />
[16]. Nguyễn Xuân Hoài, Nguyễn Văn Trường, Vũ Mạnh Xuân, “Hệ miễn dịch<br />
nhân tạo và ứng dụng”, Tạp chí Khoa học và Công nghệ ĐH Thái Nguyên<br />
(2007), pp. 13-18.<br />
<br />
<br />
54 V. V. Cảnh, H. T. Hảo, “Cảnh báo an ninh thông minh ứng dụng hệ miễn dịch nhân tạo.”<br />
Nghiên cứu khoa học công nghệ<br />
<br />
ABSTRACT<br />
ARTIFICIAL IMMUNE SYSTEM ON INTELLIGENT NETWORK<br />
INTRUSION DETECTION SYSTEM<br />
In the field of cyber security, intrusion detection is a mechanism for<br />
detecting abnormal access to networks and computers by analyzing the<br />
various interactions. The current Intrusion detection (ID) methods normally<br />
has false positive rates and negative rate unexpectively. Thus, there should<br />
be measures to reduce the rate of false alarms. Computational intelligence<br />
techniques are being studied in order to improve detection rates and provide<br />
more accurate warnings. There have been some studies on Artificial Immune<br />
System (AIS), however, those examined the basic implementations of the<br />
approach based on AIS. Applying AIS on intrusion detection system is one of<br />
the attractive approaches recently. In this paper, we discover some basic<br />
concepts of artificial immune system, then apply artificial immune system to<br />
network intrusion detection. Some experimental results was conducted in<br />
Laboratory of Network Security – Le Quy Don Technical University which<br />
outperformed to other previous techniques.<br />
Keywords: Machine learning, Intrusion, Intrusion detection, Security alarms, Artifical Immune System.<br />
<br />
Nhận bài ngày 17 tháng 01 năm 2017<br />
Hoàn thiện ngày 20 tháng 02 năm 2017<br />
Chấp nhận đăng ngày 01 tháng 5 năm 2017<br />
<br />
Địa chỉ: Học viện Kỹ thuật quân sự.<br />
*<br />
Email: canhvuvan@yahoo.com<br />
<br />
<br />
<br />
<br />
Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san An toàn Thông tin, 05 - 2017 55<br />