Các thuộc tính phân loại

Một phần của tài liệu Giải pháp lọc thư điện tử theo phân tích nội dung (Trang 55)

Để xem xét vấn đề lọc thƣ rác cần xác định các thuộc tính khi coi thƣ là thƣ rác sau khi xem xét các từ ngữ, ký tự xuất hiện trong thƣ. Ví dụ nhƣ cụm từ “Miễn phí”, cụm ký tự “!!!” để chỉ ra thƣ các phải là thƣ rác hay khơng. Tuy nhiên thƣ điện tử cịn cĩ các khía cạnh khác để xem xét, chẳng hạn: loại tên miền của ngƣời gửi (ví dụ:.edu hay .com).

Để áp dụng trực tiếp các thuộc tính đối với việc phân lớp bayeasian mơ tả ở trên bằng cách bổ sung thêm các tính năng này vào vector cho mỗi thƣ. Theo cách này, sẽ cĩ rất nhiều bằng chứng đƣợc đƣa vào trong mơ hình phân lớp và thuật tốn huấn luyện đƣợc áp dụng khơng cần chỉnh sửa thêm.

Chúng ta cũng cần xem xét thêm vài dạng mơ hình thơng tin xác định thuộc tính khác đƣợc sử dụng trong việc phân lớp. Đầu tiền là kiểm tra nội dung thƣ cĩ chứa các

(a) Mơ hình phân lớp Nạve Bayesian (b) Mơ hình phân lớp phức tạp hơn cho phép các sự giới hạn phụ thuộc giữa các tính năng

47

cụm từ xác định; chẳng hạn “khuyến mại”, “trên 18 tuổi”,… Các cụm từ sẵn cĩ này sẽ đƣợc bổ sung thêm vào cơ sở dữ liệu với các giá trị khả năng áp dụng cho chúng.

Chúng ta cũng xem xét các thuộc tính đặc thù của thƣ nhƣ đã nhắc đến ở trên. Chẳng hạn là tên miền ngƣời gửi thƣ. Hầu hết thƣ rác thƣờng khơng đƣợc gửi từ tên miền .edu. Hơn nữa rất nhiều trình duyệt thƣ áp dụng phƣơng pháp tên ngƣời gửi

thân thiện chẳng hạn nhƣ namdd@vdc.com.vn sẽ đƣợc thay bằng Đỗ Đức Nam

(VDC). Bằng việc nhận biết đƣợc việc thay thế tên thân thiện xuất hiện trong chúng ta biết đƣợc thƣ đĩ khơng phải là thƣ rác. Chúng ta cũng cĩ thể cung cấp các bằng chứng để xác định thƣ cĩ phải là thƣ rác hay khơng khi xem xét ngƣời nhận là ngƣời dùng đơn lẻ hay thơng qua danh sách thƣ.

Các nhận biết đơn giản khác là xem xét file đính kèm (thơng thƣờng thƣ rác khơng chứa file đính kèm), hoặc thời gian gửi thƣ (hầu hết thƣ rác đƣợc gửi vào ban đêm). Chúng ta cũng cĩ thể xem xét các dấu hiệu phân biệt hữu ích khác, tuy nhiên các dấu hiệu này thƣờng gặp vấn đề khi áp dụng hệ thống quyết định dựa trên luật. Các thuộc tính bao gồm phần trăm của các ký tự đặc biệt xuất hiện trong chủ đề của thƣ (chẳng hạn nhƣ : “$$$$$KHUYẾN MẠI LỚN $$$$$$”), với phần trăm các ký tự đặc biệt lớn khả năng là thƣ rác cao hơn.

Hình dƣới cho sự khác biệt lớn trong việc phân bố các ký tự đặc biệt xuất hiện trong tiêu đề thƣ rác và thƣ hợp pháp. Nhƣng chỉ dựa vào thuộc tính này khơng thể đƣa ra quyết định tin cậy xác định thƣ là thƣ rác hay khơng mà chúng ta phải sử dụng các thuộc tính nhƣ là các vector tính năng để đƣa ra bằng chứng phân lớp khả năng trong việc xác định thƣ rác. Chúng tơi sử dụng tập huấn luyện chứa khoảng 20 thuộc tính đặc thù cho việc lọc thƣ; 40 22 25 9 3 1 2 1 3 2 2.8 19 8 14 6 8 5 6 4 5 3 2.5 0 5 10 15 20 25 30 35 40 45 0 3 6 9 12 15 18 21 24 27 30

48

Hình 17.Phần trăm các ký tự đặc biệt chứa trong thƣ 2.4. Mơ hình chi tiết

2.4.1. Kiến trúc và nguyên lý hoạt động của hệ thống

a. Kiến trúc của hệ thống

Hình 18.Kiến trúc mơ hình hệ thống lọc thƣ b. Nguyên lý hoạt động của hệ thống

Khi ngƣời dùng sử dụng các trình duyệt thƣ hoặc sử dụng các phƣơng pháp để gửi một bức thƣ điện tử đi trên cổng 25 theo giao thức SMTP, khi đĩ tất cả các gĩi tin cĩ số hiệu cổng đích là 25 đều đƣợc mail proxy định tuyến đến bộ lọc mail. Khi đĩ MailFilter sẽ tiếp nhận các kết nối yêu cầu từ phía ngƣời dùng trên một cổng đƣợc thiết lập sẵn (mặc định 9000) và chuyển kết nối này đến bộ lọc thƣ. Tại đây bộ lọc sẽ tiến hành “lọc” bằng các tác vụ phân tích, kiểm tra, so sánh tồn bộ nội dung, cấu trúc thƣ, các thành phần cấu thành nên một bức thƣ điện tử với CSDL các chính sách lọc với các phƣơng pháp lọc khác nhau. Sau khi kiểm tra tồn bộ một kết nối này với các thơng tin liên quan đến một bức thƣ cần lọc, module lọc sẽ trả về một kết quả thơng báo về kết nối vừa đƣợc lọc:

Nếu kết quả trả về là vi phạm chính sách lọc, thì bộ ra quyết định của module lọc sẽ thực hiện các tác vụ liên quan đến vi phạm đĩ nhƣ: gửi thơng báo từ chối

Bộ lọc ảnh Bộ kiểm sốt Bộ xác định ngơn ngữ Bộ lọc tiếng Anh Bộ lọc tiếng Việt

Hệ thống phân tích nội dung thư

Bộ ra quyết định M a il P ro x y CSDL Bộ chuẩn hố DL

49

kết nối, thơng báo bị cấm, lƣu lại các thƣ vừa gửi,…(các tác vụ này đã đƣợc thiết lập trƣớc)

Nếu kết quả trả về là khơng vị phạm các chính sách lọc, thì module ra quyết định của module lọc sẽ gửi trả lại kết nối đến Mail proxy, để Mail proxy chuyển các kết đến module trung chuyển thƣ MTA để chuyển ra đến máy chủ thƣ ngồi Internet.

Khi ngƣời dùng dùng các trình duyệt thƣ để nhận các thƣ từ các Máy chủ thƣ trên mạng Internet trên các cổng của các giao thức nhận Mail POP, IMAP,…Khi đĩ tất cả giao dịch kết nối của các thƣ nhận về đều đƣợc tiếp nhận bởi Mail proxy trên một cổng đã đƣợc định sẵn (Module Mail Proxy đƣợc sử dụng tƣơng ứng với các giao thức nhận thƣ về: IMAP -> IMAP Proxy, POP->POP Proxy, …), sau đĩ Mail Proxy sẽ chuyển tồn bộ các kết nối này đến module lọc thƣ. Tại đây bộ lọc sẽ tiến hành “lọc” bằng các tác vụ phân tích, kiểm tra, so sánh tồn bộ nội dung, cấu trúc thƣ, các thành phần cấu thành nên một bức thƣ điện tử với CSDL các chính sách lọc với các phƣơng pháp lọc khác nhau. Sau khi kiểm tra tồn bộ một kết nối này với các thơng tin liên quan đến một bức thƣ cần lọc, module lọc sẽ trả về một kết quả thơng báo về kết nối vừa đƣợc lọc:

Nếu kết quả trả về là vi phạm chính sách lọc, thì bộ ra quyết định của module lọc sẽ thực hiện các tác vụ liên quan đến vi phạm đĩ nhƣ: gửi thơng báo từ chối kết nối khơng cho phép các thƣ đĩ chuyển về máy trạm cả ngƣời sử dụng, xĩa thƣ, thơng báo bị cấm, lƣu lại các thƣ vừa gửi,…(các tác vụ này đã đƣợc thiết lập trƣớc)

Nếu kết quả trả về là khơng vị phạm các chính sách lọc, thì module ra quyết định của module lọc sẽ gửi trả lại kết nối đến Mail proxy, để Mail proxy chuyển kết nối này đến bộ trung chuyển thƣ MTA để trả thƣ về đến máy của ngƣời sử dụng trên các cổng tƣơng ứng.

2.5. Đặc tả thành phần

Trong hệ thống lọc nội dung thƣ điện tử các module đƣợc phát triển dựa trên các phần mềm nguồn mở cĩ tính năng gần giống với yêu cầu của mơ hình lọc thƣ.

2.5.1. Bộ điểu khiển truyền thƣ

Trên bất kỳ một hệ thống nào, Windows hay Linux hay …, hệ thống máy chủ thƣ luơn là một vấn đề lớn và rất phức tạp. Hiện nay cĩ rất nhiều phần mềm nguồn mở trong đĩ cĩ Qmail đƣợc cài đặt và vận hành trên hệ điều hành Linux cung cấp cho một dịch vụ máy chủ thƣ hồn hảo với kiến trúc đƣợc thiết kế cẩn thận để vƣợt qua những điểm yếu bảo mật của các thƣ server khác nhƣ Sendmail. Một hệ thống MTA sử dụng Qmail cĩ các tính năng nỏi bật sau: (adsbygoogle = window.adsbygoogle || []).push({});

50

Ổn định và hiệu năng: qmail cĩ khả năng chuyển nhận hàng triệu thơng điệp một

ngày1. Tuy nhiên, nếu biến nĩ thành một máy chủ thƣ phục vụ tất cả các mail

protocol thì bị giới hạn trong vấn đề xác thực (authentication). Nếu máy chủ thƣ thuộc một mạng dùng hồn tồn Unix thì giới hạn này cĩ thể khắc phục dễ dàng. Khơng may trên thực tế hiện nay, khơng cịn nhiều mạng “thuần” Unix hoặc “thuần” một hệ điều hành nào khác. Bởi vậy, qmail hoạt động nhƣ một mail gateway chỉ cĩ trách nhiệm chuyển thƣ đến các thƣ servers khác (trong giới hạn cho phép domain) mà khơng phải lo vấn đề xác thực, do đĩ, ngồi tính bảo mật, tính hiệu năng đƣợc nâng cao đáng kể.

Tính bảo mật: Nhƣ đã nêu ra ở trên những khĩ khăn trong cơ chế quản lý kiểm dịch của một (hoặc nhiều) mạng cĩ đa hệ điều hành khơng những giảm sút tính hiệu năng mà cịn ảnh hƣởng lớn đến tính bảo mật. Lý do, quản lý một trung tâm tài nguyên nhân dụng (central user database) dễ dàng và ổn định hơn nhiều user database. Hơn thế, cơ chế Internet <--> Mail Gateway <--> Firewall <--> Internal Mail Servers <--> Users chặc chẽ và an tồn hơn. Ðĩ là chƣa kể ứng dụng kiểm sốt / ngăn chặn viruses, trojans và cách loại scripts mang tính phá hoại trên một Unix Mail Gateway trƣớc khi thơng điệp đƣợc chuyển vào một Mail Server bên trong (Microsoft Exchange hoặc IBM Lotus chẳng hạn). Các ứng dụng cho POP3 hoặc IMAP đƣợc thiết lập một cách độc lập trên internal mail servers và ngƣời dùng cĩ thể truy cập qua một cơ chế firewalling nào đĩ

Do các đặc tính nổi trội của Qmail mà trong mơ hình này ta lựa chọn Qmail để thực hiện module vận chuyển thƣ trong hệ thống lọc thƣ trong module MTA.

Kiến trúc thiết kế của qmail bắt nguồn từ một số khuơn mẫu khơng phải là mới, nhƣng qmail là một ví dụ cho việc sử dụng chúng một cách hiệu quả nhất. Một trong những nguyên tắc chủ chốt trong kiến trúc của qmail là Defense in Depth, nghĩa là qmail khơng phụ thuộc vào một ý tƣởng riêng lẽ nào để đạt đƣợc tính bảo mật, mà sẽ đƣợc bảo mật qua nhiều lớp. Từ cách phân chia qmail thành những module với mục đích giảm tối đa thiệt hại khi phịng tuyến ở từng module bị phá vỡ, và tránh đƣợc nhiều lỗi liên quan giữa các module đến những thƣ viện lập trình mức thấp đƣợc hiệu chỉnh để loại bỏ những lỗi nghiêm trọng nhƣ tràn bộ đệm... Ta sẽ khảo sát chi tiết từng phần tiếp sau đây. Trƣớc hết ta nên cĩ cái nhìn tổng quan về hệ thống MTA qmail.

Trong sơ đồ hình 15 ta thấy đƣợc các thành phần chính tạo nên qmail và hoạt động của chúng. Hoạt động của qmail cĩ thể đƣợc chia thành hai phần, thứ nhất là

1 http://www.qmail.org

51

nhận và gửi thƣ với remote mail server, thứ hai là nhận và gửi thƣ với localhost. Các thành phần cơ bản của qmail gồm cĩ:

Qmail smtpd, qmail inject: nhận thƣ Qmail-queue: sắp xếp thƣ vào hàng đợi Qmail-send: đẩy thƣ ra

Qmail-rspawn, qmail-lspawn: tạo ra các process qmail-remote để gửi thƣ đi Qmail-remote, qmail-local: liên kết với remote mail server để gửi thƣ Mail box: chứa thƣ của user

qmail-smpt qmail - queue qmail - send qmail rspawn SMTP from network Tcpserver/ tcp- env/inetd qmail-remote qmail ispawn qmail-local remote mailserver qmail-inject MUA mbox/ mdir/ program delivery remote mailserver From local To local qmail - system

52

53

Nguyên tắc hoạt động:

Message của máy chủ thƣ từ xa gửi đến sẽ đƣợc trình quản lí các ứng dụng mạng nhƣ inetd, xinetd hay tcpserver tiếp nhận và chuyển tiếp cho qmail-smtpd. Đối với message của user trong nội bộ gửi thì trình quản lí thƣ là các MUA. Qmail-smtpd cĩ nhiệm vụ là nhận message và đƣa message cho qmail-queue xếp

vào hàng đợi. Message từ local user sẽ đƣợc nhận bởi qmail-inject. Qmail-queue là một hàng đợi chứa các message chờ đƣợc phân phối.

Qmail-send sẽ lấy message từ qmail-queue đƣa đến cho mail-rspawn. Mail- rspawn sẽ đọc mail, xác định địa chỉ, tạo ra các process mail-remote để gửi thƣ đến địa chỉ đích ở xa. Mail-lspawn tạo ra các process mail-local để gửi thƣ đến các mail box của user trong nội bộ. Message cĩ forward đến địa chỉ khác thì sẽ đƣợc đƣa lại vào hàng đợi.

2.5.2. Module Proxy gửi thƣ

Proxy SMTP là proxy thuộc lớp ứng dụng sử dụng cho dịch vụ dùng giao thức SMTP. Nĩ gồm hai thành phần đƣợc thực hiện một cách riêng biệt: Proxy Server và Proxy Client.

Proxy SMTP xử lý tất cả thƣ vào và thƣ ra. Proxy SMTP chuyển tiếp thƣ từ những Client tới các máy chủ khác trên internet sử dụng giao thức SMTP. Thƣ đi ra đƣợc lƣu tạm thời cho đến khi Proxy SMTP cĩ thể xác thực nĩ đã đến đƣợc đích của nĩ; thƣ đi vào đƣợc lƣu trữ cho đến khi ngƣời dùng truy cập nĩ bằng việc sử dụng giao thức POP3 hoặc IMAP4 ở máy thƣ khách. Việc lƣu trữ thƣ (spooling) cho phép sự chuyển giao ngầm từ máy khách và máy chủ.

54

Hình 20.Mơ hình hoạt động của Proxy SMTP

Proxy SMTP server hoạt động nhƣ Server cuối đối với tất cả các yêu cầu từ một Client thực sự trong mạng tin cậy. Nghĩa là, mọi trao đổi thơng tin giữa ngƣời dùng ở mạng trong và mạng mạng Internet đều thơng qua Proxy server hơn là cho phép ngƣời dùng trao đổi trực tiếp với các Server trên Internet. Ngƣời dùng ở mạng trong (client), gửi yêu cầu kết nối dịch vụ bên ngồi tới Proxy server, nhƣ FTP hoặc Telnet. Proxy server sẽ đánh giá yêu cầu và đƣa ra quyết định chấp nhận hoặc từ chối yêu cầu này dựa trên các quy tắc ứng với từng dịch vụ mạng. Proxy server hiểu giao thức của dịch vụ mà nĩ đang đánh giá, vì vậy, chúng cho phép các gĩi tin tuân theo các định nghĩa của giao thức SMTP đi qua. Ngồi ra proxy SMTP server cịn cĩ chức năng khác: nhƣ đƣa ra thống kê chi tiết về thơng tin của phiên làm việc, xác thực ngƣời dùng và nơi đang lƣu giữ.

Proxy SMTP client là thành phần của một ứng dụng ngƣời dùng đại diện cho Client thực sự ở mạng trong giao tiếp với Server thực sự ở mạng ngồi. Khi một Client thực sự yêu cầu một dịch vụ, Proxy SMTP Server sẽ đánh giá yêu cầu đĩ theo các quy tắc trong chính sách đƣợc định nghĩa cho Proxy đĩ và xác định yêu cầu này đƣợc chấp nhận hay khơng. Nếu yêu cầu đƣợc chấp nhận, proxy SMTP server chuyển các yêu cầu đĩ đến proxy SMTP client. Sau đĩ Proxy client nhân danh Client thực sự kết nối tới Server thực sự (do đĩ cĩ thuật ngữ “proxy”) và sau đĩ chuyển các yêu cầu từ Proxy SMTP server tới Server thực sự và chuyển phúc đáp từ Server thực sự về Proxy server. Proxy server tiếp nhận các yêu cầu và các đáp ứng giữa Proxy SMTP client và Client thực sự theo cách tƣơng tự nhƣ vậy.

2.5.3. Module Proxy nhận thƣ

Bằng việc thiết lập một IMAP proxy server giữa ngƣời gửi và ngƣời nhận, bạn cĩ thể tìm ra nếu thƣ đang gửi trên đƣờng đi

POP, IMAP Client thực Proxy SMTP SMTP Server thực Server Client SMTP SMTP POP, IMAP (adsbygoogle = window.adsbygoogle || []).push({});

55

Hình 21.Nguyên lý hoạt động của proxy server

Proxy IMAP là một server đĩng vai trị nhƣ một “ngƣời ủy nhiệm” (proxy) cho các ứng dụng bằng cách đƣa ra các yêu cầu trên Internet thay cho ứng dụng đĩ. Bằng cách này, bất cứ khi nào một ngƣời sử dụng kết nối đến Internet sử dụng một ứng dụng client (đƣợc cấu hình sử dụng proxy server), ứng dụng đĩ sẽ kết nối tới proxy server và gửi yêu cầu của nĩ tới proxy này. Proxy server sẽ kết nối tới máy chủ mà client này muốn kết nối và gửi cho máy chủ đĩ yêu cầu của client. Sau đĩ, máy chủ này sẽ gửi trả lời tới proxy để nĩ chuyển tới ứng dụng ở client.

Hình 22.Mơ hình giao tiếp thơng qua proxy Lƣu trữ (Caching)

Hầu hết proxy cĩ một cache (bộ đệm), đơi khi đƣợc gọi là buffer, trong bộ nhớ để lƣu giữ các trang thƣờng đƣợc ngƣời sử dụng ghé thăm nhằm cung cấp các trang này nhanh chĩng hơn.

Proxy cĩ khả năng lƣu giữ thơng tin thƣờng đƣợc gọi là “proxy-cache server”. Tính năng này đƣợc đƣa ra ở một số proxy server để giảm băng thơng Internet và giảm thời gian ngƣời sử dụng tải tài liệu về. Tuy nhiên để làm đƣợc điều này proxy

Một phần của tài liệu Giải pháp lọc thư điện tử theo phân tích nội dung (Trang 55)