Tải bản đầy đủ (.doc) (86 trang)

SỬ DỤNG CÔNG CỤ KHAI PHÁ DỮ LIỆU ĐỂ CẢNH BÁO NGUY CƠ MẤT AN NINH TRÊN MẠNG

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (707.65 KB, 86 trang )

MỤC LỤC
DANH MỤC CÁC BẢNG 2
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ 3
MỞ ĐẦU 4
Chương 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 8
1.1.Khai phá dữ liệu và quá trình phát triển tri thức 8
1.2. Khai phá dữ liệu là gì? 10
1.2.1. Khái niệm 10
1.2.2 Cáùc bước của quá trình khai phá dữ liệu 11
1.2.3 Các thành phần của giải thuật khai phá dữ liệu 13
1.3 Các phương pháp khai phá dữ liệu 14
1.3.1 Phương pháp quy nạp (Induction) 14
1.3.2 cây quyết đònh (Decision Trees) 15
1.3.3 Mạng nơron ( Neural networks) 16
1.4 Những thách thức trong khai phá dữ liệu 21
1.5. Ứng dụng của khai phá dữ liệu 23
Chương 2: ỨNG DỤNG KHAI PHÁ DỮ LIỆU TRONG VIỆC CẢNH BÁO NGUY
CƠ MẤT AN NINH TRÊN MẠNG 24
2.1. Phát triển và bảo mật mạng cục bộ hiện nay 24
2.3 Xây dựng đề tài 26
2.3.1 Mục đích xây dựng đề tài 26
2.3.2 Yêu cầu 27
Chương 3: M T S GIAO THỨC TRUYỀN TIN TRÊN M NGỘ Ố Ạ 28
3.1 Cơ chế truyền tin và kỹ thuật truyền gói tin trên mạng 28
3.1.1 Gói tin dạng Datagram 29
3.1.2. Các giao thức (Protocols), cổng (Ports) và Sockets 30
3.2. Các giao thức truyền tin và cấu trúc một số gói tin trên mạng 36
3.2.1. Giao thức Internet (Internet Protocol - IP) 36
3.2.2. Giao thức điều khiển truyền tin (Transmission Control Protocol - TCP)
40
3.2.3. Giao thức không kết nối (User Datagram Protocol - UDP) 45


3.2.4. Giao thức điều khiển thông điệp (Internet Control Message Protocol -
ICMP) 49
3.2.5. Giao thức chuyển đòa chỉ ARP (Address Resolution Protocol) và giao
thức chuyển ngược đòa chỉ RARP (Reverse Address Resolution Protocol) 52
-1-
DANH MỤC CÁC BẢNG
Bảng 5.1: Bảng dữ liệu lưu trữ các thông tin phần header của gói tin…………………64
Bảng 5.2: Một số lớp chính của Project Sniffer……………………………………………………………67
Bảng 5.3: Một số lớp chính của Project Sniffer UI………………………………………………………68
-2-
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1 Quá trình phát hiện tri thức từ Cơ sở dữ liệu……………………………………………………9
Hình 1.2 Quá trình khai phá dữ liệu……………………………………………………………………………………11
Hình1.3 Minh hoạ cây quyết đònh………………………………………………………………………………………16
Hình 1.4 : Sơ đồ quá trình khai phá dữ liệu bằng mạng nơron…………………………………17
Hình 3.1 Khuôn dạng của IP Datagram………………………………………………………………………………29
Hình 3.2 Quá trình xử lý truyền dữ liệu.……………………………………………………………………………34
Hình 3.3 Gói thông tin IP trong một frame Ethernet……………………………………………………37
Hình 3.4 Qúa trình truyền thông tin giữa các mạng khác nhau…………………………………39
Hình 3.5 Quá trình truyền nhận thông tin trên mạng……………………………………………………………42
Hình 3.6 Gói tin TCP chứa trong một Ethernet frame………………………………………………………43
-3-
Hình 3.7 Cấu trúc gói tin UDP…………………………………………………………………………………………………46
Hình 3.8 Phân kênh và hợp kênh……………………………………………………………………………………………47
Hình 3.9 Đònh dạng của thông báo ICMP……………………………………………………………………………49
Hình 3.10 Mô tả việc đònh hướng lại gói tin trên mạng X.25…………………………………51
Hình 3.11 Mô tả cơ chế chuyển giao đòa chỉ động………………………………………………………53
Hình 3.12 Mô tả gói thông tin ARP…………………………………………………………………………………54
Hình 4.1 Cấu trúc chung của gói tin…………………………………………………………………………………57
Hình 4.2 Các trường trong Type of service……………………………………………………………………58

Hình 5.1 Sơ đồ chức năng của hệ thống …………………………………………………………………………63
Hình 5.2 Thể hiện chức năng phân tích của chương trình ………………………………………69
Hình 5.3 Thể hiện chức năng cảnh báo của chương trình………………………………………70
Hình 5.4 Giao diện chính của chương trình…………………………………………………………………70
Hình 5.5 Giao diện hiển thò danh sách gói tin……………………………………………………………71
Hình 5.6 Giao diện hiển thò gói tin ICMP……………………………………………………………………71
Hình 5.7 Giao diện hiển thò các cảnh báo mà chương trình đưa ra……………………72
MỞ ĐẦU
Trong thời đại hội nhập kinh tế toàn cầu hiện nay, vấn đề trao đổi thông
tin ngày càng trở nên quan trọng và cấp thiết. Việc có được thông tin chính xác
kòp thời là hết sức quan trọng đối với mọi cá nhân cũng như các tổ chức và
doanh nghiệp. Mạng máy tính đóng vai trò rất quan trọng, nó giúp cho mọi
người tiếp cận, trao đổi những thông tin mới nhất một cách nhanh chóng và
thuận tiện.
Tuy nhiên, để đảm bảo an toàn của các thông tin trên mạng là một công
việc rất phức tạp. Thông tin trên các mạng máy tính có thể gặp rất nhiều hiểm
hoạ từ cacù hiểm hoạ ngẫu nhiên cho đến những hiểm hoạ cố ý. Tất cả những
-4-
hiểm hoạ đều dẫn đến mất mát thông tin hay làm sai lệch thông tin dưới nhiều
góc độ khác nhau. Vì vậy việc bảo vệ thông tin trên các mạng máy tính là một
công việc hết sức cần thiết. Công nghệ thông tin càng đi sâu vào cuộc sống thì
vấn đề an toàn thông tin càng phải được quan tâm.
Vấn đề an ninh, an toàn thông tin trên mạng là cái cần được giải quyết
đầu tiên khi thiết kế, xây dựng để đưa một dòch vụ mạng hay một mạng vào hoạt
động. Đặc biệt khi mà hàng ngày có thể liệt kê ra nhiều vụ thử tấn công, hay tấn
công của tin tặc vào một mạng mới cài đặt, hay một trang web mới đưa ra… Tin
tặc luôn luôn tìm và dùng nhiều loại tấn công khác nhau, bằng các phương thức
khác nhau để tấn công truy cập vào các máy trên mạng.
Hiện nay có rất nhiều công nghệ và giải pháp an ninh trên mạng. Nhưng
vấn đề đặt ra cho người thiết kế và quản trò mạng là phải chọn ra được những

giải pháp phù hợp với yêu cầu về kinh tế kỹ thuật. Người quản trò mạng đóng
vai trò hết sức quan trọng, họ phải quản lý được các thông tin dữ liệu truyền đi
trên mạng, phân tích được các thông tin, thông báo để đưa ra các quyết đònh kòp
thời chính xác, đảm bảo hệ thống mạng luôn hoạt động tốt. Vì vậy, việc áp dụng
các phương pháp khai phá dữ liệu để phân tích dữ liệu và đưa ra các luật để
cảnh báo về việc mất an ninh trên mạng là rất cần thiết.
Luận văn với đề tài “Sử dụng công cụ khai phá dữ liệu để cảnh báo
nguy cơ mất an ninh trên mạng” nhằm nghiên cứu, khai thác dữ liệu thu được
từ các công cụ chặn bắt gói tin, tìm hiểu cơ chế hoạt động của các gói tin trên
mạng, để từ đó đưa ra các cảnh báo về khả năng, nguy cơ mất an ninh trên
mạng.
Luận văn được chia thành 5 chương với những nội dung sau:
-5-
- Chương 1: Tổng quan về khai phá dữ liệu. Gồm một số khái niệm,
phân tích kỹ thuật khai phá dữ liệu, những thách thức đối với công
việc khai phá dữ liệu.
- Chương 2: Ứng dụng của khai phá dữ liệu trong việc cảnh báo nguy
cơ mất an ninh trên mạng. Tìm hiểu về sự phát triển và bảo mật
trong mạng cục bộ cùng với vấn đề an toàn-an ninh của việc trao đổi
thông tin trên mạng để từ đó tiến tới xây dựng chương trình giám sát
các hoạt động truy cập, đưa ra các cảnh báo và ngăn chặn truy cập trái
phép trong mạng.
- Chương 3: Một số giao thức truyền tin trên mạng. Trình bày về cơ
chế truyền tin, các giao thức truyền tin và cấu trúc một số gói tin trên
mạng.
- Chương 4: Công cụ chặn bắt gói tin và các luật giám sát truy cập
dòch vụ mạng. Giơi thiệu về công cụ chặn bắt gói tin trên manïg, cấu
trúc chung của gói tin và các tiêu chí, các luật để giám sát, kiểm soát
truy cập vào các dòch vụ mạng.
- Chương 5: Xây dựng chương trình cảnh báo nguy cơ mất an ninh

trên mạng LAN. Phân tích thiết kế hệ thống của chương trình và xây
dựng chương trình chặn bắt các gói tin, đưa ra các cảnh báo về nguy cơ
mất an ninh trên mạng.
Do kiến thức còn nhiều hạn chế nên trong luận văn không tránh khỏi
những sai sót, em rất mong nhận được sự chỉ bảo, góp ý của các Thầy cô giáo và
những người quan tâm. Em xin chân thành cảm ơn thầy giáo PGS.TS Nguyễn
Thiện Luận đã tận tình giúp đỡ, hướng dẫn em hoàn thành luận văn này.
-6-
Xin chân thành cảm ơn quý Thầy, cô đã nhiệt tình giảng dạy, trang bò cho
em những kiến thức quý báu trong suốt thời gian học tập tại trường.
Xin chân thành cảm ơn các bạn cùng lớp, các bạn đồng nghiệp và trường
Đại học công nghiệp Hà Nội đã tạo điều kiện tốt cho tôi hoàn thành luận văn
này.
Phạm Văn Hiệp
-7-
Chương 1: TỔNG QUAN VỀ
KHAI PHÁ DỮ LIỆU
1.1.Khai phá dữ liệu và quá trình phát triển tri thức
Một trong những yếu tố dẫn đến thành công trong mọi hoạt động kinh
doanh đó là việc biết sử dụng thông tin một cách có hiệu quả nhất. Điều đó có
nghóa là từ các dữ liệu có sẵn, phải tìm ra thong tin tiềm ẩn có giá trò mà trược
đó chưa được phát hiện, tìm ra những xu hướng phát triển và những yếu tố tác
động lên chúng. Đó chính là thực hiện quá trình phát hiện tri thức trong cơ sở dữ
liệu (Knowledge Discovery in Databases - KDD) mà trong đó kỹ thuật cho phép
ta lấy được các tri thức chính là kỹ thuật khai phá dữ liệu (Data mining). KDD là
một quá trình gồm nhiều bước, trong khi đó khai phá dữ liệu chỉ là một trong
những bước đó.
Dữ liệu thường được cho bởi các giá trò mô tả các sự kiện, hiện tượng cụ
thể. Khó có thể đònh nghóa rõ rang về tri thức, nhưng có thể hiểu tri thức là một
biểu thức trong một ngôn ngữ nào đó diễn tả một hay nhiều mối quan hệ giữa

các thuộc tính trong các dữ liệu đó. Tri thức thường được biểu diễn bởi các
khung, các cây, đồ thò, các luật , các công thức trong ngôn ngữ logic mệnh đề,
các hệ phương trình …
Phát hiện tri thức từ cơ sở dữ liệu (CSDL) là một quá trình mà trong đó
con người là trung tâm. Quá trình phát hiện tri thức là một quá trình hoạt động
tương tác thường xuyên giữa con người (người sử dụng hoặc chuyên gia phân
tích) và CSDL. Quá trình này bao gồm 5 bước như hình dưới đây:
-8-
Hình 1.1 Quá trình phát hiện tri thức từ Cơ sở dữ liệu
Đầu vào của quá trình này là dữ liệu và đầu ra là những thông tin hữu ích
mong muốn của người dung. Tuy nhiên những thông tin này có thể không rõ
ràng hoặc không chính xác. Để đảm bảo kết quả của quá trình là chính xác và
có ích thì cần có cả chuyên gia về chuyên môn và chuyên gia kỹ thuật.
Lựa chọn dữ liệu: Dữ liệu cần thiết cho quá trình khai phá dữ liệu có thể
chứa trong nhiều nguồn khác nhau, thậm chí các nguồn dữ liệu không đồng nhất
(dữ liệu chứa trong các CSDL khác nhau, các file…).
Tiền xử lý dữ liệu: Tiền xử lý dữ liệu là một trong những bước đóng vai
trò hết sức quan trọng trong quá trình phát triển tri thức, bởi vì dữ liệu được sử
dụng trong quá trình khai phá dữ liệu có liệu có thể bò lỗi hoặc bò thiếu. Đối với
dữ liệu lỗi ta có thể sửa hoặc loại bỏ còn, với những dữ liệu thiếu ta buộc phải
dự đoán và cung cấp một giá trò dữ liệu nào đó. Công cụ phổ biến dùng để xử lý
giá trò thiếu đó là mạng nơron và kết hợp mạng nơron với thuật giải di truyền
Chuyển đổi dữ liệu: Dữ liệu từ nhiều nguồn khác nhau phải được biến đổi
thành một khuôn dạng chung dễ sử dụng hơn rồi mới xử lý. Các kỹ thuật chuyển
đổi dữ liệu làm cho dữ liệu dễ khai phá hơn, hiệu quả hơn.
-9-
Diễn dòch
dữ liệu
Tiền xử lý
dữ liệu

Dữ liệu
ban đầu
Dữ liệu
mẫu
Chuyển đổi
dữ liệu
Dữ liệu sau
tiền xử lý
Khai phá dữ
liệu
Dữ liệu sau
chuyển đổi
Lựa chọn
dữ liệu

phỏng
Tri thức
Khai phá dữ liệu: dựa vào từng công việc khai phá cụ thể, lựa chọn các
thuật toán để khái quát những kết quả mong muốn.
Diễn dòch: Làm thế nào để người sử dụng hiểu được kết quả của quá trình
khai phá dữ liệu là cực kỳ quan trọng. Vì dữ liệu có ích hay không lại phụ thuộc
vào điều đó. Sử dụng các kỹ thuật mô phỏng và giao diện với người sử dụng cho
phép người sử dụng có thể thu được những kết quả phức tạp hơn so với việc mô
tả kết quả bằng toán học hay bằng văn bản. Một số kỹ thuật mô phỏng như: đồ
thò, mô hình phân cấp…
1.2. Khai phá dữ liệu là gì?
1.2.1. Khái niệm
Khai phá dữ liệu là một khái niệm ra đời vào những năm cuối của thập kỷ
80. Nó bao hàm một loạt các kỹ thuật nhằm phát hiện ra các thông tin có giá trò
tiềm ẩn trong các tập dữ liệu lớn. Về bản chất thì khai phá dữ liệu liên quan đến

việc phân tích các dữ liệu và sử dụng các kỹ thuật để tìm ra các mẫu trong tập
dữ liệu.
Vậy khai phá dữ liệu là gì? Có rất nhiều cách phát biểu khác nhau về
khai phá dữ liệu, dưới đây là một số khái niệm:
- Theo Groth [11] thì khai phá dữ liệu là một quá trình xác đònh các mẫu
ẩn, xu thế và mối quan hệ dữ liệu.
- Theo Berry và Linoff [10], khai phá dữ liệu là quá trình khám phá và
phân tích tự động hoặc bán tự động một lượng lớn dữ liệu để khám
phá ra các mẫu và các luật.
- Theo Hand, Manila va Smyth [9] thì khai phá dữ liệu là phân tích tập
dữ liệu quan sát được (thường lớn) để tìm ra mối quan hệ và tổng hợp
-10-
dữ liệu theo một số phương pháp nào đó giúp người sở hữu dữ liệu có
thể hiểu được và sử dụng hữu ích.
- Theo Wegman[7], khai phá dữ liệu chính là sử dụng các kỹ thuật tính
toán để phân tích dữ liệu với sự tác động rất ít của con người .
- Fayyad, Piatestsky-Shapiro và Smyth [8] đã dùng khái niệm phát hiện
tri thức trong cơ sở dữ liệu để chỉ toàn bộ quá trình phát hiện các tri
thức có ích từ các tập dữ liệu lớn. Trong đó, khai phá dữ liệu là một
bước đặc biệt trong toàn bộ quá trình, sử dụng các giải thuật đặc biệt
để trích rút ra các mẫu từ dữ liệu
1.2.2 Cáùc bước của quá trình khai phá dữ liệu
Các giải thuật khai phá dữ liệu thường được miêu tả như những chương
trình hoạt động trực tiếp trên tệp dữ liệu .Với các phương pháp học máy và
thống kê trước đây thường thì bước đầu tiên là các giải thuật nạp toàn bộ tệp dữ
liệu vào trong bộ nhớ . Khi chuyển sang các ứng dụng công nghiệp liên quan
đến khai phá các kho dữ liệu lớn thì mô hình này không thể áp dụng được vì nó
không thể nạp hết dữ liệu vào trong bộ nhớ và khó có thể chiết xuất dữ liệu ra
các tệp đơn giản để phân tích .có thể hình dung quá trình khai phá dữ liệu gồm
những bước sau :

Hình 1.2:Quá trình khai phá dữ liệu
-11-
DL trực
tiếp
Thu thập
và tiền xử
lý dữ liệu
Giải thuật
khai phá dữ
liệu
Xác đònh dữ
liệu liên
quan
Xác đònh
nhiệm vụ
Thống kê tóm tắt
Mẫu
Quá trình khai phá dữ liệu bắt đầu bằng cách xác đònh chính xác các vấn
đề cần giải quyết. Sau đó xác đònh các dữ liệu liên quan dùng đẻ xây dựng giải
pháp. Bước tiếp theo là thu thập các dữ liệu có liên quan và tiền xử lý để cho
các giải thuật khai phá dữ liệu có thể thực hiện được. Về lý thuyết thì bước này
có vẻ đơn giản nhưng khi thực hiện thì đây thực sự là một vấn đề rất khó khăn
do gặp phải nhiều vấn đề vướng mắc như : các dữ liệu phải được sao nhiều bản,
quản lý tập các tệp dữ liệu, phải lặp đi lặp lại toàn bộ quá trình nhiều lần …
Bước tiếp theo là chọn giải thuật khai phá dữ liệu thích hợp và thực hiện
việc khai phá dữ liệu để tìm được các mẫu ( pattern) . Đặc điểm của mẫu là phải
mới , ít nhất đối vơí hệ thống đó . Độ mới có thể được đo tương ứng bằng độ thay
đổi trong dữ liệu ( bằng cách so sánh các giá trò hiện tại với các giá trò trước đó
hoặc các giá trò mong muốn ), hoặc bằng các tri thức ( mối liên hệ giữa các
phương pháp tìm mới và phương pháp cũ như thế nào ). Độ mới của mẫu thường

được đánh giá bằng một hàm logic hoặc hàm đo độ mới, độ không mong đợi của
mẫu. Ngoài ra mẫu phải có khả năng ứng dụng. Mẫu khai thác đựoc phải có giá
trò đối với dữ liệu mới với độ chính xác nào đó.
Kỹ thuật khai phá dữ liệu thực chất không có gì mới. Nó là sự kế thừa, kết
hợp và mở rộng của các kỹ thuật cơ bản đã đựơc nghiên cứu từ trước như học
máy, nhận dạng, thống kê ( hồi quy, phân lớp, phân chùm …), các mô hình đồ thò,
mạng Bayes, trí tuệ nhân tạo, thu thập tri thức từ hệ chuyên gia … Tuy nhiên với
sự kết hợp khéo léo trong khai phá dữ liệu, kỹ thuật này có ưu thế hơn hẳn các
phương pháp trước đó, đem lại khả năng ứng dụng, phát triển nghiên cứu khoa
học vào thực tiễn.
-12-
1.2.3 Các thành phần của giải thuật khai phá dữ liệu
Giải thuật khai phá dữ liệu gồm 3 thành phần chính như sau: biểu diễn mô
hình, đánh giá mô hình và phương pháp tìm kiếm mô hình.
- Biểu diễn mô hình: Mô hình được biểu diễn bằng một ngôn ngữ L để miêu
tả các mẫu có thể khai thác được. Nếu ngôn ngữ mô tả quá bò hạn chế thì sẽ
không thể học được và sẽ không thể có các mẫu biểu diễn một mô hình chính
xác cho dữ liệu . Vì thế việc quan trọng là người phân tích dữ liệu cần phải hiểu
đầy đủ các giả thiết miêu tả. Người thiết kế giải thuật cần phải diễn tả được các
giả thiết miêu tả nào được tạo ra bởi giải thuật nào. Nếu mô hình có độ phức tạp
càng lớn thì sẽ làm tăng mức độ nguy hiểm do bò học quá và làm giảm đi khả
năng dự đoán các dữ liệu chưa biết đồng thời việc tìm kiếm càng trở nên phức
tạp và việc giả thích cũng khó khăn hơn .
Mô hình ban đầu được xác đònh bằng cách kết hợp biến đầu ra với các biến
đầu vào mà biến đầu ra phụ thuộc. Sau đó tìm ra những tham số mà bài toán cần
tập trung giải quyết. Việc tìm kiếm mô hình sẽ đưa ra đựoc một mô hình phù
hợp với Các tham số được xác đònh dựa trên tập dữ liệu. Trong đa phần các
trường hợp, tập dữ liệu được chia thành hai tập: tập dữ liệu học ( training data)
và tập dữ liệu thử (testing data). Tập dữ liệu học thường được chọn với tỷ lệ 2/3
và được sử dụng cho quá trình học các tham số của mô hình. Dữ liệu thử chiếm

tỷ lệ 1/3 được dùng để đánh giá mô hình học được và điều chỉnh lại các con số
cho phù hợp nếu cần. Mô hình lựa chọn có thể là mô hình thống kê, một số giải
thuật học máy, mạng nơron…
- Đánh giá mô hình: Đánh giá xem một mẫu có đáp ứng đủ tiêu chuẩn của quá
trình phát hiện tri thức hay không. Việc đánh giá độ chính xác dự đoán dựa trên
đánh giá chéo (cross validation). Đánh giá chất lượng mô hình liên quan đến độ
chính xác dự đoán, độ mới, khả năng sử dụng, khả năng hiểu được của mô hình.
-13-
Việc đánh giá mô hình được được thực hiện qua kiểm tra dữ liệu. Ví dụ như đối
với mạng nơron việc đánh giá mô hình được thực hiện dựa trên việc kiểm tra dữ
liệu học và dữ liệu thử.
- Phương pháp tìm kiếm: Phương pháp tìm kiếm gồm hai loại là tìm kiếm tham
số và tìm kiếm mô hình. Trong tìm kiếm tham số, giải thuật cần tìm kiếm các
tham số để tối ưu theo một tiêu chuẩn đánh giá mô hình nào đó dựa trên các dữ
liệu quan sát được và mô hình đã được mô tả. Ví dụ như phương pháp giảm
Gradient trong giải thuật lan truyền ngược trong mạng nơron. Phương pháp tìm
kiếm tham số được áp dụng để đánh giá chất lượng của mô hình. Các phương
pháp tìm kiếm mô hình thường được sử dụng các kỹ thuật tìm kiếm heuristic.
1.3 Các phương pháp khai phá dữ liệu
1.3.1 Phương pháp quy nạp (Induction)
Một cơ sở dữ liêu là một kho thông tin và các thông tin quan trọng hơn cũng
có thể được suy diễn từ kho thông tin đó. Hai kỹ thuật chính để thực hiện việc
này là suy diễn và quy nạp.
- Phương pháp suy diễn nhằm rút ra thông tin từ kết quả logic của các thông
tin trong cơ sở dữ liệu. Phương pháp này dựa trên các sự kiện chính xác để suy
ra các tri thức mới từ các thông tin cũ. Mẫu chiết xuất được thường là các luật
suy diễn.
- Phương pháp quy nạp nhằm suy ra các thông tin được sinh ra từ cơ sở dữ
liệu. Nó tự tìm kiếm, tạo mẫu và sinh ra tri thức chứ không phải bắt đầu với các
tri thức đã biết. Các thông tin mà phương pháp này mang lại các thông tin hay

các tri thức ở mức độ trừu tượng cao diễn tả về các đối tượng trong cơ sở dữ liệu.
Trong khai phá dữ liệu, quy nạp được sử dụng trong cây quyết đònh và tạo luật.
-14-
1.3.2 cây quyết đònh (Decision Trees)
Cây quyết đònh là một kó thuật mô phỏng dự đoán được sử dụng trong
phân lớp, phân trùm và hồi quy. Các cây quyết đònh sử dụng kó thuật để trò để
chia không gian tìm kiếm của vấn đề thành các tập con.
Đònh nghóa cây quyết đònh như sau [4]:
Cây quyết đònh là một mô tả tri thức dạng đơn giản nhằm phân các đối
tượng dữ liệu thành một số lớp nhất đònh. Các nút bên trong cây đưựơc gắn nhãn
là tên các thuộc tính, các cung được gán các giá trò có thể của các thuộc tính và
các nút lá miêu tả các lớp khác nhau.
Ví dụ về cây quyết đònh [4]: Giả sử căn cứ vào chiều cao của sinh viên,
chúng ta cần phân loại sinh viên trong một trường Đại học ra thành 3 loại: thấp
trung bình và cao. Giả thiết trong cơ sở giữ liệu có các thông tin: tên, đòa chỉ,
giới tính, chiều cao, tuổi, năm, chuyên ngành…Để xây dựng cây quyết đònh,
chúng ta phải xác đònh xem những thuộc tính nào là quan trọng đối với bài toán
phân lớp. Trong số các thuộc tính trên ta chọn 3 thuộc tiính là chiều cao, tuổi và
giới tính. Tại sao lại chọn 3 thuộc tính trên:
- Giới tính: một người phụ nữ nếu cao 1,8 thì được xem là cao trong khi một
người đàn ông có chiều cao bằng như vậy thì chưa chắc đã được xem là
cao.
- Tuổi: Một đứa trẻ 10 tuổi có thể xếp vào loại cao dù nó chỉ cao 1,5m
Do bài toán phân loại ở đây áp vào đối tượng sinh viên trường Đại học nên
chúng ta sẽ lọc ra những sinh viên từ 17 tuổi trở lên để phân lớp. Vì thế việc
phân lớp chỉ còn 2 thuộc tính là chiều cao và giới tính. Sử dụng thuật toán xây
dựng cây quyết đònh ta được cây sau:
-15-
Hình1.3 : Minh hoạ cây quyết đònh
1.3.3 Mạng nơron ( Neural networks)

Mạng nơron là một tiếp cận tính toán mới liên quan đến việc phát triển
các cấu trúc toán học với khả năng học. Mạng nơron xuất hiện từ năm 1943
nhưng cho đến những năm 1980 lónh vực này mới thực sự bắt đầu. Mạng nơron
còn gọi là mạng nơron nhân tạo để phân biệt với mạng nơron sinh học . Mạng
nơron có thể xử lý dữ liệu phức tạp hoặc không chính xác và có thể được sử
dụng đế chiết xuất các mẫu và phát hiện ra các xu hướng phức tạp mà con người
cũng như các kỹ thuật máy tính khác không thể phát hiện được. Trong lónh vực
khai phá dữ liệu mạng nơron được dùng khá phổ biến. Tuy có một số nhược
điểm nhưng một trong những ưu điểm phải kể đến của mạng nơron đó là: khả
năng tạo ra các mô hình dự đoán có độ chính xác cao, có thể áp dụng được cho
rất nhiều loại bài toán khác nhau và đáp ứng được các nhiệm vụ đặt ra của khai
phá dữ liệu như phân lớp, phân nhóm, mô hình hoá, dự báo các sự kiện phụ
thuộc vào thời gian …
-16-
Thấp
p
Trung bình
Giới tính
Chiều cao
Cao
NamNữ
<1.3m
≥1.3m
≤1.8m
>1.8m
Thấp Trung bình
Chiều cao
Cao
<1.5m ≤1.5m
≤2m

>2m
Quá trình khai phá dữ liệu bằng mạng nơron có thể hình dung như sau :
Hình 1.4 : Sơ đồ quá trình khai phá dữ liệu bằng mạng nơron
Mẫu chiết xuất bằng mạng nơron được thể hiện ở các nút đầu ra của mạng.
Mạng nơron sử dụng các hàm số để tính mức tích cực của các nút đầu ra và cập
nhật trọng số. Đặc điểm của mạng nơron là không cần tiền xử lý dữ liệu ( “ làm
sạch “ dữ liệu ) nhiều trước khi bắt đầu quá trình học như một số phương pháp
khác. Tuy nhiên, để có thể sử dụng mạng nơron có hiện quả cần phải xác đònh
các yếu tố khi thiết kế mạng như :
- Mô hình mạng là gì ? ( mạng truyền thẳng đơn lớp hay mạng MLP )
- Cấu trúc mạng như thế nào ? ( bao nhiêu lớp , số nơron mỗi lớp …)
- Khi nào thì dừng việc học đế tránh bò “ tràn “ ( overfitting )
- V…v…
1.3.4 Giải thuật di truyền (Genetic algorithms)
Giải thuật di truyền [4] được phát triển dựa trên các quá trình quan sát
được trong tiến hoá tự nhiên. Nguyên lý cơ bản của giải thuật được Holland công
bố lần đầu tiên vào năm 1962 nhưng nền tảng toán học của nó ra đời chậm hơn
khoảng 10 năm (1975). Giải thật di truyền mô phỏng lại hệ thống tién hoá trong
tự nhiên. Các giải thuật di truyền tiến hoá tập cá thể đánh giá và biến đổi chúng.
Ví dụ xác đònh xem làm thế nào để lựa chọn các cá thể tạo giống và những cá
thể nào sẽ bò loại bỏ. giải thuật cũng mô phỏng lại yếu tố gen trong nhiễm sacé
thể sinh học trên máy tính để có thể giải quyết nhiều bài toán thực tế khác nhau.
Giải thuật di truyền là một giải thuật tối ưu và nó được sử dụng rộng rãi trong
việc tối ưu hoá các kỹ thuật khai phá dữ liệu. Việc sử dụng các giải thuật di
-17-
Dữ liệu
Mô hình mạng
nơron
Mẫu chiết
xuất đđược

truyền trong khai phá dữ liệu có rất nhiều dạng nhưng nói chung nó được sử
dụng trên nền của các kỹ thuật khai phá dữ liệu khác, ví dụ như mạng nơron hay
kỹ thuật phân lớp láng giềng gần nhất. Sở dó giải thuật này cần thiết trong khai
phá dữ liệu vì hầu hết các kỹ thuật khai phá dữ liệu đều có thể quy về bài toán
tối ưu. Ví dụ khi dùng giải thuật di truyền với mạng nơron, giải thuật di truyền
có thểû dùng để tìm kiếm các trọng số cho một cấu trúc mạng tối ưu. Đối với
thuật toán láng giềng gần nhất, giải thuật di truyền có thể hỗ trợ tìm các trọng
số quan trọng số quan trọng tối ưu để áp dụng cho mỗi yếu tố dự đoán.
Giải thuật di truyền đã được dùng để phân lớp, phân chùm, dự đoán thậm
chí cả luật kết hợp. Ngoài ra các giải thuật di truyền còn được ứng dụng để lập
lòch, robot, kinh tế, sinh học và nhận dạng mẫu
Giải thuật di truyền được sử dụng để tìm ra mô hình biểu diễn dữ liệu phù
hợp nhất. Mô hình ban đầu được lựa chọn bất kỳ và sau nhiều vòng lặp, các mô
hình được kết hợp với nhau để tạo ra các mô hình mới. Khi sử dụng giải thuật di
truyền để giải quyết một vấn đề, công việc đầu tiên có lẽ là khó nhất đó là làm
thế nào để mô phỏng bài toán như một tập thế các cá thể. Mỗi cá thể được biểu
diễn như xâu ký tự của một bảng chữ cái nào đó và được dònh nghóa như sau [4]:
Cho bảng chữ cái A, một cá thể (individual or choromosome) hay còn gọi
là một xâu
n
llll , ,
21
=
trong đó
Al
j

. Mỗi ký tự được gọi là một gene. Giá trò
của mỗi ký tự được gọi là alleles. Một quần thể (population) P là một tập các cá
thể.

Một trong những thành phần quan trọng nhất của một giải thuật di truyền
đó là phải lựa chon ra các cá thể. Việc lựa chọn những cá thể tốt nhất thường sử
dụng hàm
Đo độ thành công hay thất bại hay còn được gọi là hàm thích nghi ( fitness
function) ƒ. [4] Hàm ƒ được đònh nghóa như sau :
-18-
Cho một quần thể P , một hàm thích nghi f là một ánh xạ : ƒ: P R
Quá trình lựa chọn các cá thể đơn giản nhất là dựa trên độ thích nghi của
chúng :



=
Plj
i
li
ljf
lf
P
)(
)(
Trong đó p
li
là xác xuất để lựa chọn cá thể l
i
Ta có thể đònh nghóa giải thuật di truyền như sau [4] :
Giải thuật di truyền là một mô hình tính toán gồm 5 thành phần sau :
1. Tập các cá thể ban đầu ( quần thể ) P
2. Toán tử lai ( crossover)
3. Toán tử đột biến ( mutation )

4. Hàm thích nghi ƒ
5. Thuật toán lặp quá trình áp dụng toán tử lai và toán tử đột biến vào quần
thể P , sử dụng hàm thích nghi để quyết đònh xem giữ lại những cá thể tốt
nhất trong quần thể P . Tại mỗi vòng lặp, thuật toán sẽ thay thế một lượng
cá thể trong quần thể P ( số lượng này thường được đặt trước ) và thuật
toán kết thúc khi đạt đến một ngường nào đó .
Thuật toán sau đây sẽ mô tả các bước thực hiện của một giải thuật di truyền:
Input:
P// quần thể ban đầu
Output :
P’// quần thể đã được cải tiến
Genetic algorithm:
Repeat:
N=/P/ ; P’=Þ
Repeat
i
1 ,
i
2
= select (P) ; o
1
,o
2
=cross(i
1
,i
2
);
-19-
o

1
=mutate(o
1
);o
2
=mutate(o
2
);
P’=P’v{o
1
,o
2
}
Until /P’/= N ; P=P’
Until thoả mãn điều kiện dừng
Ưu điểm chính khi sử dụng giải thuật di truyền đó là dễ song song hoá.
Tuy nhiên, giải thuật di truyền cũng có một số điểm yếu sau:
- Giải thuật di truyền khó hiểu và khó giải thích cho người sử dụng
- Việc hình dung bài toán và tìm phương pháp biểu diễn dùi dạng các
cá thể không phải lúc nào cũng dễ dàng.
- Việc lựa chọn hàm f nào cho phù hợp cũng không phải là vấn đề đơn
giản.
1.3.5 Luật kết hợp (Association Rules)
Trong thực tế những chuyên gia về kinh doanh và tiếp thò rất thích các
luật đại thể như: “ 90% phụ nữ có xe máy máu đỏ và đeo đồng hồ Th Sỹ thì
dùng nước hoa hiệu Chanel”. Những thông tin như vậy rất hữu ích cho việc đònh
hướng các hoạt động tiếp thò và kinh doanh. Vấn đề đặt ra là liệu có thể tìm ra
những luật như vậy bằng các công cụ khai thác dữ liệu hay không? Câu trả lời là
có, đó chính là nhiệm vụ khai thác luật kết hợp.
Việc phát triển một thuật toán phải phát hiện luật này trong một cơ sở dữ

liệu lớn là không khó. Tuy nhiên, vấn đề là ở chỗ có thể có rất nhiều luật kiểu
này hoặc là ta chỉ biết một tập nhỏ dữ liệu trong cơ sở dữ liệu lớn thoả mãn tiền
đề của luật. Chẳng hạn, chỉ có một không nhiều phụ nữ có xe máy đỏ và đeo
đồng hồ Thụy Sỹ. Số lượng các luật kết hợp trong một số cơ sở dữ liệu lớn gần
như vô hạn. Do vậy thuật toán sẽ không thể phát hiện hết các luật và không
phân biệt đựơc luật nào là thông tin thực sự có giá trò và thú vò.
Vậy luật kết hợp nào là thực sự có giá trò và thú vò? Chẳng hạn ta có luật:
âm nhạc, thể thao => thiếu nhi, nghóa là những người mua sách âm nhạc và thể
thao thì cũng mua sách thiếu nhi. Lúc đó ta quan tâm đến số lượng trường hợp
khách hàng thoả mãn luật này trong cơ sở dữ liệu hay độ hỗ trợ (Support) cho
-20-
luật này. Độ hỗ trợ cho luật chính là phần trăm số bản ghi có cả sách âm nhạc
thể thao và thiếu nhi hay tất cả những người thích cả ba loại sách trên.
Tuy nhiên, giá trò độ hỗ trợ là không đủ. Có thể có trường hợp ta có một
nhóm tương đối những người đọc cả ba loại trên nhưng lại có một nhóm với lực
lượng lớn hơn những người thích sách thể thao, âm nhạc mà không thích sách
thiếu nhi. Trong trường hợp này tính kết hợp rất yếu mặc dù độ hỗ trợ tương đối
cao. Như vậy, chúng ta cần thêm một độ đo thứ hai đó là độ tin cậy confidence).
Trong trường hợp này độ tin cậy chính là phần trăm các bản ghi có sách thiếu
nhi trong số các bản ghi có sách âm nhạc và thể thao.
Thực tế luật kết hợp hữu ích trong khai thác dữ liệu nếu chúng ta đã có một ý
tưởng ban đầu về cái chúng ta muốn biết. Điều này chứng tỏ một vấn đề là
không có thuật toán tìm ra nhiều luật có thể cũng tìm ra rất nhiều các luật không
có giá trò trong khi khác chỉ tìm ra một số lượng hạn chế các luật kết hợp cũng
có thể để mất các thông tin quý giá.
1.4 Những thách thức trong khai phá dữ liệu
Đầu vào chủ yếu của một hệ thống khai thác tri thức là các dữ liệu thô
trong cơ sở dữ liệu. trong thực tế các dữ liệu thường động, không đầy đủ, lớn và
bò nhiễu. Trong một số trường hợp khác người ta có thể không biết trong cơ sở
dữ liệu có chứa các thông tin cần thiết cho việc khai thác hay không và làm thế

nào để giải quyết với sự dư thừa thông tin.
Kích thước dữ liệu lớn: Cho đến nay các cơ sở dữ liệu với hàng trăm
trường, bảng, hàng triệu bảng ghi với kích thước đến gigabyte là chuyện rất bình
thường. Hiện nay các cơ sở dữ liệu có kích thước lớn tới Tetrabyte. Các phương
pháp giải quyết hiện nay là đưa ra một ngưỡng cho cơ sở dữ liệu, lấy mẫu, các
phương pháp xấp xỉ, xử lý song song…
-21-
Không chỉ có số lượng bản ghi lớn mà số các trường trong cơ sở dữ liệu
cũng nhiều.
Vì vậy mà kích thước bài toán trở nên lớn hơn, không gian tìm kiếm mô
hình suy diễn tăng lên rất nhiều. Biện pháp khắc phục là làm giảm kích thước
của bài toán và sử dụng các tri thức biết trước để xác đònh và loại bỏ các biến
không phù hợp.
Dữ liệu động: Đặc điểm cơ bản của hầu hết các cơ sở dữ liệu là nội dung
của chúng liên tục thay đổi. Dữ liệu có thể thay đổi theo thời gian và việc khai
phá dữ liệu bò ảnh hưởng bởi thời điểm quan sát dữ liệu. Ví dụ trong cơ sở dữ
liệu về tình trạng bệnh nhân, một số giá trò dữ liệu là hằng số, một số khác lại
thay đổi liên tục theo thời gian (ví dụ như cân nặng , chiều cao), một số khác lại
thay đổi tuỳ thuộc vào tình huống và chỉ có các giá trò quan sát mới nhất là
đúng(ví dụ nhòp đập của mạch). Việc thay đổi dữ liệu nhanh chóng có thể làm
cho các mẫu khác khai thác được trước đó mất giá trò. Hơn nữa các biến trong cơ
sở dữ liệu của ứng dụng đã cho cũng có thể bò thay đổi, xoá bỏ hoặc tăng lên
theo thời gian. Vấn đè này có thể được giải quyết bằng các giải pháp học tăng
cường.
• Các trường không phù hợp :Một đặc điểm quan trọng khác là tính
không thích hợp của dữ liệu ,nghóa là các mục dữ liệu trở thành không
thích hợp với mục đích hiện tại của việc khai thác.
• Các giá trò bò thiếu (missing value): giá trò của các thuộc tính dữ liệu
có thể ảnh hưởng đến kết quả khai thác dữ liệu. Dữ liệu thì phải xử lý
bằng cách gắn cho một giá trò hoặc kiểm tra để xác đònh giá trò của nó.

• “Tràn”: Khi một giải thuật tìm kiếm các tham số tốt nhất cho mô hình
biểu diễn tập dữ liệu hữu hạn thì có thể bò hiện tượng “tràn ”dữ liệu,
nghóa là mô hình đó chỉ phù hợp với tập dữ liệu dùng để xây dựng mô
-22-
hình mà không có khả năng dự đoán cho các dự đoán cho các dự liệu
mới. Điều đó có nghóa là mô hình học thì tốt nhưng khái quát lại rất
kém .
1.5. Ứng dụng của khai phá dữ liệu
Khai phá dữ liệu đã được ứng dụng rất thành công trên nhiều cơ sở dữ
liệu thực tế ví dụ như phân tích cơ sở dữ liệu khách hàng, tìm kiếm các mẫu
trong số các khách hàng và sử dụng các mẫu này để lựa chọn các khách hàng
trong tương lai. Phân tích các mẫu dữ liệu của các gói tin gửi đi trên mạng để từ
đó đưa ra chế độ cảnh báo về khả năng, nguy cơ mất an ninh trên mạng…
Các ứng dụng khác của khai phá dữ liệu trong kinh doanh như: Phân tích
chứng khoán và các văn kiện tài chính, phân tích và báo cáo những thay đổi
trong dữ liệu, phát hiện và phòng chống gian lận.
Ngoài ra khai phá dữ liệu cũng có những ứng dụng trong một số ngành
khoa học như: thiên văn học, sinh học (tìm kiếm các mẫu trong cấu trúc phân
tử), lập mô hình dự đoán thay đổi thời tiết.
-23-
Chương 2: ỨNG DỤNG KHAI PHÁ DỮ LIỆU
TRONG VIỆC CẢNH BÁO NGUY CƠ MẤT AN
NINH TRÊN MẠNG
2.1. Phát triển và bảo mật mạng cục bộ hiện nay
2.1.1. Thực trạng việc phát triển mạng máy tính
Vào những năm gần đây khi Việt Nam chính thức kết nối vào mạng Internet,
nhà nước cũng có sự quan tâm và đầu tư xây dựng cơ sở hạ tầng và thúc đẩy ứng
dụng công nghệ thông tin vào các lónh vực của đời sống kinh tế xã hội. Chính vì
vậy phạm vi ứng dụng của máy tính ngày càng rộng, nhu cầu trao đổi thông tin
giữa các máy tính với nhau trở nên cấp thiết hơn. Nhiều cơ quan hành chính sự

nghiệp, các doanh nghiệp, các đơn vò trong và ngoài nước đã trang bò cho mình
máy tính và hầu hết họ cũng đã xây dựng được mạng cục bộ để trao đổi thông
tin, khai thác những phần mềm ứng dụng trên mạng phục cho các mục đích quản
lý, kinh doanh, điều hành… của đơn vò mình.
Việc ứng dụng mạng máy tính vào nhiệm vụ của các tổ chức, đơn vò trên đã
đem lại một hiểu quả rõ rệt, chính vì vậy mà số lượng các dòch vụ mạng trong
mạng ngày càng tăng, các ứng dụng được xây dựng ngày càng nhiều về số
lượng, phạm vi ứng dụng sâu và rộng hơn vào công việc của họ. Do vậy có
nhiều nơi công nghệ thông tin đã dần thay thế rất nhiều nhân lực, những công
việc trước đây phải làm thủ công trên giấy tờ phức tạp bây giờ đã được quản lý
một cách khoa học trên các phần mền máy tính và thực sự nó đã làm thay đổi cả
cách hoạt động, quản lý và điều hành ở những nơi này.
2.1.2. Thực trạng việc bảo mật cho mạng cục bộ hiện nay
-24-
Bên cạnh những lợi ích to lớn mà mạng và các dòch vụ, phần mềm trên
mạng đem lại thì có một vấn đề hết sức quan trọng mang tính thời sự đặt ra cho
các đơn vò này là việc quản lý, điều hành và bảo mật cho các dòch vụ, các ứng
dụng, các thông tin được trao đổi trên đường truyền mà họ đang khai thác như
thế nào cho chặt chẽ và an toàn. Sự mất an toàn này có thể xuất phát từ nhiều
nguyên nhân như: Do sự phá hoại của Virus máy tính, thông tin bò đánh cắp do
các phần mềm gián điệp nhưng vấn đề muốn bàn tới ở đây là vấn đề an ninh, an
toàn thông tin cho các trao đổi, truy cập, khai thác thông tin trong mạng LAN,
giúp người quản trò mạng quản lý tốt tài nguyên của mình. Các thông tin là
những thông tin về quản lí, điều hành, kinh doanh, giao dòch nằm trong các dòch
vụ nó quyết đònh đến sự sống còn của các tổ chức, doanh nghiệp.
2.2. Vấn đề an ninh, an toàn của việc trao đổi thông tin trên mạng
Như vậy vấn đề mà luận văn muốn đề cập tới ở đây là vấn đề an ninh và
an toàn cho việc trao đổi, truy cập tài nguyên trên mạng và hiện tại việc bảo
mật cho các cơ sở dữ liệu này cũng mới từ hai hướng chính đó là:
 Từ máy chủ: Quản trò mạng sẽ dùng các chương trình bảo vệ Firewall,

chương trình lọc và thiết lập các chế độ hạn chế truy cập, khai thác
dưa trên một số tiêu chí nhất đònh.
 Cơ sở dữ liệu: Thiết đặt các chế độ bảo vệ cho việc truy cập vào các
dòch vụ để khai thác cơ sở dữ liệu, các biện pháp như sao lưu, khôi
phục.
Với 2 cách này thì khi các ứng dụng truy cập vào các dòch vụ khai thác
thông tin, trao đổi thông tin với dòch vụ vẫn tồn tại một số hạn chế như sau:
 Người quản trò mạng vẫn chưa kiểm soát được hết lưu lượng, thời gian,
các kiểu dòch vụ mà các máy trong mạng sử dụng khai thác.
-25-

×