Tải bản đầy đủ
Chương 2: CÁC PHƯƠNG PHÁP GỬI VÀ KỸ THUẬT LỌC EMAIL - SPAM

Chương 2: CÁC PHƯƠNG PHÁP GỬI VÀ KỸ THUẬT LỌC EMAIL - SPAM

Tải bản đầy đủ

15

Hình 2.1: Ví dụ về trang web lấy cắp địa chỉ email của người dùng
Người gửi thư rác còn sử dụng các máy tìm kiếm chỉ để tìm kiếm địa chỉ
email trên các trang web. Các máy tìm kiếm này sẽ tìm kiếm những trang có kí hiệu
“@” và sẽ tách địa chỉ email từ đó ra. Những chương trình tìm kiếm email theo kiểu
như vậy còn được gọi là spambots.
Danh sách các địa chỉ cũng có thể được sinh tự động theo một cơ chế nào đó
để xác suất tồn tại của địa chỉ sinh tự động có thể chấp nhận được. Địa chỉ email
thường được tạo ra nhờ kết hợp giữa các họ tên phổ biến với các domain nhiều
người dùng và các con số có nghĩa. Ví dụ như địa chỉ email được sinh như sau:
Từ địa chỉ gốc là: nguyenvannam + @ + fpt.com.vn
Có thể sinh ra các địa chỉ sau:
nguyenvannam1@fpt.com.vn, nguyenvannam2@fpt.com.vn,..
nguyenvannam1982@fpt.com.vn, nguyenvannam1983@fpt.com.vn,..
Để xác định một địa chỉ email có tồn tại hay không, những người gửi thư rác
sẽ gửi một bức thư tới tất cả các hòm thư trong danh sách sinh tự động. Nếu hòm
thư đó tồn tại và chủ nhân của nó mở bức thư đó ra thì sẽ có một chương trình được

16

kích hoạt thông báo về sự tồn tại của địa chỉ cho người gửi thư rác. Cách này còn
gọi là sinh địa chỉ email theo kiểu từ điển.
Một số nguồn thu thập địa chỉ email của những kẻ phát tán thư rác
a. Thu thập thông tin qua Website:
Khi khách hàng hay người sử dụng truy cập vào một trang web được yêu cầu
đăng ký tài khoản và khai báo các thông tin cá nhân thì ngay lập tức các thông tin cá
nhân của người sử dụng (bao gồm cả địa chỉ email) sẽ được thu thập và ghi nhận
vào cơ sở dữ liệu của Website và họ sẽ sử dụng các thông tin cá nhân này cho các
chiến dịch quảng cáo, tiếp thị trên Website của họ.
Ngoài thông tin về địa chỉ email thì các website này còn thu thập thêm các
thông tin khác về khách hàng như:
- Thông tin liên lạc
- Khách hàng biết được bạn qua đâu (quảng cáo, báo, công cụ tìm kiếm,…)
- Thông tin giới tính, tuổi
- Lịch sử mua hàng (đã từng mua, chưa mua,…)
- Quy mô công ty khách hàng
- Các dịch vụ khách hàng muốn nhận thông tin (mà bạn cung cấp)
Tại sao họ lại cần những thông tin này? Vì chúng giúp họ phân nhóm danh
sách khách hàng để có thể gửi những chiến dịch Email Marketing riêng tới từng
nhóm cụ thể. Đây là một phần trong các nguồn thu thập địa chỉ email của các kẻ
phát tán thư rác.
b.Thu thập từ mạng lưới quan hệ
Ngoài cách thu thập thông tin trực tiếp từ các thông tin đăng ký của khách
hàng trên Website các spamer còn tích cực tham gia trao đổi các thông tin này với
nhau thông qua mạng lưới các quan hệ quen biết của họ từ đó làm cho danh sách địa
chỉ email của khách hàng trong tay các spamer ngày càng dài thêm.
c. Tích hợp thêm form đăng ký:
Các kẻ phát tán thư rác cũng có thể sử dụng các cách thức khác để thu thập
thông tin cá nhân và địa chỉ email của mọi người như tạo ra các phiếu khảo sát với

17

hứa hẹn phần thưởng hấp dẫn và yêu cầu người sử dụng đăng ký các thông tin cá
nhân chính xác để có thể nhận giải thưởng (thường là không có ai trúng thưởng),
hoặc lồng vào trong các bản khảo sát sự hài lòng của khách hàng, trong form “vận
chuyển” hàng hóa khi khách hàng mua sản phẩm từ website, trong form “mua
hàng” khi khách hàng mua sản phẩm từ website, trong các email xác nhận hay giao
dịch, trong chứng nhận thanh toán trực tuyến,…
d. Cung cấp các bản báo cáo miễn phí, các tin tức hữu ích hoặc các phần
mềm miễn phí.
Các spamer còn thu thập thông tin cá nhân bằng cách yêu cầu khách ghé
thăm điền thông tin khi muốn download hay được tặng một sản phẩm miễn phí.
Đây là một cách thường được dùng nhất không chỉ trên internet.
e. Nguồn địa chỉ từ các đơn vị “Môi giới” danh sách:
Các nhà môi giới thường là các công ty marketing thu thập và bán các thông
tin về khách hàng. Các spamer sẽ mua các danh sách thông tin này để sử dụng trong
việc phát tán thư rác.

2.1.2. Tìm kiếm các máy tính trên Internet cho phép gửi thư
Muốn gửi được thư rác, người gửi thư rác cần có trong tay một danh sách các
server để gửi thư đi. Các server này có thể là những server chuyên để gửi thư rác do
người gửi thư rác sở hữu hoặc thuê, hoặc là những server bị người gửi thư rác lợi
dụng.
Hình ảnh sau đây là trang quảng cáo của một số công ty chuyên tung thư rác
được Google liệt kê khi tìm kiếm hai từ “bulk mail”:

Hình 2.2: Một số website của các công ty gửi thư rác

18

Người gửi thư rác thường khai thác lỗ hổng của những server cho phép
chuyển tiếp thư (open relay) hoặc những proxy mở cho phép gửi thư (open proxy).

Gửi thư rác

ISP

Nhận thư rác

Mạng trung
gian
Open Mail Relay
người dùng cục bộ

Hình 2.3: Minh họa cách gửi thư rác qua mail server (open relay)
Trên mạng Internet thường có rất nhiều mail server cho phép chuyển tiếp
thư. Người gửi thư rác hay sử dụng các server này để chuyển tiếp thư rác vì khi đó
họ sẽ khó bị phát hiện hơn và chuyển được các gánh nặng về đường truyền sang cho
các server đó. Tuy nhiên những mail server dạng này thường sớm bị đưa vào danh
sách đen (danh sách những địa chỉ IP bị chặn) của các bộ lọc thư rác và không thể
tiếp tục gửi thư rác được nữa.
Một loại server khác là các proxy cho phép gửi thư cũng được người gửi thư
rác đặc biệt yêu thích. Mục đích của những proxy này là giúp các trang web vượt
qua được tường lửa (firewall). Một số proxy cho phép gửi thư và bất cứ ai cũng có
thể truy cập được. Người gửi thư rác lợi dụng điểm này để phát tán thư rác. Khi sử
dụng những proxy này, Người gửi thư rác hầu như không bị phát hiện. Mặt khác,
việc lợi dụng này thường được lâu dài vì những người quản lý proxy không quan
tâm tới việc proxy có bị liệt kê trong danh sách đen của các bộ lọc hay không (vì
mục đích chính của proxy không phải để gửi thư).

19

Ngoài hai cách trên, những người gửi thư rác còn thuê các máy tính “ma” để
gửi thư rác. Vì đây là các máy tính không được quản lý nên khó có thể pháp hiện ra
tác giả của các bức thư rác. Thêm nữa việc thuê các máy tính này lại khá rẻ nên có
tới 40%-60% người gửi thư rác bắt đầu từ chiêu thức này.
Không chỉ dừng lại ở việc đi thuê máy tính ma, những người gửi thư rác (và
cũng là những hacker) còn chiếm quyền kiểm soát các máy tính hợp pháp để gửi
thư rác Vào đầu năm 2005, Microsoft đã tiến hành khảo sát thử một máy tính bị
nhiễm mã độc và đã bị hacker nắm quyền điều khiển từ xa, tức máy tính này đã trở
thành một máy tính ma. Kết quả khảo nghiệm cho thấy rằng chỉ trong vòng 20
ngày, máy tính ma này đã nhận được 5 triệu yêu cầu kết nối từ những người thư rác
và chính nó cũng đã gửi tới 18 triệu thư rác. Trong những ngày cao điểm nhất, máy
tính ma này đã nhận được đến 470.000 yêu cầu kết nối và khoảng 1,8 triệu thư rác
đã từ nó gửi đi.

2.1.3. Boml Mail
Thư điện tử bị ném bom vì nhận được một lượng cực lớn các thư gửi đến
bằng cách sử dụng "zombie" trong mạng botnet(mạng lưới phân cấp các máy tính
bị tổn hại bởi phần mềm độc hại và dưới sự kiểm soát của kẻ tấn công). Tương tự
như cách thức sử dụng trong gửi thư rác, nhưng những kẻ tấn công chỉ thị botnet
này để gửi hàng triệu hoặc thậm chí hàng tỷ email, nhưng không giống như bình
thường botnet gửi thư rác, các email được tất cả gửi đến chỉ một hoặc một vài địa
chỉ mà kẻ tấn công mong muốn.
Đây là loại tấn công là rất khó khăn để bảo vệ chống lại bởi vì các địa chỉ gửi
từ nhiều nguồn khác nhau và khả năng của mỗi máy tính zombie gửi một thông điệp
khác nhau hoặc sử dụng các kỹ thuật tàng hình để đánh bại bộ lọc thư rác.
2.1.3.1. Xử lý khi bị bom thư
− Xác định nguồn gốc của các bom thư điện tử/thư rác và cấu hình
router của bạn (hoặc có nhà cung cấp dịch vụ mạng của bạn cấu hình
các bộ định tuyến) để ngăn chặn các gói tin đến từ địa chỉ đó.

20

− Xem lại tiêu đề thư điện tử để xác định nguồn gốc thực sự của email.
Xem xét các thông tin liên quan đến các bom thư điện tử/thư rác sau
có liên quan tới chính sách và thủ tục của tổ chức của bạn.
− Thực hiện liên lạc với trang web xác định đã đăng các bình luận của
bạn nhằm cảnh báo họ hoạt động.
− Đảm bảo cập nhật phiên bản mới nhất của phần mềm gửi thư điện tử
của bạn và làm tăng khả năng ghi nhật ký là cần thiết để phát hiện
hoặc cảnh báo bạn về các hoạt động.
2.1.3.2. Công tác phòng chống bom thư
Thật không may, tại thời điểm này, không có không có cách nào để ngăn
chặn bom thư hoặc gửi thư rác thực sự hiệu quả khác hơn là ngắt kết nối từ Internet,
và nó cũng không thể dự đoán nguồn gốc của các cuộc tấn công tiếp theo. Vì thế
công tác phòng chống là rất quan trọng, hãy lưu ý thực hiện các biện pháp dưới đây
để giảm thiểu tác hại của thư rác:
− Phát triển các công cụ để giúp bạn nhận ra và trả lời bom thư và thư
rác và do đó giảm thiểu tác động của các hoạt động đó. Các công cụ
nên tăng khả năng đăng nhập cũng như kiểm tra và thông báo cho bạn
để nhận biết tin nhắn đến/gửi đi có nguồn gốc từ cùng một người
dùng hoặc các trang web tương tự trong một khoảng thời gian rất
ngắn. Một khi bạn xác định các hoạt động, bạn có thể sử dụng các
công cụ để loại bỏ các thư từ người dùng vi phạm hoặc các trang web.
− Nếu trang web của bạn sử dụng một số lượng nhỏ tài nguyên của máy
chủ thư điện tử, bạn có thể cấu hình tường lửa của máy chủ để đảm
bảo rằng kết nối SMTP từ bên ngoài tường lửa của bạn có thể được
giám sát bởi máy chủ thư điện tử của bạn. Mặc dù điều này sẽ không
ngăn chặn một cuộc tấn công, nhưng nó giảm thiểu số máy có sẵn cho
kẻ xâm nhập tấn công dựa trên SMTP (cho dù cuộc tấn công đó là

21

một thư rác thư điện tử hoặc một nỗ lực để đột nhập vào một máy
chủ).
− Xem xét cấu hình máy chủ mail của bạn để cung cấp thư điện tử vào
hệ thống tập tin có dung lượng giới hạn cho mỗi người dùng được
kích hoạt.
− Giáo dục người dùng của bạn để gọi cho bạn về bom thư và gửi thư
rác.
− Không phổ biến vấn đề bằng cách chuyển tiếp (hoặc trả lời) spammed
thư điện tử.

2.2. Mô hình và nguyên lý hoạt động của hệ thống lọc nội dung Mail
2.2.1. Mô hình hệ thống lọc mail
Một trong những bước quan trọng khi xây dựng hệ thống lọc thư rác là quyết
định vị trí của hệ thống trong cả chu trình trao đổi thư điện tử. Việc xác định vị trí
của bộ lọc thư có ảnh hưởng tới kiến trúc bộ lọc, các yêu cầu về tái huấn luyện, tốc
độ xử lý và nhiều vấn đề khác.
Thông thường, hệ thống lọc thư có thể tích hợp vào hệ thống gửi và nhận thư
điện tử theo một trong các cách sau.
THƯ MỚI
MAIL
CLIENT

MAIL
SERVER

BỘ LỌC

(a)

THƯ MỚI
MAIL
CLIENT

THƯ MỚI

BỘ LỌC
PHẢN HỒI

(b)

MAIL
SERVER

22

THƯ MỚI
MAIL
SERVER

MAIL
CLIENT

BỘ LỌC
PHẢN HỒI

(c)
Hình 2.4: Các phương án bộ trí hệ thống lọc thư
Theo cách bố trí trên hình 2.4, bộ lọc thư được tích hợp vào chương trình
nhận thư điện tử (mail client) như Outlook Express và chạy trên máy khách (client)
của người sử dụng. Cách bố trí này thuận tiện cho việc xây dựng bộ lọc thư được cá
nhân hoá, có thể phân biệt thư rác – thư thường theo tiêu chí đánh giá riêng của
từng người sử dụng thư điện tử. Ngoài ra, do chạy trên máy khách nên bộ lọc thư
không gây quá tải đối với máy chủ thư điện tử. Tuy nhiên, mục tiêu của đề tài là
xây dựng bộ lọc cho phía client nên chúng tôi không trình bầy về phương án này
trong các phần sau của báo cáoi.
Trên hình 2.4 là cách bố trí bộ lọc thư dưới dạng một proxy. Bộ lọc thư sẽ
đóng vai trò trạm trung chuyển thư bằng cách nhận các gói tin được gửi theo thức
thư điện tử vào các cổng dành cho thư. Bộ lọc có thể chạy trên máy chủ hoặc máy
khách nhưng thường bộ lọc thư như vậy được cài đặt chạy trên máy khách. Cách
cấu hình này có ưu điểm là mềm dẻo, có thể kết hợp nhiều bộ lọc khác nhau bằng
nếu gắn đầu ra của bộ này với đầu vào của bộ khác và trên thực tế có một số
chương trình lọc thư rác sử dụng phương án bố trí này. Tuy nhiên, việc sử dụng kết
hợp bộ lọc thư với những chương trình proxy khác (như trình chống virus) thường
gây mâu thuẫn khi cài đặt và đòi hỏi người sử dụng phải có những hiểu biết nhất
định.
Hệ thống do chúng tôi xây dựng sử dụng phương án bố trí như minh hoạ trên
hình 2.4abộ lọc thư được tích hợp với phần mềm duyệt mail ở máy client, nó làm
nhiệm vụ kiểm tra các thư mới gửi đến và sau đó phân loại, đánh dấu nếu thư gửi

23

đến có các đặc điểm trung với nhận diện của thư rác mà phần mềm đã được huấn
luyện và thiết lập.
Hệ thống được xây dựng để có thể tích hợp với trình duyệt mail Outlook.
Đây là phần mềm duyệt thư điện tử offline khá thông dụng tại Việt nam và cung cấp
giao diện lập trình thích hợp cho việc kết nối với hệ thống lọc thư.

2.2.2. Kiến trúc tổng quan của hệ thống lọc mail
Phần quan trọng nhất của hệ thống bao gồm module huấn luyện và module
lọc. Hai môđun này kết hợp chặt chẽ với nhau, đầu ra của môđun huấn luyện là các
tham số tính toán được trong thời gian huấn luyện (các xác suất điều kiện đối với
học Bayes đơn giản) và được lưu trong K.Base. Môđun lọc thư sẽ đọc tham số từ
K.Base và sử dụng để phân loại thư mới nhận được. Việc tách riêng môđun huấn
luyện khỏi môđun phân loại làm tăng độ mềm dẻo khi cài đặt và sử dụng hệ thống.
Về nguyên tắc, có thể tách riêng môđun huấn luyện và chạy trên máy không có mail
server để giảm tải cho máy chủ.

24

Giao diện
người dùng

Huấn luyện

Tuỳ chọn

Gồm 2 IDE
forms
K. Base bao

K. Base

Phần lõi hệ
thống

gồm cơ sở dữ liệu
chứa tham số các bộ

Bộ phân loại
thư tiếng Anh,
tiếng Việt

Bộ phân loại
thư rác

phân loại sau khi
được huấn luyện.

Giao diện
với

mail

server

Bộ giao tiếp
Giao diện đăng kí với dịch vụ
SMTP.

Dịch vụ SMTP

với Exchange server
thông qua dịch vụ
SMTP

Mail server

Exchange Server

Hình 2.5: Kiến trúc chung của hệ thống lọc thư
Với kiến trúc thể hiện trên hình 2.5, luồng dữ liệu luân chuyển giữa các
thành phần bộ lọc được mô tả như sau:
Khi một bức thư được gửi đến Mail server exchange, nhờ chứa năng bẫy sự
kiện Incoming mail của SMTP thì bức thư đó được đưa đến Bộ phân loại Tiếng
Anh, tiếng Việt hoặc đưa thẳng đến Bộ phân loại thư rác (phụ thuộc vào tùy chọn
của người dùng).

25

Giả sử sau khi đưa vào bộ phân loại Tiếng Anh, tiếng Việt, bức thư được
chuyển cho bộ phân loại thư rác. Tại đây, nhờ quá trình tính toán theo Naive Bayes,
nó sẽ được gán nhãn là thư rác [Possible Spam] hoặc không gán nhãn nếu được xác
định là thư thường. Sau đó, thư được gửi đến Exchange server nhờ dịch vụ SMTP.
Cuối cùng, bức thư đã sẵn sàng cho Mail Client lấy về qua giao thức POP3.

2.2.3. Các kỹ thuật lọc nội dung thông tin qua mail
Phương pháp lọc nội dung để phân loại thư rác đã và đang được quan tâm,
nghiên cứu và ứng dụng nhiều nhất. Đặc điểm chung của phương pháp này là dựa
vào nội dung và chủ đề bức thư để phân biệt thư rác và thư hợp pháp. Dưới đây là
các phương pháp lọc nội dung thông dụng.
2.2.3.1. Lọc thư rác dựa vào các dấu hiệu nhận biết
Đầu tiên, người ta tạo ra các địa chỉ email để bẫy thư rác, gọi là các
honeypots. Các địa chỉ này được tạo ra một cách cố ý sao cho không bao giờ thư
bình thường được gửi tới. Do đó, nếu có thư gửi vào các địa chỉ bẫy thì ta có thể
chắc chắn đó là thư rác.
Sau đó hệ thống sẽ so sánh thư mới đến với thư đã bẫy được. Cách thức so
sánh là dựa trên dấu hiệu nhận biết. Nếu hai bức thư có các dấu hiện giống nhau thì
bức thư mới tới là thư rác.
Phương pháp thường dùng để so sánh hai bức thư như trên là gán cho mỗi ký
tự một số nào đó, tiếp theo cộng dồn các số đã gán lại với nhau. Hai bức thư sẽ
được coi là giống nhau nếu có tổng các số đã gán bằng nhau.
Ưu điểm của phương pháp lọc thư này là đơn giản, nhanh và không lọc nhầm
thư thường thành thư rác. Tuy nhiên, những người gửi thư rác lại dễ dàng đánh bại
hệ thống này bằng cách sinh ngẫu nhiên các mẩu thư rác sau đó gộp lại thành một
bức thư hoàn chỉnh. Khi đó các “dấu hiệu“ của các bức thư được gửi sẽ khác nhau
và thư rác sẽ lọt qua được hệ thống lọc. Bởi vậy tỉ lệ lọc thư rác của hệ thống này
không bao giờ vượt ngưỡng 70%.