Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (tt)
Trang 1HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
-
TRẦN MỸ HỒNG
NGHIÊN CỨU PHÂN LOẠI THƯ RÁC DỰA TRÊN
KỸ THUẬT HỌC MÁY NẠVE BAYES
CHUYÊN NGÀNH : HỆ THỐNG THƠNG TIN
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: TS Hoàng Xuân Dậu
Phản biện 1: ……… Phản biện 2: ………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: giờ ngày tháng năm
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3MỞ ĐẦU
Trong thời đại bùng nổ cơng nghệ thơng tin hiện nay, một trong những dịch vụ đã được ứng dụng từ lâu nhưng vẫn mang những ưu điểm khơng thể thay thế đĩ là dịch vụ thư điện tử (email) Email là một phương tiện giao tiếp rất đơn giản, tiện lợi, rẻ tiền và hiệu quả giữa mọi người trong cộng đồng sử dụng mạng Internet Lượng email trao đổi hàng ngày rất lớn, lên đến hàng tỷ email mỗi ngày Một trong các vấn đề gây đau đầu cho các nhà cung cấp dịch vụ email và người dùng email là thư rác (spam) Thư rác thường được gửi với số lượng rất lớn, khơng được người dùng mong đợi, thường với mục đích quảng cáo, cĩ thể đính kèm virus, gây phiền tối khĩ chịu cho người dùng, làm giảm tốc độ đường truyền Internet và tốc độ xử lý của máy chủ email, gây thiệt hại rất lớn về kinh tế
Đã cĩ nhiều phương pháp được nghiên cứu và triển khai để giảm số lượng thư rác Như việc đưa ra các luật lệ để hạn chế việc gửi thư rác, đưa ra các phương pháp kĩ thuật lọc thư rác như: lọc dựa trên địa chỉ IP (whitelist, blacklist), lọc dựa trên danh tính người gửi, lọc dựa trên chuỗi hỏi đáp, và phương pháp lọc nội dung…
Trong các phương pháp lọc thư rác, phương pháp lọc dựa trên nội dung hiện đang được quan tâm nhiều và được đánh giá là cĩ hiệu quả cao Phương pháp lọc nội dung dựa trên việc phân tích nội dung của thư để phân biệt thư rác và thư bình thường Đây cũng là tiền đề để áp dụng các thuật tốn học máy, nhưng Nạve Bayes vào lọc email rác dựa trên nội dung của chúng
Nhằm nghiên cứu và thử nghiệm phương pháp lọc thư rác dựa trên phương pháp học máy Nạve Bayes, luận văn thực hiện đề tài “Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Nạve Bayes”
Luận văn gồm cĩ ba chương như sau:
Chương 1: Tổng quan về email và vấn đề lọc thƣ rác: Chương này trình bày một
cách tổng quan về email, các dịch vụ email, vấn đề bảo mật email và dịch vụ email, thư rác
Trang 4Chương 3: Thử nghiệm và kết quả: Phần đầu chương giới thiệu bộ dữ liệu thử
nghiệm, phần sau thử nghiệm bộ lọc thư rác dựa trên Nạve Bayes Từ đĩ đưa ra đánh giá, nhận xét
Trang 5CHƯƠNG 1: TỔNG QUAN VỀ EMAIL VÀ
VẤN ĐỀ LỌC THƯ RÁC 1.1 Khái quát về email và dịch vụ email
1.1.1 Giới thiệu
Email (electronic mail), hay thư điện tử là phương pháp trao đổi các thông điệp giữa
một người gửi với một hoặc nhiều người nhận thông qua các mạng máy tính và mạng Internet Email là một trong các phương tiện trao đổi thông tin được sử dụng rộng rãi nhất trên mạng Internet Email có thể được gửi đi ở dạng thông thường hay mã hoá và được chuyển qua các mạng máy tính đặc biệt là mạng Internet Email có thể chuyển từ một máy nguồn tới một hay nhiều máy nhận
Hệ thống email hoạt động dựa trên mô hình lưu và chuyển tiếp (store and forward) Máy chủ email nhận, chuyển tiếp, phân phối và lưu trữ thông điệp Quá trình gửi nhận email không yêu cầu người dùng (người gửi, người nhận) và máy tính của họ trực tuyến cùng một lúc Người dùng chỉ cần kết nối trong một thời gian ngắn, thường là kết nối tới máy chủ trong một khoảng thời gian đủ để gửi và nhận thông điệp
1.1.1.1 Các giao thức gửi và nhận email
* Giao thức SMTP
SMTP (tiếng Anh: Simple Mail Transfer Protocol - giao thức truyền tải thư tín đơn giản) là một chuẩn truyền tải thư điện tử qua mạng Internet được sử dụng rộng rãi SMTP được đề xuất lần đầu tiên vào năm 1982 trong chuẩn RFC 821 [1] và được cập nhật, mở rộng thành Extended SMTP (ESMTP ) vào năm 2008 trong chuẩn RFC 5321 [2]
Giao tiếp SMTP giữa các máy chủ email sử dụng cổng TCP 25 Mặc dù các máy chủ email thường sử dụng giao thức SMTP để gửi và nhận các email, các ứng dụng máy khách chỉ sử dụng giao thức SMTP để chuyển tiếp Để tải email, các ứng dụng máy khách thường
sử dụng hoặc giao thức IMAP hay POP3
* Giao thức POP
POP (Post Office Protocol) là một giao thức tầng ứng dụng, dùng để lấy thư điện tử
từ máy chủ email, thông qua kết nối TCP/IP trên cổng TCP 110 Các phiên bản của POP là
Trang 6POP1, POP2 và POP3 Khi POP3 ra đời, đã ngay lập tức thay thế hoàn toàn các phiên bản
cũ Vì vậy, ngày nay nhắc đến giao thức POP thì thường là ám chỉ POP3
Thiết kế của POP hỗ trợ chức năng cho người dùng có kết nối Internet không thường trực (như kết nối dial-up), cho phép người dùng kết nối với server, tải email về, sau đó có thể xem, thao tác với email trong chế độ offline Một khi email được nhận bởi người dùng, chúng thường bị xóa khỏi hộp thư của người dùng tại máy chủ email POP3 được quy định bởi tiêu chuẩn RFC 1939 [3]
* Giao thức IMAP
IMAP (Internet Message Access Protocol) là thế hệ mới của giao thức POP IMAP đặt sự kiểm soát email trên máy chủ email trong khi nhiệm vụ của POP là tải toàn bộ thông điệp email máy khách IMAP cung cấp truy cập email theo ba chế độ khác nhau: offline (ngoại tuyến), online (trực tuyến) và disconnected (ngắt kết nối) IMAP4 được quy định bởi tiêu chuẩn RFC 2060 [4] và nó sử dụng cổng TCP 143
1.1.1.2 Các thành phần của hệ thống email
Hệ thống email thông trường gồm 3 phần chính: Mail User Agent (MUA), Mail Tranfer Agent (MTA) và Mail Delivery Agent (MDA) Phần tiếp theo trình bày chi tiết về các thành phần này
* Mail User Agent (MUA)
* Mail Tranfer Agent (MTA)
* Mail Delivery Agent (MDA)
1.1.1.3 Phương thức hoạt động của hệ thống email
Hoạt động của hệ thống email có thể dược minh họa qua phân tích một thí dụ như sau:
- Nguyễn dùng MUA của mình để soạn một thư có địa chỉ người nhận là Trần với địa chỉ là tran@b.org Nguyễn nhấn nút Send và phần mềm thư điện tử của Nguyễn sử dụng giao thức SMTP để gửi thư đến MTA, hay máy chủ thư điện tử, của Nguyễn Trong thí dụ thì máy chủ này là smtp.a.org được cung cấp từ dịch vụ Internet của Nguyễn
- MTA này sẽ đọc địa chỉ người nhận (tran@b.org) và dựa vào phần tên miền nó sẽ truy vấn máy chủ email của tên miền này thông qua hệ thống tên miền (DNS)
Trang 7- Máy chủ DNS của b.org là ns.b.org sẽ trả lời về một bản ghi trao đổi thư (bản ghi MX), đây là bản ghi chỉ ra cách thức làm thế nào định tuyến cho email này Trong thí dụ thì mx.b.org là máy chủ email từ dịch vụ cung ứng Internet của Trần
- smtp.a.org gửi thư tới mx.b.org dùng giao thức SMTP, và mx.b.org sẽ lưu thư vào hộp thư của Trần
- Khi đọc Trần ra lệnh nhận thư trên máy (MUA) của Trần, MUA lấy thư về bằng cách áp dụng giao thức POP3
1.1.1.4 Khuôn dạng của một email
RFC 822 [5] định nghĩa một email gồm có hai phần: phần tiêu đề (header) và phần thân (body) Cả hai phần đều được thể hiện dưới dạng ký tự ASCII Ban đầu, phần thân được qui định có khuôn dạng văn bản đơn giản Sau này người ta đề xuất một chuẩn mới gọi là MIME (Multi-Purpose Internet Mail Extensions), có thể cho phép phần thân của email chứa bất kỳ loại dữ liệu nào
Phần tiêu đề bao gồm nhiều dòng thông tin, mỗi dòng kết thúc bằng tổ hợp hai ký tự
<CRLF> Phần tiêu đề được chia khỏi phần thân bởi một hàng rỗng Mỗi một hàng tiêu đề chứa một cặp “tên” và “giá trị”, cách nhau bởi dấu hai chấm (:) Người dùng có thể rất quen với nhiều hàng tiêu đề vì họ thường phải điền thông tin vào
Chuẩn RFC 822 được mở rộng năm 1993 thành chuẩn MIME và được cập nhật lại năm 1996 để cho phép email mang được nhiều loại dữ liệu: audio, video, hình ảnh, tài liệu văn bản… Chuẩn MIME về cơ bản có ba phần Phần đầu tiên là tập các dòng header dùng
để tương thích với phần header cũ của RFC 822 Theo nhiều cách, những dòng header này
mô tả dữ liệu chứa trong phần thân
Phần thứ hai là các định nghĩa cho một tập các kiểu nội dung và kiểu con nếu có Bảng 1.6 là ví dụ một số kiểu dữ liệu mà MIME định nghĩa
1.1.2 Các vấn đề bảo mật email và dịch vụ email
Bảo mật email và dịch vụ email đã và đang là vấn đề nóng thu hút được sự quan tâm của các cơ quan, tổ chức, các chuyên gia và người dùng Các vấn đề bảo mật nổi cộm đối với email và dịch vụ email bao gồm: thư rác (spam), virus và các loại malware, email giả mạo và phishing email
* Thư rác
Trang 8Thư rác là các thư điện tử có nội dung vô bổ, thường là thư quảng cáo về một nội dung, sản phẩm, hoặc website nào đó, đôi khi là kèm theo lừa đảo và trộm cắp thông tin cá nhân Spam thường được gửi cùng lúc cho hàng loạt địa chỉ email, và gửi nhiều lần thông qua một mail server nào đó Spam là loại thông điệp điện tử mà người dùng không mong muốn nhận được
* Virus và các loại malware
Virus và các loai malware (phần mềm độc lại) là các phần mềm gây hỏng hóc hệ thống máy tính và các phần mềm có ích Các chương trình hay phần mềm độc hại có thể xâm nhập hệ thống máy tính của người dùng bằng nhiều cách, và một trong các cách phổ biến nhất là thông qua thư điện tử Từ một máy tính, virus thu thập các địa chỉ email trong máy nạn nhân và gửi email giả mạo có nội dung hấp dẫn kèm theo file virus để lừa người nhận mở các file này
Các virus email được gửi thường có nội dung khá “hấp dẫn” Một số virus còn trích dẫn nội dung của 1 email trong hộp thư của nạn nhân để tạo ra phần nội dung của email giả mạo, điều đó giúp cho email giả mạo có vẻ “thật” hơn và người nhận dễ bị mắc lừa hơn Với cách hoàn toàn tương tự như vậy trên những máy nạn nhân khác, virus có thể nhanh chóng lây lan trên toàn cầu theo cấp số nhân
* Email giả mạo và phishing email
Ngoài việc gửi thư rác và lây lan các phần mềm độc hại, tin tặc còn có thể giả mạo email để đánh lừa người dùng nhằm phá hoại, trục lợi Trong đó, phishing email là hình thức lừa đảo nhằm đánh cắp các thông tin nhạy cảm của người dùng, như thông tin thẻ tính dụng hay tên tài khoản sử dụng và mật khẩu đăng nhập vào các trang thông tin điện tử hay dịch
vụ ngân hàng trực tuyến
1.1.3 Các biện pháp đảm bảo an toàn email và dịch vụ email
Nhiều kỹ thuật đã được nghiên cứu và ứng dụng nhằm đảm bảo an toàn cho email và dịch vụ email Có thể liệt kê các biện pháp thông dụng, gồm:
Lọc spam và malware email
Cấu hình an toàn cho máy chủ email
Phương pháp DomainKeys
Phương pháp Call-ID
Trang 9 Phương pháp Sender Policy Framework (SPF)
Phương pháp Sender ID Framework
Phương pháp lọc dựa trên mạng xã hội
Ngăn chặn việc gửi thư rác bằng chính sách và luật pháp
Các tiểu mục tiếp theo sẽ trình bày chi tiết nội dung các biện pháp kể trên
1.1.3.1 Lọc spam và malware email
Lọc thư rác, hay lọc spam và malware email là biện pháp hiệu quả đầu tiên và có thể được triển khai trên máy chủ email (MTA/MDA) và máy khách email (MUA) Dưới đây là các kỹ thuật cụ thể cho lọc spam và malware email
1.1.3.2 Cấu hình an toàn cho máy chủ email
Cấu hình an toàn cho máy chủ email là một biện pháp hiệu quả để tránh các máy chủ
bị lợi dụng để phát tán thư rác và các phần mềm độc hại Các biện pháp cụ thể gồm:
- Cấu hình tránh Open Relay
- Bật chế độ xác thực SMTP (SMTP authentication)
- Giảm số lượng kết nối SMTP đồng thời để hạn chế tấn công DoS;
- Kích hoạt Reverse DNS với máy chủ email để ngăn chặn tin tắc gửi email giả mạo;
- Sử dụng blacklist cục bộ (tên miền, địa chỉ IP và địa chỉ email) để chặn các nguồn spams;
- Kích hoạt cơ chế Sender Policy Framework để chặn các nguồn giả mạo;
- Sử dụng SMTP an toàn (Secure SMTP)
1.1.3.3 Phương pháp DomainKeys
Phương pháp DomainKey [6] giúp phân định rõ thư rác và thư thường bằng cách cung cấp cho các hãng cung cấp dịch vụ thư điện tử một cơ chế xác nhận cả tên miền của mỗi người gửi thư điện tử và tính toàn vẹn của mỗi bức thư được gửi đi Sau khi đã xác
Trang 10nhận được tên miền, người ta có thể so sánh tên miền này với tên miền mà người gửi sử dụng trong ô “Người gửi” của bức thư để phát hiện các trường hợp giả mạo
1.1.3.4 Phương pháp Call-ID
Phương pháp Call-ID là một tiêu chuẩn đặt ra trong quá trình gửi thư Tiêu chuẩn này đòi hỏi người gửi thư điện tử phải cung cấp địa chỉ IP của máy chủ gửi thư theo dạng XML vào bản ghi DNS trên máy chủ tên miền của họ Máy chủ nhận thư điện tử và máy khách nhận bức thư đó sẽ kiểm tra địa chỉ gửi thư trong tiêu đề bức thư với địa chỉ đã được công
bố để xác nhận máy chủ gửi thư Các bức thư không khớp với địa chỉ nguồn sẽ bị loại bỏ
1.1.3.5 Phương pháp Sender Policy Framework (SPF)
Phương pháp SPF [7] dựa trên cơ cấu chính sách người gửi, trong đó SPF cũng yêu cầu người gửi thư điện tử phải sửa đổi DNS để cho biết máy chủ nào có thể gửi thư từ một tên miền Internet nhất định Tuy nhiên, SPF chỉ kiểm tra sự giả mạo khi bức thư trong quá trình chuyển thư hay còn gọi là ở mức “ngoài phong bì”, xác minh địa chỉ “phản hồi” của một bức thư, thường được máy chủ nhận thư gửi trở lại trước khi tiếp nhận phần nội dung thư, sau đó sẽ thông báo tới máy chủ nhận thư để loại bỏ bức thư
1.1.3.6 Phương pháp Sender ID Framework
Sender ID Framework là một giao thức xác thực người gửi email do Microsoft đề xuất, được thiết kế nhằm chống lại email giả mạo và email tấn công phishing Theo Microsoft, Sender ID Framework gồm ba phần riêng biệt: Sender Policy Framework (SPF), Caller ID và Submitter Optimization
Hoạt động của Sender ID Framework gồm các khâu:
- Người gửi công khai bản ghi Sender ID lên hệ thống DNS
- Email được gửi qua mạng Internet
- Người nhận tìm bản ghi Sender ID và xác định Purported Responsible Address (PRA) PRA là miền có trong địa chỉ “from”, là địa chỉ gửi email Sau đó so sánh PRA với các địa chỉ IP hợp lệ trong bản ghi Sender ID Nếu giống, email “vượt qua” được bước kiểm
tra Sender ID
1.1.3.7 Phương pháp lọc dựa trên mạng xã hội
Các nghiên cứu gần đây đã bắt đầu khai thác thông tin từ mạng xã hội cho việc xác định thư rác bằng cách xây dựng một đồ thị (các đỉnh là địa chỉ email, cung được thêm vào
Trang 11giữa 2 node A và B nếu giữa A và B có sự trao đổi thư qua lại) Người ta đã sử dụng một số tính chất đặc trưng của mạng xã hội để xây dựng một công cụ lọc thư rác
1.1.3.8 Ngăn chặn việc gửi thƣ rác bằng chính sách và luật pháp
Khi tình trạng thư rác ngày càng tăng trên đường truyền internet gây ra nhiều phiền toái và thiệt hại lớn trên thế giới rất nhiều các quốc gia đã đưa ra các luật để ngăn chặn thư rác Dưới đây là một số nội dung cơ bản liên quan tới giải pháp ngăn chặn thông qua luật lệ pháp lý được đưa ra trên báo điện tử của bộ viễn thông Mỹ là một những nước đầu tiên trên thế giới cố gắng ban hành các văn bản pháp luật để giải quyết vấn đề thư điện tử rác tràn ngập
1.2 Thƣ rác và vấn đề lọc thƣ rác
1.2.1 Khái quát về thư rác
Thư rác, hay spam là một loại thư được gửi với số lượng lớn, theo chủ ý của người gửi, hoàn toàn không có sự liên hệ gì với người nhận
Tác hại của thư rác bao gồm:
- Gây tắc nghẽn đường truyền Internet
- Mất nhiều thời gian để tìm kiếm email hợp lệ khi có quá nhiều spam email Trong nhiều trường hợp, người dùng có thể vô tình xóa mất email quan trọng cùng với email spam
- Gây khó chịu cho người dùng
- Một vài spam email có chứa tệp tin đính kèm và nếu mở tệp đính kèm, máy tính của người dùng có thể bị nhiễm virus hoặc mã độc
1.2.2 Các đặc trưng của thư rác
Đặc tính chung của thư rác là không ràng buộc về mặt nội dung Phần lớn các thư rác tuân theo các mẫu chung và có thể được nhận diện một cách rõ ràng Ngoài ra, các thư rác
có các đặc điểm về ngôn ngữ, thời gian Hầu hết các thư rác này được viết bằng tiếng Anh với tỉ lệ rất cao hơn 80%
Đặc điểm chính của thư rác khác biệt với thư thông thường đó là:
- Thư rác được gửi đi một cách tự động
- Thư rác được gửi đến những địa chỉ ngẫu nhiên trên một diện rộng
- Nội dung của thư rác thường là những nội dung bất hợp pháp, gây phiền hà cho người dùng