Ngày nay công nghệ thông tin trở thành một lĩnh vực mũi nhọn trong côngcuộc phát triển kinh tế xã hội.
Mở đầu 1.1. Giới thiệu đề tài 1.1.1. Lý do
chọn đề tài Ngày nay công nghệ thông tin trở thành một lĩnh vực mũi nhọn trong công cuộc phát triển kinh tế xã hội. Cùng với công nghệ sinh học
và năng lượng mới, công nghệ thông tin (CNTT) vừa là công cụ, vừa là động lực thúc đẩy quá trình công nghiệp hóa, hiện đại hóa đất nước. Trong
giai đoạn hội nhập quốc tế, CNTT giữ vai trò đặc biệt quan trọng trong vi ệc xử lý
tính toán dữ liệu, kết nối thông tin liên lạc của các đơn vị tổ chức trong
và ngoài nước. Bảo vệ an
toàn dữ liệu
cho các hệ thống
tính toán, giữ vững an ninh mạng, đảm bảo liên lạc thông suốt, duy trì chất lượng phục vụ luôn là vấn đề quan tâm hàng
đầu của các nhà quản trị hệ thống. Sự phát triển của Internet tạo điều kiện
cho các loại
hình xâm nhập luận lý trái phép vào các h ệ thống CNTT cả chiều rộng (lây lan trên quy
mô toàn thế giới)
và chiều sâu (can thiệp vào hạt
nhân hệ thống đích). Mỗi ngày các hệ thống mạng phải đối phó với hàng loạt đợt tấn công bằng mã độc (malicious, harmful code ) của tin tặc, khiến nhiều hệ thống bị đình trệ, tắc nghẽn
và tê liệt; gây thiệt hại không nhỏ. Dự án nghiên cứu về sự phát triển
toàn cầu của Viện Hàn lâm Công nghệ Quốc gia Mỹ (National Academy of Engineering, USA - 2008)
nhận định vấn đề an ninh thông tin
và virus máy tính là một trong 14 thách thức công nghệ lớn nhất của thế kỷ 21 mà nếu
giải quyết được, cuộc sống con ng ười sẽ được cải thiện
đáng kể [92].
Virus máy tính (từ đây gọi tắt là virus, phân biệt với từ “virút” trong y học) thực sự trở thành mối đe dọa thường xuyên
và cấp bách của các hệ thống CNTT hiện nay. Chương 1 - 2 - Trong bối cảnh đó, đề tài “Tiếp cận
Máy học
và Hệ chuyên gia để
nhận dạng, phát hiện
virus máy tính” được tiến hành nhằm góp phần
giải quyết vấn đề bảo vệ an
toàn dữ liệu
cho các hệ thống CNTT ở Việt Nam. 1.1.2. Mục tiêu của đề tài Để phòng chống
virus máy tính, các hệ thống CNTT sử dụng các phần mềm chống
virus (anti-virus, gọi tắt là AV). Qua khảo sát, phần lớn các AV chỉ phát huy tác d ụng trên các mẫu
virus xác định, khả năng dự đoán
virus mới còn hạn chế nên thường bị động khi có dịch
virus bùng phát. Trên cơ sở xác định loại
hình nghiên cứu của đề tài là nghiên cứu ứng dụng, mục tiêu của đề tài là
tìm giải pháp cho bài toán nhận dạng virus máy tính và lựa chọn mô hình thích hợp để xây dựng Hệ Phòng chống
virus máy tính hướng tiếp cận
Máy học
và Hệ chuyên gia MAVES - Machine Learning Approach to Anti-
Virus Expert System (gọi tắt là MAV) v ới các chỉ tiêu cơ bản: -
Nhận dạng nhanh, phát hiện chính xác các trường
hợp lây nhiễm, tiềm ẩn của các
virus đã biết trên hệ thống đích. - Có khả năng dự báo biến thể virus; ngăn chận kịp thời, chủ động phòng tránh các
tình huống lây nhiễm khi hệ thống chưa cập nhật mẫu
virus mới. 1.1.3. Các
giai đoạn thực hiện đề tài Quá trình nghiên cứu đề tài được tiến hành qua các bước như sau: •
Giai đoạn 1 - Thu thập dữ liệu: Khảo sát
tình hình thực tiễn, thu thập dữ liệu (mẫu virus, các phần mềm diệt
virus trong nước
và nước ngoài, các
bài viết, tài liệu liên quan…). Nghiên cứu tài liệu,
tìm hiểu các phương pháp, tiếp cận đã biết, tham khảo các anti-virus
đang sử dụng phổ biến. Phác họa bức tranh tổng thể,
tìm hiểu các công nghệ
nhận dạng virus máy tính qua các thời kỳ . •
Giai đoạn 2 - Phân loại dữ liệu: Sắp xếp, phân loại,
tìm hiểu đặc điểm dữ liệu, cơ chế lây nhiễm của từng loại
virus trên vật chủ tương ứng. Sàng lọc, loại bỏ dữ liệu dư thừa (các mẫu
virus “chết” hoặc không phù
hợp với môi - 3 - trường, điều kiện nghiên cứu…). Bổ sung, làm giàu dữ liệu từ nhiều nguồn khác nhau (dữ liệu mẫu của các lớp vật chủ, tập chỉ thị thi hành…). •
Giai đoạn 3 - Xử lý dữ liệu: Dựa vào các lớp dữ liệu đã phân loại,
lựa chọn, sắp xếp dữ liệu, xây dựng các
mô hình, công cụ xử lý
thích hợp trên cơ sở lý thuyết
máy học. Phân tích, nh ận xét, đánh giá hiệu quả của từng
mô hình. •
Giai đoạn 4 - Tổng kết: Khái quát hóa
và rút ra kết luận chung
cho đề tài. Viết báo cáo, công bố kết quả nghiên cứu đề tài. 1.2. Đối tượng, phạm vi nghiên cứu của đề tài 1.2.1.
Virus máy tính và các hệ thống đích Có ba vấn đề cân nhắc khi nghiên cứu
virus máy tính là môi trường (hệ điều hành, kiến trúc máy), phương tiện (vật chứa tin, cơ chế lan tỏa)
và cơ hội (cộng đồng sử dụng, tần suất kích hoạt, kỹ thuật lây lan…). Mặc dù có nhiều loại
virus máy tính lây nhiễm trên nhiều hệ thống
và môi trường khác nhau, nhưng do
tính phổ biến của Windows nên
virus máy tính trên hệ điều hành này cũng nhiều hơn. Để đáp ứng nhu cầu thực tế bức thiết, đề tài tập trung nghiên cứu các loại
virus máy tính hoạt động trên các hệ điều hành (HĐH) Windows 9x/Me
và Windows NT/2000/XP dành
cho máy tính IBM-PC (máy vi
tính cá
nhân để bàn hoặ c xách tay, sử dụng kiến trúc vi xử lý x86/Pentium hoặc tương thích). Mặc dù vậy, đề tài cũng được định hướng nghiên cứu để có thể
mở rộng kết quả nghiên cứu
cho các hệ anti-virus sử dụng các HĐH khác Windows. 1.2.2. Các hệ học
và khám phá tri thức Con người đã tốn rất nhiều công sức để
giải quyết
bài toán nhận dạng virus máy tính. Tuy nhiên, các anti-virus vẫn chưa làm chủ được
tình hình.
Virus máy tính vẫn liên tục quấ y nhiễu, thâm nhập mạng, đánh cắp thông tin, làm sai lệch dữ liệu nhiều hệ thống CNTT trên thế giới.
Virus máy tính là sản phẩm của con người. Cuộc chiến giữa AV
và virus máy tính là cuộc
đấu trí giữa chuyên gia hệ thống
và tin tặc, là trò chơi trí tuệ của con người. Xuất phát từ
nhận định này, đề tài
chọn cách phối
hợp tiếp cận dựa trên - 4 - tri thức (knowledge based)
và tiếp cận học (machine learning) để
tìm lời
giải cho bài toán nhận dạng virus máy tính. Để kiểm tra
và đánh giá kết quả, một phần mềm thực nghiệm sẽ được thiết kế trên
mô hình các hệ khám phá tri thức nhằm phát hiện các quy luật
hình thành
virus mới từ cơ sở dữ liệu (CSDL)
virus đã biết. 1.2.3. Các hệ chuyên gia Các hệ chuyên gia là một loại hệ cơ sở tri thức (CSTT) được thiết kế để phần mềm
máy tính hoạt động như một chuyên gia (human expert) thực thụ trong một lĩnh vực cụ thể. Dựa trên tri thức, hệ chuyên gia
cho phép
mô hình hóa tri thức của chuyên gia (kiến thức, kinh nghiệm, lời khuyên…) để
giải quyết các vấn đề phức tạp trong từng lĩnh vực. Trong y học, bác sĩ cần khám bệnh để biết nguyên
nhân (người bệnh nhiễm loại virút gây bệ nh nào, đặc điểm ra sao), chẩn đoán bệnh (dựa vào triệu chứng, xác định bệnh), xét các điều kiện ràng buộc (sức khoẻ bệnh nhân, trang thiết bị y tế, chi phí
cho phép…)
và lựa chọn phương
pháp chữa trị (phác đồ điều trị, công nghệ xử lý bệnh…). Trong tin học,
virus máy tính là tác
nhân gây bệnh
và các anti-virus là “thuốc” chữa bệnh
cho máy tính. Do “bệnh nhân” (máy
tính nhiễm virus) không thể đến “bệnh viện” (phòng nghiên cứu phần mềm) để được các “bác sĩ” (chuyên gia anti-virus) khám chữa trị bệnh,
giải pháp của đề tài là xây dựng một hệ cơ sở tri thức về
virus máy tính nhằm tư vấn chữa bệnh
cho máy dựa trên kinh nghiệm của chuyên gia anti-virus đã tích
hợp trong hệ thống. 1.3. Ý nghĩa khoa học
và thực tiễn của đề tài Giống như trong công tác vệ sinh dịch tễ, trong lĩnh vực phòng chống
virus máy tính, phòng bệnh vẫn là chủ yếu với các hoạ t động cơ bản:
nhận dạng bệnh cũ
và dự báo bệnh mới. Các hoạt động này đều dựa vào các kỹ thuật chủ đạo của lớp
bài toán nhận dạng.
Giải quyết vấn đề an
toàn dữ liệu, đề tài
nhận dạng virus máy tính hướng tiếp cận
máy học còn làm phong phú thêm tập lời
giải cho các
bài toán nhận dạng cùng loại
và có thể
mở rộng để
nhận dạng các đối t ượng biến đổi. - 5 - Ở nước ta mặc dù đã có nhiều đề tài nghiên cứu về
virus máy tính, nhưng chưa có công trình nào đề cập
và giải quyết
bài toán nhận dạng biến thể
virus máy tính một cách khoa học
và toàn diện. Không chỉ dừng lại ở việc nghiên cứu lý thuyết, đề tài cũng đặt ra mục tiêu thực tiễn là xây dựng một hệ phần mềm thông minh chống
virus máy tính, đáp ứng kịp thời nhu cầu bức xúc của xã hội, t ừng bước
giải quyết nạn
virus máy tính, góp phần làm trong sạch môi trường CNTT hiện nay. 1.4. Cấu trúc của luận án Luận án gồm năm chương. Chương 1 dẫn nhập
và giới thiệu chung về đề tài. Chương 2 trình bày các cơ chế chẩn đoán
virus máy tính và một số vấn đề liên quan. Trước tiên, Chương 2 sẽ giới thiệu các chiến lược
nhận dạng virus; khảo sát các hoạt động nghiên cứu ứng dụ ng phòng chống
virus trong
và ngoài nước; phân tích các vấn đề
mở của công nghệ anti-virus; đánh giá
tình hình và đề xuất hướng tiếp cận, phương
pháp giải quyết vấn đề. Kế tiếp, Chương 2 trình bày cơ sở lý thuyết của các hệ khám phá tri thức từ CSDL, các hệ học
và hệ chuyên gia. Phần cuối Chương 2 trình bày quá trình
tìm hiểu, phân tích các nghiên cứu hướng tiếp cận
máy học
và hệ chuyên gia trong lĩnh vực
nhận dạng mã độc. Các Chương 3
và Ch ương 4 chứa nội dung nghiên cứu chính của đề tài. Chương 3 trình bày các cơ chế
máy học chẩn đoán
virus máy tính. Bằng chiến lược “chia để trị”,
bài toán nhận dạng virus máy tính được phân hoạch thành năm
bài toán con. Mỗi
bài toán được xây dựng dựa vào các kỹ thuật học từ đơn giản đến phức tạp: học vẹt (lớp text virus), học tương tự (lớp macro virus), học chỉ dẫn (lớp boot virus), học
tình huống (l ớp file virus)
và học quy nạp (lớp mã độc, sâu trình
và trojan horse). Chương 4 trình bày phương
pháp thiết kế hệ thống MAV, hệ phần mềm thực nghiệm xây dựng trên cơ sở các nghiên cứu lý thuyết của đề tài. Phần
đầu Chương 4
mô tả
mô hình cơ sở tri thức
và mô hình tổng quát của hệ. Áp dụng tiếp cận
máy học
và hệ chuyên gia, MAV sẽ được triển khai qua ba
giai đoạn.
Giai đoạn Học dữ liệ u - mức chuyên gia,
giai đoạn Xử lý dữ liệu - thành phần cốt lõi (kernel)
và giai đoạn Tổng kết - mức người dùng. Triển khai trên hệ thống mạng theo
mô hình - 6 - client-server, MAV được thiết kế gồm hai gói cài đặt chạy trên
máy chủ (dành
cho chuyên gia)
và các
máy trạm (dành
cho người dùng). Mỗi gói có chức năng, cấu trúc dữ liệu sử dụng các thuật
giải học phân cụm, phân lớp dữ liệu khác nhau. Phần cuối Chương 4 trình bày các kết quả thực nghiệm của đề tài. Chương 5 tổng kết các đóng góp về mặt lý thuyết, đánh giá ý nghĩa thực tiễn, phân tích hạn chế, đề xu ất các biện
pháp khắc phục
và dự kiến hướng phát triển tương lai của đề tài. Phần tài liệu tham khảo gồm (i) các công trình đã công bố trong các tạp chí chuyên ngành, kỷ yếu hội nghị khoa học trong nước - quốc tế
và (ii) các tài liệu tham khảo sử dụng trong quá trình nghiên cứu đề tài. Cuối cùng, phần phụ lục nhằm làm rõ các vấn đề liên quan đến đề tài gồm Phụ lục 1: Khảo sát
virus máy tính; Phụ lục 2: Các đị nh
dạng dữ liệu nhiễm
virus máy tính; Phụ lục 3: Các tác tử hoạt động
và thuật
toán SID
Tìm kiếm – Suy luận – Chẩn đoán; Phụ lục 4: Phân tích hệ thống phần mềm MAV; Phụ lục 5: Phân hệ
máy chủ MAVSR
và Phụ lục 6: Phân hệ
máy trạm MAVCL. . là tìm giải pháp cho bài toán nhận dạng virus máy tính và lựa chọn mô hình thích hợp để xây dựng Hệ Phòng chống virus máy tính hướng tiếp cận Máy học và. lớp bài toán nhận dạng. Giải quyết vấn đề an toàn dữ liệu, đề tài nhận dạng virus máy tính hướng tiếp cận máy học còn làm phong phú thêm tập lời giải cho