Kỹ thuật lọc Spam

Một phần của tài liệu Nghiên cứu phương pháp lọc Spam và ứng dụng trong bảo mật hệ thống thư điện tử tại sở thông tin và truyền thông tỉnh Nam Định (Trang 39 - 53)

Spam gây ra rất nhiều tác hại, do vậy việc phịng chống và ngăn chặn các spam là cần thiết. Hiện cĩ nhiều cơng ty phần mềm cung cấp giải pháp chống spam, mỗi dịng sản phẩm cĩ những tính năng và các ƣu nhƣợc điểm riêng, nhƣng hầu hết các sản phẩm đĩ đều hoạt động dựa vào một số nguyên lý sau:

2.2.4.1. Sử dụng DNS blacklist:

Phƣơng pháp sử dụng DNS black list sẽ chặn các email đến từ các địa chỉ nằm trong danh sách DNS blacklist. Cĩ hai loại danh sách DNS Blacklist thƣờng đƣợc sử dụng, đĩ là:

Danh sách các miền gửi spam đã biết, danh sách các miền này đƣợc liệt kê và cập nhật tại địa chỉ http://spamhaus.org/sbl.

Danh sách các máy chủ email cho phép hoặc bị lợi dụng thực hiện việc chuyển tiếp spam đƣợc gửi đi từ spammer. Danh sách này đƣợc liệt kê và cập nhật thƣờng xuyên tại địa chỉ http://www.ordb.org. Cơ sở dữ liệu Open Relay Database này đƣợc duy trì bởi ORDB.org là một tổ chức phi lợi nhuận.

Khi một email đƣợc gửi đi, nĩ sẽ đi qua một số SMTP server trƣớc khi chuyển tới địa chỉ ngƣời nhận. Địa chỉ IP của các SMTP server mà email đĩ đã chuyển qua đƣợc ghi trong phần header của email. Các chƣơng trình chống spam sẽ kiểm tra tất cả các địa chỉ IP đã đƣợc tìm thấy trong phần header của email đĩ sau đĩ so sánh với cơ sở dữ liệu DNS Blacklist đã biết. Nếu địa chỉ IP tìm thấy trong phần này cĩ trong cơ sở dữ liệu về các DNS Blacklist, nĩ sẽ bị coi là spam, cịn nếu khơng, email đĩ sẽ đƣợc coi là một email hợp lệ.

Các DNSBL đầu tiên là Blackhole List thời gian thực (RBL), đƣợc tạo ra vào năm 1997, ban đầu nĩ đƣợc coi nhƣ một nguồn cấp dữ liệu BGP bởi Paul Vixie , và sau đĩ là một hệ thống DNSBL xây dựng bởi Eric Ziegast nhƣ một phần của hệ thống phịng chống lạm dụng thƣ (MAPS), Dave Rand tại AboveNet là thuê bao đầu tiên của nĩ. Phiên bản đầu tiên của RBL khơng đƣợc cơng bố nhƣ một DNSBL, mà là một danh sách các mạng truyền qua BGP để định tuyến và các nhà khai thác

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ mạng cĩ thể cho phép tất cả các máy sử dụng giao thức TCP/IP để gửi thƣ. Ngƣời phát minh ra kỹ thuật này sau đĩ thƣờng đƣợc gọi là DNSBL là Eric Ziegast.

Thuật ngữ "hố đen" đề cập đến một lỗ đen kết nối mạng, một biểu hiện cho một liên kết trên một mạng lƣới mà nĩ giảm lƣu lƣợng truy cập thay vì chuyển tiếp nhƣ bình thƣờng. Mục đích của RBL là các trang web sử dụng nĩ sẽ từ chối lƣu lƣợng truy cập từ các trang web cĩ hỗ trợ thƣ rác - cho dù bằng cách chủ động gửi thƣ rác, hoặc bằng cách khác.Trƣớc khi một địa chỉ sẽ đƣợc liệt kê trên các RBL, tình nguyện viên và nhân viên MAPS sẽ cố gắng nhiều lần để liên lạc với ngƣời quản lý trang web đĩ và thơng báo các vấn đề của nĩ cần sửa chữa. Nỗ lực nhƣ vậy đƣợc coi là rất quan trọng trƣớc khi blackholing tất cả các lƣu lƣợng mạng, nhƣng nĩ cũng cĩ nghĩa là các spamer và các ISP hỗ trợ thƣ rác cĩ thể trì hỗn đƣợc đặt trên RBL trong thời gian dài trong khi chờ các cuộc thảo luận nhƣ vậy.

Sau đĩ, RBL cũng đƣợc đăng tải trong một danh sách DNSBL và Paul Vixie khuyến khích các hệ thống email để thực hiện hỗ trợ RBL. Danh sách các phần mềm mail đƣợc phép truy vấn các RBL và trang web bị từ chối truy cập đƣợc liệt kê trên một cơ sở dữ liệu cho mỗi máy chủ email thay vì blackholing tất cả lƣu lƣợng truy cập.

Ngay sau khi sự ra đời của RBL, rất nhiều tổ chức khác bắt đầu phát triển danh sách của mình với các chính sách khác nhau.

Năm 2003, một số DNSBLs bị tấn cơng từ chối dịch vụ, khơng cĩ tổ chức hay cá nhân nào đứng ra chịu trách nhiệm về các vụ tấn cơng này. Tuy nhiên, nhiều nhà quan sát tin rằng các cuộc tấn cơng đƣợc gây ra bởi kẻ gửi thƣ rác.

Phƣơng pháp này cĩ ƣu điểm là các email cĩ thể đƣợc kiểm tra trƣớc khi tải xuống, do đĩ tiết kiệm đƣợc băng thơng đƣờng truyền. Nhƣợc điểm của phƣơng pháp này là khơng phát hiện ra đƣợc những email giả mạo địa chỉ ngƣời gửi.

2.2.4.2. Sử dụng SURBL list

Phƣơng pháp sử dụng SURBL phát hiện spam dựa vào nội dung của email. Chƣơng trình chống spam sẽ phân tích nội dung của email xem bên trong nĩ cĩ

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ chứa các liên kết đã đƣợc liệt kê trong Spam URI Realtime Blocklists (SURBL) hay khơng. SURBL chứa danh sách các miền và địa chỉ của các spammer đã biết. Cơ sở dữ liệu này đƣợc cung cấp và cập nhật thƣờng xuyên tại địa chỉ www.surbl.org.

Cĩ nhiều danh sách SURBL khác nhau nhƣ sc.surbl.org, ws.surbl.org, ob.surbl.org, ab.surbl.org..., các danh sách này đƣợc cập nhật từ nhiều nguồn. Thơng thƣờng, ngƣời quản trị thƣờng kết hợp các SURBL list bằng cách tham chiếu tới địa chỉ multi.surbl.org. Nếu một email sau khi kiểm tra nội dung cĩ chứa các liên kết đƣợc chỉ ra trong SURBL list thì nĩ sẽ đƣợc đánh dấu là spam email, cịn khơng nĩ sẽ đƣợc cho là một email thơng thƣờng.

Phƣơng pháp này cĩ ƣu điểm phát hiện đƣợc các email giả mạo địa chỉ ngƣời gửi để đánh lừa các bộ lọc. Nhƣợc điểm của nĩ là email phải đƣợc tải xuống trƣớc khi tiến hành kiểm tra, do đĩ sẽ chiếm băng thơng đƣờng truyền và tài nguyên của máy tính để phân tích các nội dung email.

2.2.4.3. Kiểm tra người nhận

Tấn cơng spam kiểu “từ điển” sử dụng các địa chỉ email và tên miền đã biết để tạo ra các địa chỉ email hợp lệ khác. Bằng kỹ thuật này spammer cĩ thể gửi spam tới các địa chỉ email đƣợc sinh ra một cách ngẫu nhiên. Một số địa chỉ email trong số đĩ cĩ thực, tuy nhiên một lƣợng lớn trong đĩ là địa chỉ khơng tồn tại và chúng gây ra hiện tƣợng “lụt” ở các máy chủ mail.

Các spamer ngồi việc thu thập các địa chỉ email thật của ngƣời dùng và xây dựng đƣợc danh sách email ngƣời nhận lớn, tuy nhiên đây khơng phải là tất cả email của ngƣời dùng. Vì thế, các spamer thƣờng sử dụng các chƣơng trình để phát sinh ngẫu nhiên các địa chỉ email theo quy luật nào đĩ và thực hiện việc gửi email tới các địa chỉ mới đƣợc phát sinh này.

Máy chủ thƣ nếu khơng chặn lọc đƣợc các email này sẽ bị quá tải và làm cho hệ thống email của ngƣời dùng bình thƣờng khác bị ảnh hƣởng, thậm chí là tắc nghẽn.

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ Phƣơng pháp kiểm tra ngƣời nhận sẽ ngăn chặn kiểu tấn cơng này bằng cách chặn lại các email gửi tới các địa chỉ khơng tồn tại trên Active Directory hoặc trên máy chủ mail server trong cơng ty. Tính năng này sẽ sử dụng Active Directory hoặc LDAP server để xác minh các địa chỉ ngƣời nhận cĩ tồn tại hay khơng. Nếu số địa chỉ ngƣời nhận khơng tồn tại vƣợt quá một ngƣỡng nào đĩ (do ngƣời quản trị thiết lập) thì email gửi tới đĩ sẽ bị coi là spam và chặn lại.

Phƣơng pháp này thƣờng đƣợc áp dụng trong các hệ thống email nội bộ của cơng ty hoặc tổ chức và yêu cầu ngƣời quản trị phải cĩ chính sách quản lý hệ thống tốt.

2.2.4.4. Kiểm tra địa chỉ

Bằng cách kiểm tra địa chỉ ngƣời gửi và ngƣời nhận, phần lớn spam sẽ đƣợc phát hiện và chặn lại. Thực hiện kiểm tra địa chỉ ngƣời gửi trƣớc khi email đƣợc tải xuống sẽ tiết kiệm đƣợc băng thơng đƣờng truyền cho tồn hệ thống.

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/

Hình 2.7: Lưu lượng thư trong một mơi trường SPF

Kỹ thuật Sender Policy Framework (SPF, www.openspf.org) đƣợc sử dụng để kiểm tra địa chỉ ngƣời gửi email. Kỹ thuật SPF cho phép chủ sở hữu của một tên miền Internet sử dụng các bản ghi DNS đặc biệt (gọi là bản ghi SPF) chỉ rõ các máy đƣợc dùng để gửi email từ miền của họ. Khi một email đƣợc gửi tới, bộ lọc SPF sẽ phân tích các thơng tin trong trƣờng “From” hoặc “Sender” để kiểm tra địa chỉ ngƣời gửi. Sau đĩ SPF sẽ đối chiếu địa chỉ đĩ với các thơng tin đã đƣợc cơng bố trong bản ghi SPF của miền đĩ xem máy gửi email cĩ đƣợc phép gửi email hay khơng. Nếu email đến từ một server khơng cĩ trong bản ghi SPF mà miền đĩ đã cơng bố thì email đĩ bị coi là giả mạo.

Hình 2.8: Cách thức làm việc của SPF

Kỹ thuật này yêu cầu cả máy chủ thƣ của bên gửi và bên nhận phải “bắt tay” với nhau. Hai bên sẽ thực hiện các bƣớc theo thứ tự sau: (adsbygoogle = window.adsbygoogle || []).push({});

Chủ sở hữu tên miền M1 cơng bố thơng tin này trong một danh sách bản ghi

SPF của miền.

Khi ngƣời khác mail server nhận đƣợc một tin nhắn tự xƣng đến từ tên miền M1 thì máy chủ cĩ thể kiểm tra xem các thơng điệp phù hợp với chính sách quy định của tên miền M1 khơng nếu khơng phù hợp thì email đĩ sẽ bị coi là thƣ rác. Ngồi ra, nếu các tin nhắn đến từ một máy chủ khơng rõ, nĩ cũng cĩ thể đƣợc coi là thƣ rác.

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ Phƣơng pháp này sẽ chặn các email đƣợc gửi đến từ các địa chỉ IP biết trƣớc. Khi một email đến, bộ lọc sẽ phân tích địa chỉ máy gửi và so sánh với danh sách địa chỉ bị chặn. Nếu email đĩ đến từ một máy cĩ địa chỉ trong danh sách này thì nĩ sẽ bị coi là spam, ngƣợc lại nĩ sẽ đƣợc coi là email hợp lệ.

Hình 2.9: Lọc thư rác bằng phương pháp chặn IP

Danh sách địa chỉ IP bị chặn đƣợc cập nhật thƣờng xuyên bởi ngƣời quản trị máy chủ mail hoặc cập nhật từ danh sách các địa chỉ IP bị chặn của bên thứ ba. Các danh sách này thƣờng đƣợc chia sẻ miễn phí bởi cộng đồng ngƣời dùng và các quản trị viên.

Kỹ thuật lọc thƣ rác bằng phƣơng pháp chặn IP này hiện tại thƣờng bị các spamer qua mặt bằng cách sử dụng mạng botnet để gửi thƣ và thƣờng xuyên thay đổi vị trí của máy gửi thƣ làm cho các chƣơng trình lọc thƣ rác bằng phƣơng pháp này rất khĩ chặn đƣợc.

2.2.4.6. Sử dụng bộ lọc Bayesian

Bộ lọc Bayesian hoạt động dựa trên định lý Bayes để tính tốn xác suất xảy ra một sự kiện dựa vào những sự kiện xảy ra trƣớc đĩ. Kỹ thuật tƣơng tự nhƣ vậy đƣợc sử dụng để phân loại spam. Nếu một số phần văn bản xuất hiện thƣờng xuyên trong các spam nhƣng thƣờng khơng xuất hiện trong các email thơng thƣờng, thì cĩ thể kết luận rằng email đĩ là spam.

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ Trƣớc khi cĩ thể lọc email bằng bộ lọc Bayesian, ngƣời dùng cần tạo ra cơ sở dữ liệu từ khĩa và dấu hiệu (nhƣ là ký hiệu $, địa chỉ IP và các miền...) sƣu tầm từ các spam và các email khơng hợp lệ khác.

Mỗi từ hoặc mỗi dấu hiệu sẽ đƣợc cho một giá trị xác suất xuất hiện, giá trị này dựa trên việc tính tốn cĩ bao nhiêu từ thƣờng hay sử dụng trong spam, mà trong các email hợp lệ thƣờng khơng sử dụng. Việc tính tốn này đƣợc thực hiện bằng cách phân tích những email gửi đi của ngƣời dùng và phân tích các kiểu spam đã biết.

Ở kỹ thuật lọc thƣ rác sử dụng phƣơng pháp lọc nội dung Bayesian mỗi thƣ (phần nội dung) đƣợc biểu diễn bởi một vectơ x

= (x1, x2, …, xn), trong đĩ x1, x2, …, xn là giá trị của đặc trƣng X1, X2,…, Xn. Mỗi đặc trƣng cĩ thể là một từ hoặc một cụm từ. Ở đây, n là số lƣợng đặc trƣng đƣợc xác định từ tồn bộ tập dữ liệu huấn luyện, tức là số lƣợng từ/cụm từ khác nhau trong tập dữ liệu huấn luyện. Cách xác định n sẽ đƣợc đề cập trong một phần sau của bài báo. Mỗi thƣ đƣợc gán một nhãn phân loại Y cĩ thể nhận một trong hai giá trị: Y = 1 cho trƣờng hợp thƣ rác và Y = 0 cho trƣờng hợp thƣ bình thƣờng.

Để xác định nhãn phân loại cho thƣ, bộ phân loại Bayes tính xác suất điều kiện

P (Y = y | X1 = x1,…, Xn = xn)

tức là xác suất một thƣ với nội dung (x1, x2, …, xn) nhận nhãn phân loại y, y {1,0}. Sử dụng cơng thức Bayes, xác suất trên đƣợc tính nhƣ sau

) ,..., ( ) ( ) | ,..., ( ) ,..., | ( 1 1 1 1 1 1 n n n n n n x X x X P y Y P y Y x X x X P x X x X y Y P (1)

Trong cơng thức (1), giá trị mẫu số khơng phụ thuộc vào nhãn phân loại và do vậy cĩ thể bỏ qua. Nhãn phân loại Y là nhãn tƣơng ứng với giá trị lớn nhất của tử số. Cụ thể, trong trƣờng hợp phân loại thƣ rác, nhãn của thƣ đƣợc xác định bằng cách tính giá trị biểu thức: ) 0 ( ) 0 | ,..., ( ) 1 ( ) 1 | ,..., ( ) ,..., | 0 ( ) ,..., | 1 ( 1 1 1 1 1 1 1 1 Y P Y x X x X P Y P Y x X x X P x X x X Y P x X x X Y P n n n n n n n n (2)

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ Giá trị biểu thức (2) lớn hơn 1 cĩ nghĩa xác suất thƣ là thƣ rác lớn hơn xác suất thƣ bình thƣờng và thƣ sẽ đƣợc gán nhãn thƣ rác. Giá trị biểu thức (2) nhỏ hơn 1 cho kết quả ngƣợc lại. Tuy nhiên, đối với bài tốn lọc thƣ, lỗi phân loại thƣ rác thành thƣ thƣờng dễ chấp nhận hơn nhiều so với phân loại nhầm thƣ thƣờng thành thƣ rác. Do vậy, khơng thể chỉ đơn thuần gán cho thƣ nhãn cĩ xác suất điều kiện lớn hơn. Giả sử việc phân loại thƣ rác thành thƣ thƣờng dễ chấp nhận hơn phân loại thƣ thƣờng thành thƣ rác T lần, theo lý thuyết phân loại bayes tối ƣu trình bày trong [Duda &Hard], thƣ sẽ đƣợc phân loại là rác nếu

T Y P Y x X x X P Y P Y x X x X P n n n n ) 0 ( ) 0 | ,..., ( ) 1 ( ) 1 | ,..., ( 1 1 1 1 (3)

Trên thực tế, giá trị T là tham số và cĩ thể do ngƣời sử dụng xác định.

Xác suất P(Y = y) trên tập dữ liệu huấn luyện cĩ thể tính dễ dàng bằng cách đếm tần suất xuất hiện của thƣ cĩ nhãn “rác” và “bình thƣờng”. Việc xác định P (X

= x

| Y = y) phức tạp hơn nhiều do phải tính tất cả các tổ hợp giá trị của vectơ X

và địi hỏi lƣợng dữ liệu huấn luyện lớn tƣơng ứng. Để khắc phục vấn đề này, phƣơng pháp Bayes đơn giản sử dụng một số giả thiết về tính độc lập xác suất của các đặc trƣng nếu đã biết nhãn phân loại. Cĩ một số cách tính giá trị P (X

= x

| Y = y) khác nhau tƣơng ứng với các phiên bản khác nhau của phƣơng pháp phân loại văn bản sử dụng Bayes đơn giản.

Trong luận văn này, tơi sẽ tìm hiểu hai phiên bản thơng dụng nhất: Bayes

đơn giản với mơ hình Bécnuli đa trị (multivariate Bernoulli nạve Bayes) và Bayes

đơn giản với mơ hình đa thức (multinomial nạve Bayes). (adsbygoogle = window.adsbygoogle || []).push({});

Phân loại Bayes đơn giản với mơ hình Bécnuli đa trị

Giả sử F = (f1, f2, …,fn) là tập hợp tồn bộ n đặc trƣng. Trong mơ hình đang xét, mỗi thuộc tính Xi đƣợc coi là một biến nhị phân ngẫu nhiên cĩ thể nhận một trong hai giá trị 0 và 1. Xi = 1 nếu đặc trƣng fi xuất hiện trong thƣ và Xi = 0 trong trƣờng hợp ngƣợc lại (khơng quan tâm đặc trƣng đĩ xuất hiện chính xác bao nhiêu lần). Mơ hình Bécnuli đa trị coi nội dung của một thƣ bất kỳ với nhãn y là kết quả

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ của n thực nghiệm Bécnuli (tung đồng xu sấp ngửa), mỗi thực nghiệm cho phép xác

Một phần của tài liệu Nghiên cứu phương pháp lọc Spam và ứng dụng trong bảo mật hệ thống thư điện tử tại sở thông tin và truyền thông tỉnh Nam Định (Trang 39 - 53)