Tải bản đầy đủ (.pdf) (49 trang)

Nghiên cứu phân loại thư rác dựa trên kỹ thuật học máy Naive bayes (LV thạc sĩ)

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 (1012.68 KB, 49 trang )

HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG
---------------------------------------

TRẦN MỸ HOÀNG

NGHIÊN CỨU PHÂN LOẠI THƢ RÁC DỰA TRÊN
KỸ THUẬT HỌC MÁY NAÏVE BAYES
CHUYÊN NGÀNH : HỆ THỐNG THÔNG TIN

MÃ SỐ:

60.48.01.04

LUẬN VĂN THẠC SĨ KỸ THUẬT
NGƢỜI HƢỚNG DẪN KHOA HỌC: TS. HOÀNG XUÂN DẬU

HÀ NỘI – 2017


i

LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả nêu trong luận văn là trung thực và chƣa từng đƣợc ai
công bố trong bất kỳ công trình nào khác.
Tác giả

Trần Mỹ Hoàng


ii



MC LC
DANH MC HèNH .................................................................................................. III
DANH MC BNG ................................................................................................ IV
DANH MC T VIT TT..................................................................................... V
M U ..................................................................................................................... 1
CHNG 1: TNG QUAN V EMAIL V VN LC TH RC ............... 3
1.1. Khỏi quỏt v email v dch v email ....................................................................3
1.1.1. Gii thiu.......................................................................................................3
1.1.2. Cỏc vn bo mt email v dch v email ...............................................10
1.1.3. Cỏc bin phỏp m bo an ton email v dch v email ............................11
1.2. Th rỏc v vn lc th rỏc .............................................................................21
1.2.1. Khỏi quỏt v th rỏc ....................................................................................21
1.2.2. Cỏc c trng ca th rỏc ..........................................................................22
1.2.3. Phõn loi th rỏc ........................................................................................24
1.2.4. Tỏc hi ca th rỏc .....................................................................................24
1.3. Kt lun chng .................................................................................................26
CHNG 2: XY DNG Mễ HèNH LC TH RC DA TRấN NAẽVE
BAYES ......................................................................................................................27
2.1. Thut toỏn hc mỏy Naùve Bayes ......................................................................27
2.1.1. nh lý Bayes ..............................................................................................27
2.1.2. Thut toỏn Naùve Bayes ..............................................................................28
2.2. Xõy dng mụ hỡnh lc th rỏc da trờn Naùve Bayes ........................................29
2.2.1. Mụ hỡnh lc th rỏc da trờn Naùve Bayes .................................................29
2.2.2. Cỏc bc x lý trong mụ hỡnh lc th rỏc da trờn Naùve Bayes ..............30
2.3. Kt lun chng .................................................................................................37
CHNG 3: TH NGHIM V KT QU ......................................................... 38
3.1. Gii thiu b d liu th nghim .......................................................................38
3.2. Cỏc th nghim v kt qu .................................................................................39
3.2.1 Tiờu chớ ỏnh giỏ ..........................................................................................39

3.2.2. Cỏc th nghim ...........................................................................................39
3.4 Kt lun chng ..................................................................................................41
KT LUN ............................................................................................................... 42
DANH MC CC TI LIU THAM KHO......................................................... 43


iii

DANH MỤC HÌNH
Hình 1.1: Các thông điệp quá trình gửi và nhận email (S: Server, C: Client) ............4
Hình 1.2: Quá trình gửi và nhận mail .........................................................................8
Hình 1.3: Hoạt động của DomainKeys .....................................................................15
Hình 1.4: Hoạt động của SPF ....................................................................................17
Hình 1.5: Hoạt động của Sender ID Framework ......................................................18
Hình 2.1: Mô hình huấn luyện và lọc thƣ dựa trên Naïve Bayes ..............................29
Hình 2.2: Quy trình tiền xử lý dữ liệu .......................................................................30


iv

DANH MỤC BẢNG
Bảng 1.1: Các lệnh của SMTP (RFC 821) ................................................................. 4
Bảng 1.2: Các lệnh của POP3 (RFC 1939) ................................................................ 5
Bảng 1.3: Các lệnh của IMAP4 (RFC 2060) ............................................................. 6
Bảng 1.4: Khuôn dạng của email ............................................................................... 9
Bảng 1.5: Các kiểu mô tả dữ liệu ............................................................................... 9
Bảng 1.6: Các kiểu dữ liệu thƣờng gặp .................................................................... 10
Bảng 3.1: Bộ dữ liệu thử nghiệm ............................................................................. 38
Bảng 3.2: Kết quả thử nghiệm với bộ huấn luyện enron1 ....................................... 39
Bảng 3.3: Kết quả thử nghiệm với bộ huấn luyện enron6 ....................................... 40

Bảng 3.4: Kết quả đánh giá thử nghiệm Naïve Bayes ............................................. 40


v

DANH MỤC TỪ VIẾT TẮT
Từ viết

Tiếng Anh

tắt
SMTP
POP
IMAP

Tiếng Việt

Simple Mail Transfer Protocol Giao thức truyền tải thƣ đơn giản
Post Office Protocol
Internet Message Access
Protocol

Giao thức bƣu cục
Giao thức truy nhập tin nhắn Internet

MUA

Mail User Agent

Đại lý ngƣời dùng thƣ


MTA

Mail Tranfer Agent

Đại lý vận chuyển thƣ

MDA

Mail Delivery Agent

Đại lý phân phối thƣ

MIME

Multi-Purpose Internet Mail
Extensions

Mở rộng thƣ Internet đa mục đích

SPF

Sender Policy Framework

Khung chính sách ngƣời gửi

ISP

Internet Service Provider


Nhà cung cấp dịch vụ Internet

DNS

Domain Name Server

Dịch vụ tên miền

Hypertext Markup Language

Ngôn ngữ đánh dấu siêu văn bản

DF

Document Frequency

Tần suất tài liệu

MI

Manual Information

Lƣợng từ tƣơng hỗ

TF

Term Frequency

Tần suất thuật ngữ


IDF

Inverse Document Frequency

Tần suất tài liệu nghịch

HTML


1

MỞ ĐẦ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
toá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 toán học máy, nhƣng Naï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 Naï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 Naï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 và các vấn đề về lọc thƣ rác.


2

Chƣơng 2: Xây dựng mô hình lọc thƣ rác dựa trên Naïve Bayes: Chƣơng
này nghiên cứu thuật toán học máy Naïve Bayes, xây dựng mô hình lọc thƣ rác dựa
trên thuật toán Naïve Bayes.
Chƣơ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 Naïve Bayes. Từ đó đƣa ra
đánh giá, nhận xét.


3

CHƢƠ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]. Bảng 1.1 cung cấp chi tiết về các lệnh của giao thức SMTP.
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.


4

Bảng 1.1: Các lệnh của SMTP (RFC 821)

Lệnh
HELO

Mô tả

Sử dụng để xác định ngƣời gửi thƣ. Lệnh này này đi kèm với tên của host gửi
thƣ. Trong ESMTP (extended protocol), thì lệnh này sẽ là EHLO

MAIL

Khởi tạo một giao dịch gửi thƣ. Nó kết hợp "from" để xác định ngƣời gửi thƣ

RCPT

Xác định ngƣời nhận thƣ
Thông báo bắt đầu nội dung thực sự của bức thƣ (phần thân của thƣ). Dữ liệu

DATA đƣợc mã hóa thành dạng mã 128-bit ASCII và nó đƣợc kết thúc với một dòng
đơn chứa dấu chấm (.)
RSET

Huỷ bỏ giao dịch thƣ

VRFY Sử dụng để xác thực ngƣời nhận thƣ
NOOP Là lệnh "no operation" xác định không thực hiện hành động
QUIT

Thoát khỏi tiến trình để kết thúc phiên giao tiếp

SEND

Cho host nhận biết rằng thƣ còn phải gửi đến đầu cuối khác

Hình 1.1: Các thông điệp quá trình gửi và nhận email (S: Server, C: Client)



5

* 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à POP1, 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]. Bảng 1.2 mô tả các
lệnh của POP3.
Bảng 1.2: Các lệnh của POP3 (RFC 1939)

Lệnh
USER
PASS
STAT

Miêu tả
Xác định username
Xác định password
Yêu cầu về trạng thái cùa hộp thƣ nhƣ số lƣợng thƣ và độ lớn cùa thƣ

LIST
RETR
DELE

NOOP
RSET
QUIT

Hiện danh sách cùa thƣ
Nhận thƣ
Xoá một bức thƣ xác định
Không làm gì cả
Khôi phục lại thƣ đã xoá (rollback)
Thực hiện việc thay đổi và thoát ra

* 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).


6

IMAP4 đƣợc quy định bởi tiêu chuẩn RFC 2060 [4] và nó sử dụng cổng TCP 143.
Bảng 1.3 cung cấp chi tiết về các lệnh của IMAP.
Bảng 1.3: Các lệnh của IMAP4 (RFC 2060)

Lệnh
CAPABILITY
AUTHENTICAT
LOGIN
E
SELECT

EXAMINE
CREATE
DELETE
RENAME
SUBSCRIBE
UNSUBSCRIBE
LIST
LSUB
STATUS
APPEND
CHECK
CLOSE
EXPUNGE
SEARCH
FETCH
STORE
COPY
NOOP
LOGOUT

Miêu tả
Yêu cầu danh sách các chức năng hỗ trợ
Xác định sử dụng xác thực từ một server khác
Cung cấp username và password
Chọn hộp thƣ
Điền hộp thƣ chỉ đƣợc phép đọc
Tạo hộp thƣ
Xoá hộp thƣ
Đổi tên hộp thƣ
Thêm vào một list đang hoạt động

Rời khỏi list đang hoạt động
Danh sách hộp thƣ
Hiện danh sách ngƣời sử dụng hộp thƣ
Trạng thái của hộp thƣ (số lƣợng thƣ,...)
Thêm message vào hộp thƣ
Yêu cầu kiểm tra hộp thƣ
Thực hiện xoá và thoát khỏi hộp thƣ
Thực hiện xoá
Tìm kiếm trong hộp thƣ để tìm messages xác định
Tìm kiếm trong nội dung của message
Thay đổi nội dụng của messages
Copy message sang hộp thƣ khác
Không làm gì
Đóng kết nối

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)


7

MUA là chƣơng trình mà ngƣời dùng sử dụng để đọc và gửi email. Nó đọc
email gửi đi của ngƣời dùng và gửi email tới MTA để gửi đến nơi nhận. Các
chƣơng trình MUA tiêu biểu bao gồm: Microsoft Outlook (Windows), Evolution
(Linux), ThunderBird.
* Mail Tranfer Agent (MTA)
MTA hoạt động cơ bản của nó giống nhƣ một "mail router" (bộ định tuyến

email), theo đó MTA nhận email từ các MUA hay từ một MTA khác, dựa vào thông
tin trong phần header của email nó sẽ đƣa ra xử lý phù hợp với email đó. Sau đó
email sẽ đƣợc gửi đến một MDA phù hợp để gửi email vào hộp thƣ của ngƣời dùng.
Các chƣơng trình cung cấp dịch vụ MTA tiêu biểu là: Qmail, Sendmail, Postfix
(Unix/Linux), Edge/Hub Transport của Microsoft Exchange (Windows).
* Mail Delivery Agent (MDA)
MDA nhận email từ MTA và thực hiện việc gửi email đến đích thực sự. Các
chƣơng trình cung cấp dịch vụ tiêu biểu là: Procmail, Mail.local, rmail (Linux),
Mailbox Server trong Microsoft Exchange (Windows).
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à 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 () 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).


8

Hình 1.2: Quá trình gửi và nhận mail

- 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


9

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. Bảng 1.4 minh họa một số trƣờng trong phần tiêu đề của email.
Bảng 1.4: Một số trƣờng trong phần tiêu đề của email

Tên

Giá trị

From:

Địa chỉ ngƣời gởi

To:

Địa chỉ của ngƣời nhận


Subject: Chủ đề thƣ
Date:

Ngày gửi

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. Bảng 1.5
cung cấp các kiểu mô tả dữ liệu của MIME.
Bảng 1.5: Các kiểu mô tả dữ liệu

Tên

Giá trị

MIME-Version:

Phiên bản MIME đang sử dụng

Content-Description:

Mô tả trong thƣ đang có dữ liệu gì

Content-Type:

Mô tả kiểu dữ liệu đang nằm trong thƣ



10

Content-Transfer-Encoding:

Mô tả cách thức mã hóa dữ liệu trong thƣ

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.
Bảng 1.6: Các kiểu dữ liệu thƣờng gặp

Kiểu

Ý nghĩa

image/gif

Ảnh dạng gif

image/jpeg

Ảnh dạng jpeg

text/plain

Văn bản đơn giản

text/richtext

Văn bản mở rộng (có đặt font chữ, đƣợc định dạng đậm, nghiêng hoặc

gạch dƣới …)
Dữ liệu trong thƣ đƣợc xuất ra từ một ứng dụng nào đó. Chẳng hạn:

application

application/postscript: tài liệu Postscript(.ps), application/msword:
Tài liệu Microsoft Word (.doc)

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
Thƣ 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


11

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. Phishing thƣờng đƣợc tin
tặc thực hiện dƣới hình thức gửi email, hay tin nhắn nhanh nhằm lừa ngƣời dùng
cung cấp thông tin hay nhấp chuột vào một đƣờng link dẫn tới website lừa đảo.
Cùng với việc thƣơng mại điện tử phát triển nhanh, thúc đẩy hình thức thanh
toán trực tuyến ngày một phong phú, giới tội phạm mạng đang gia tăng các vụ tấn
công bằng phishing email nhắm vào ngƣời dùng dịch vụ ngân hàng và thanh toán
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


12

 Phƣơng pháp DomainKeys
 Phƣơng pháp Call-ID
 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.
* Sử dụng SURBL list
Biện pháp này 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ó chứa các liên kết
đã đƣợc liệt kê trong Spam URI Realtime Blocklists (SURBL) hay không. Nếu tìm
thấy, email sẽ đƣợc gán nhãn là spam và có thể đƣợc hủy bỏ, hoặc chuyển vào hộp
thƣ rác.
* Chặn địa chỉ IP
Biện pháp này thực hiện 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ệ.
* Sử dụng danh sách blacklist/whitelist
Danh sách đen (Blacklist) và Danh sách trắng (Whitelist) là 2 kỹ thuật đƣợc
sử dụng khá phổ biến. Blacklist là một danh sách các địa chỉ (địa chỉ email, địa chỉ
IP và/hoặc tên miền) thƣờng xuyên gửi thƣ rác, đƣợc tạo lập thông qua các số liệu
thống kê và lịch sử gửi thƣ rác. Các nhà cung cấp dịch vụ thƣ điện tử (ISP) sẽ dựa
trên danh sách này để loại bỏ những thƣ nằm trong danh sách này. Blacklist thƣờng


13

xuyên đƣợc cập nhật và đƣợc chia sẻ giữa các nhà cung cấp dịch vụ. Một số danh

sách đen điển hình đƣợc lập ra nhƣ: SpamCop Blocking List và Composite Block
List.
Ƣu điểm của phƣơng pháp này là các ISP sẽ ngăn chặn đƣợc khá nhiều địa
chỉ gửi thƣ rác. Mặc dù danh sách đen này luôn đƣợc cập nhật nhƣng với sự thay
đổi liên tục địa chỉ, sự giả mạo địa chỉ hoặc lợi dụng một mail server hợp pháp để
gửi thƣ rác đã làm số lƣợng thƣ rác gửi đi vẫn ngày càng tăng cao. Do đó phƣơng
pháp này chỉ ngăn chặn đƣợc một phần số thƣ rác gửi đi và có thể chặn nhầm cả thƣ
hợp pháp.
Ngƣợc lại với Blacklist, Whitelist (Danh sách trắng) là danh sách các địa chỉ
tin cậy (Safe Sender List). Danh sách này có thể do một nhà cung cấp dịch vụ nào
đó cung cấp. Những địa chỉ thuộc danh sách sẽ đƣợc cho qua bộ lọc. Ngƣời dùng
phải đăng ký với nhà cung cấp danh sách để đƣợc nằm trong danh sách.
Ƣu điểm của phƣơng pháp này là số lƣợng địa chỉ trong danh sách trắng sẽ ít
hơn trong danh sách đen vì thế sẽ dễ cập nhật hơn danh sách đen và khi sử dụng kết
hợp sẽ giải quyết đƣợc tình trạng chặn nhầm thƣ của Blacklist.
Tuy nhiên, cả hai phƣơng pháp trên đều có nhƣợc điểm là khó cập nhật, nhất
là khi ai đó thay đổi địa chỉ IP. Ngoài ra, ngƣời gửi cũng có thể lợi dụng mail server
có trong danh sách trắng để gửi thƣ rác, khi đó rất khó kiểm soát.
* Sử dụng bộ lọc Bayesian
Phƣơng pháp này sử dụng định lý Bayes để 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. Một số bộ
lọc spam/malware email có hỗ trợ bộ lọc Bayesian đƣợc sử dụng rộng rãi gồm:
SpamAssassin, Spamfighter và MailWasher.
* Sử dụng tính năng Challenge/Response
Tính năng Challenge/Response sẽ yêu cầu ngƣời lần đầu gửi email xác nhận
lại email đầu tiên mà họ đã gửi. Ssau khi xác nhận, địa chỉ email của ngƣời gửi
đƣợc bổ sung vào danh sách whitelist và từ đó trở về sau các email đƣợc gửi từ địa



14

chỉ đó đƣợc tự động cho qua các bộ lọc. Do spammer sử dụng các chƣơng trình gửi
email tự động và họ không thể xác nhận lại tất cả các email đã gửi đi, vì thế những
email không đƣợc xác nhận sẽ bị coi là spam.
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 để hạn chế đến tối thiểu khả năng tin tặc sử
dụng máy chủ email để gửi spam;
- Bật chế độ xác thực SMTP (SMTP authentication) để kiểm soát truy nhập
từ ngƣời dùng, theo đó ngƣời dùng cần xác thực tài khoản mới có thể gửi email;
- 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 nhậ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
Domainkeys là một phƣơng thức mã hóa định danh, đƣợc đề xuất bởi Yahoo
vào tháng 5 năm 2004. Domainkeys không những chỉ cho phép xác định domain
của ngƣời gửi mà còn cho phép kiểm tra tính toàn vẹn của chính nội dung của



15

email. Domainkeys sử dụng mã hóa khóa công khai RSA để xác minh tính toàn vẹn
của ngƣời gửi email tại mức domain. Domainkeys đƣợc thực hiện và sử dụng bởi cả
yahoo! Mail và Google mail. Hoạt động của Domainkeys đƣợc minh họa trên Hình
1.3 và gồm các khâu nhƣ sau:

Hình 1.3: Hoạt động của DomainKeys

- Mỗi domain phải sinh ra một cặp khóa bí mật và khóa công khai. Khóa
công khai đƣợc công bố trong bản ghi DNS. Khóa bí mật đƣợc giữ lại tại dịch vụ
MTA gửi thƣ.
- Sau khi email đã đƣợc gửi đi, dịch vụ gửi thƣ MTA ký số vào nội dung của
email bằng khóa bí mật. Chữ ký đƣợc thêm vào trƣờng Domainkey_signature.
- Domainkeys yêu cầu cả MTA bên gửi và MTA bên nhận thực hiện cơ chế
Domainkey. Việc xác minh của Domainkeys_signature có thể cũng đƣợc thực hiện
tại máy khách MUA.
- Khi máy chủ nhận đƣợc tên của domain từ email gốc (string-domainkey)
thì bộ chọn thực hiện tra cứu DNS. Dữ liệu trả về chứa khóa công khai của domain
đó. Ngƣời nhận có thể giải mã giá trị băm chứa trong trƣờng tiêu đề và đồng thời
tính lại giá trị băm cho phần thân của mail nhận đƣợc. sau đó so sánh hai giá trị này
nếu giống nhau chứng tỏ email đƣợc gửi là thật, đảm bảo tin cậy nếu không là email
không đáng tin.


16

Phƣơng pháp Domainkey có các ƣu điểm sau:

+ Xác định nguồn gốc domain của email một cách rõ ràng, sẽ hiệu quả hơn
nếu kết hợp với sử dụng Whitelist và Blacklist. Giúp dễ dàng phát hiện ra sự tấn
công phishing.
+ Loại bỏ những email giả mạo tại phần mềm email ngƣời dùng cuối (mail
user agents), hoặc bởi MTA của ISP.
+ Theo dõi việc lạm dụng domain của những cá nhân một cách dễ dàng hơn.
+ Khả năng tƣơng thích: Domainkeys tƣơng thích với cấu trúc hiện tại của
email. Trong trƣờng hợp đặc biệt, đối với hệ thống email mà không có sự hỗ trợ của
Domainkeys thì nó là trong suốt.
Nhƣợc điểm của Domainkeys là một công nghệ xác định danh tính, nó không
tham gia trực tiếp trong việc lọc spam. Ví dụ nhƣ Domainkeys cho ngƣời nhận thƣ
biết thông điệp đó đƣợc gửi từ tên miền example.net, nhƣng không thể cho biết liệu
email từ example.net đó có phải là spam hay không. Chỉ chữ ký không khẳng định
thƣ đó có đƣợc mong muốn hay không, và các spammer cũng có thể ký email, hoặc
cũng có thể giả mạo chữ ký…
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ả


17


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ƣ.

Hình 1.4: Hoạt động của SPF

- SPF cung cấp cơ chế cho phép MTA phía nhận kiểm tra xem máy chủ gửi
email có đƣợc ủy quyền bởi miền mà nó thuộc về hay không. Danh sách các máy
chủ đƣợc ủy quyền đƣợc công khai trong các bản ghi DNS dƣới dạng TXT. Thƣ rác
và thƣ giả mạo thƣờng dùng địa chỉ giả, vì thế có thể coi đây là một kỹ thuật chống
spam. Hoạt động của SPF đƣợc mô trả trên Hình 1.4, gồm các khâu nhƣ sau:
- SPF bổ sung thêm bản ghi SPF cho mỗi miền dƣới dạng bản ghi TXT,
thông tin về miền đó lƣu trong hệ thống DNS, trong đó chỉ rõ các máy chủ email
đƣợc thiết lập để gửi email của miền đó.
- Khi nhận đƣợc email, máy chủ đích có hỗ trợ SPF sẽ truy vấn thông tin về
các máy chủ đƣợc ủy quyền gửi email từ bản ghi SPF của miền và so sánh máy chủ
thực gửi email trong email header (MAIL FROM). Có bảy kết quả truy vấn có thể,


18

bao gồm Pass, nghĩa là email đáp ứng đƣợc yêu cầu là email hợp lệ; Fail nghĩa là
email không đáp ứng đƣợc yêu cầu đó; và các kết quả khác, chẳng hạn nhƣ email
đến từ các miền không công khai dữ liệu SPF.
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.


Hình 1.5: Hoạt động của Sender ID Framework

Hoạt động của Sender ID Framework nhƣ mô tả trên Hình 1.5 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.
Ví dụ một phiên làm việc với Sender ID:
1. Ngƣời gửi chuyển email cho ngƣời nhận.
2. Máy chủ email cục bộ của ngƣời nhận nhận email.


19

3. Máy chủ email phía nhận kiểm tra xem tên miền nào đã gửi email và gửi
truy vấn lên DNS server để tìm bản ghi SPF của tên miền đó. Máy chủ email phía
nhận kiểm tra xem địa chỉ IP của máy chủ gửi email có giống với một trong các địa
chỉ IP trong bản ghi SPF hay không.

4. Nếu trùng địa chỉ IP, email đƣợc xác thực và chuyển tới ngƣời nhận.
Ngƣợc lại, xác thực thất bại, email không đƣợc chuyển đi.
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 giữ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.
Đầu tiên, ngƣời ta phân đồ thị thành các thành phần con rồi tính độ phân cụm
cho từng thành phần này. Mỗi thành phần con là một đồ thị mạng xã hội của một
node, bao gồm tất cả các node xung quanh là “node hàng xóm” (các node có cung
liên kết với node này) và những cung liên kết giữa các node hàng xóm này với
nhau. Nếu thành phần nào có độ phân cụm thấp thì node tƣơng ứng với thành phần
đó là một địa chỉ gửi thƣ rác.
Trong thành phần mạng xã hội của những node gửi thƣ rác, những node hàng
xóm của nó thƣờng là những node rất ngẫu nhiên, không có mối quan hệ (không có
sự trao đổi email qua lại với nhau) nên độ phân cụm của mạng xã hội của những
node này rất thấp. Ngƣợc lại, mạng xã hội ứng với những ngƣời dùng bình thƣờng
có độ phân cụm cao hơn.
Dựa vào độ phân cụm, ngƣời ta tạo đƣợc danh sách đen (Blacklist) gồm địa
chỉ email tƣơng ứng với những node có độ phân cụm rất thấp, danh sách trắng
(Whitelist) ứng với node có độ phân cụm cao, số node còn lại sẽ đƣợc đƣa vào danh
sách cần xem xét (Greylist). Phƣơng pháp này có thể phân loại đƣợc 53% tổng số
email một cách chính xác là ham hay spam. Nhƣợc điểm của phƣơng pháp là những
spammer có thể xây dựng mạng xã hội của chính họ nên khó có thể phát hiện ra.


×