PHƯƠNG PHÁP SPF ĐỘNG VÀ ỨNG DỤNG TRONG 
LỌC THƯ RÁC 
Trần Quang Anh (1), Cao Việt Thiện (2)
(1) Khoa Công nghệ Thông tin, Trường Đại học Hà Nội, 
(2) Văn phòng UBND tỉnh Sơn La 
(1) 
[email protected], (2) 
[email protected] 
TÓM TẮT 
Điểm yếu của các phương pháp xác thực địa chỉ người gửi hiện tại xuất phát từ bản chất 
của vấn đề là: Bên gửi thư phải thiết lập lại DNS của phía mình, nhưng người được 
hưởng lợi trực tiếp lại không phải là bên gửi thư mà là bên nhận thư. Chúng tôi đã đề 
xuất phương pháp SPF động, cho phép các bên gửi thư và nhận thư không phải thiết lập 
lại DNS của mình mà vẫn có thể xác thực địa chỉ người gửi. Kết quả thí nghiệm cho thấy 
phương pháp SPF động có thể cho tỷ lệ lọc thư rác là 98%, tỷ lệ lọc nhầm thư bình 
thường là 0.1%. Kết quả nghiên cứu được ứng dụng trong lọc thư rác, lừa đảo trực tuyến 
tại Trường Đại học Hà Nội. 
1. GIỚI THIỆU 
Ngày nay, thư điện tử đã trở thành một công cụ đắc lực phục vụ cho nhu cầu trao đổi 
thông tin của các cơ quan, tổ chức, doanh nghiệp cũng như mỗi cá nhân. Tuy nhiên, thư 
điện tử cũng đang bị lợi dụng để phát tán thư rác, lây lan virus máy tính và lừa đảo trực 
tuyến, gây thiệt hại lớn cho người sử dụng. Tháng 7 năm 2007, chính phủ đã bắt đầu xây 
dựng Nghị định về chống thư rác, trong đó khuyến khích nghiên cứu và triển khai các 
giải pháp chống thư rác. (Nghị định về chống thư rác của chính phủ đã được ban hành 
ngày 13 tháng 8 năm 2008 số 90/2008/NĐ-CP.) [1] 
Nguyên nhân chính dẫn đến mối nguy hại nói trên là do giao thức SMTP (giao thức dùng 
để trao đổi thư điện tử trên mạng Internet hiện nay) không xác thực địa chỉ người gửi [2], 
dẫn đến phần địa chỉ người gửi trong một thư điện tử hoàn toàn có thể tạo giả. Kể xấu đã 
lợi dụng điều này để phát tán thư rác hay lừa đảo trực tuyến (phishing). Để khắc phục yếu 
điểm đó, các nhà nghiên cứu đã đưa ra một số phương pháp xác thực địa chỉ người gửi 
(sender authentication) bao gồm Sender Policy Framwork (SPF), DomainKeys và 
SenderID, giúp người nhận xác thực địa chỉ của người gửi là thật hay giả, ngăn chặn việc 
phát tán thư rác hay lừa đảo trực tuyến. [3], [4], [5] 
Điểm yếu của các phương pháp xác thực địa chỉ người gửi hiện tại xuất phát từ bản chất 
của vấn đề là: Bên gửi thư phải thiết lập lại DNS của phía mình, nhưng người được 
hưởng lợi trực tiếp lại không phải là bên gửi thư mà là bên nhận thư. Chính vì lý do đó, 
trên thực tế thì quá trình triển khai SPF chưa được là bao. 
Nghiên cứu này đưa ra một phương pháp mới: SPF động nhằm khắc phục điểm yếu của 
phương pháp SPF hiện tại. Ý tưởng của chúng tôi xuất phát từ bài báo về Chống DDOS 
bằng PacketScore của Kim trình bầy tại hội nghị Infocom 2004 [6], trong đó Kim đưa ra 
ý tưởng thống kê các cặp địa chỉ IP nguồn và giá trị của TTL trong mỗi gói tin để xác 
định gói tin nào là thật và gói tin nào là giả mạo. Chúng tôi cho rằng bản chất của DDOS 
và bản chất của SPAM là giống nhau: DDOS giả mạo địa chỉ IP, còn SPAM giả mạo địa 
chỉ người gửi, vì vậy chúng tôi đã đưa ra phương pháp SPF động, với ý tưởng tương tự 
như của Kim nhưng dùng trong chống SPAM: Dựa vào thống kê các cặp tên miền và địa 
chỉ IP của máy chủ gửi thư để xác định thư nào là thư giả mạo. 
Trong phương pháp SPF động, các thông tin xác thực địa chỉ người gửi sẽ do một bên thứ 
3 phụ trách. Các bên gửi thư và nhận thư không phải thiết lập lại DNS của mình mà vẫn 
có thể xác thực địa chỉ người gửi. Kết quả nghiên cứu được ứng dụng trong lọc thư rác, 
lừa đảo trực tuyến và hỗ trợ quá trình triển khai SPF tại Việt Nam. 
Phần còn lại của báo cáo được trình bày như sau: Phần 2 giới thiệu về phương pháp SPF 
và điểm yếu của nó. Phần 3 đưa ra phương pháp SPF động và các phân tích liên quan. 
Phần 4 thảo luận các vấn đề lý luận liên quan đến phương pháp SPF động. Phần 5 trình 
bầy kết quả triển khai phương pháp SPF động tại Trường Đại học Hà Nội. Cuối cùng là 
kết luận và các hướng nghiên cứu tiếp theo. 
2. PHƯƠNG PHÁP SPF 
Sender Policy Framework (SPF) là kỹ thuật ngăn chặn spam thuộc nhóm phương pháp 
xác thực địa chỉ người gửi (sender authentication), kỹ thuật này giúp người nhận xác thực 
địa chỉ của người gửi là thật hay giả, từ đó có thể ngăn chặn được việc phát tán thư rác 
hay lừa đảo trực tuyến [3]. 
Phương pháp SPF do tập đoàn American Online (AOL) đưa ra. Phương pháp này yêu cầu 
xác lập DNS, trong đó khai báo những máy chủ nào có thể gửi thư từ một tên miền 
Internet nhất định. Phía người nhận sẽ thông qua truy vấn DNS để xác thực địa chỉ của 
người gửi và địa chỉ IP có phù hợp với nhau không, từ đó biết được địa chỉ người gửi là 
thật hay giả. Hoạt động của SPF được mô tả trong Hình 1: 
Hình 1: Phương thức hoạt động của SPF 
Trước hết phía gửi thư cần thực hiện thao tác cài đặt trên máy chủ DNS của mình để khai 
báo những máy chủ email nào có quyền gửi email đi sử dụng tên miền của phía gửi thư. 
Việc khai báo này được thực hiện bằng việc sử dụng bản ghi TXT trong đó liệt kê địa chỉ 
IP của các máy chủ email được phép gửi đi: Bước 1: Máy chủ email tại phía gửi thư thiết 
lập kết nối tới máy chủ email của phía nhận thư qua giao thức SMTP. Tại bước này các 
thông tin về tiêu đề (header) của thư được gửi từ phía gửi sang phía nhận. Thông tin tiêu 
đề bao gồm tên miền của bên gửi và địa chỉ IP của máy chủ email bên gửi; Bước 2: Máy 
chủ email bên nhận thư tạo ra 1 truy vấn DNS gửi đến máy chủ DNS của bên gửi, yêu 
cầu cung cấp danh sách nhưng máy chủ email được phép gửi thư của bên gửi; Bước 3: 
Máy chủ DNS của bên gửi trả kết quả về cho máy chủ email của bên nhận. Sau đó máy 
chủ email bên nhận đối chiếu xem địa chỉ IP của máy chủ email vừa gửi thư có nằm trong 
danh sách này không. Nếu có thì địa chỉ người gửi được xác nhận là hợp lệ. Nếu không 
có thì địa chỉ người gửi là không hợp lệ, thư điện tử này có nhiều khả năng là spam. 
Tuy nhiên phương pháp SPF đòi hỏi phải thay đổi cơ sở hạ tầng mạng, cụ thể là thay đổi 
xác lập của DNS, trong quá tình triển khai thực tế đã gặp phải không ít khó khăn. Lý do 
xuất phát từ bản chất của vấn đề: Bên gửi thư phải cài đặt lại DNS của phía mình, nhưng 
người được hưởng lợi trực tiếp từ việc cài đặt đó lại không phải là bên gửi thư mà là bên 
nhận thư. Chính vì lý do đó, trên thực tế thì quá trình triển khai SPF chưa được là bao. 
Tại Việt Nam phương pháp SPF cũng chưa được triển khai. 
3. PHƯƠNG PHÁP SPF ĐỘNG 
Để khắc phục nhược điểm trên của SPF, nhóm tác giả đề xuất phương pháp SPF động 
(Dynamic Sender Policy Framework). Ý tưởng của phương pháp này là việc xác thực địa 
chỉ người gửi sẽ được thực hiện trên máy chủ DNS của một đơn vị thứ ba thay vì thực 
hiện trên máy chủ DNS của bên gửi thư. Như thế bên nhận thư vẫn được hưởng lợi ích từ 
SPF mà bên gửi thư không cần phải xác lập lại máy chủ DNS của mình. Hình vẽ 2 mô tả 
hoạt động của SPF động. 
Hình 2: Phương thức hoạt động của SPF động 
Cơ sở dữ liệu SPF động chứa thông tin khai báo những máy chủ nào có thể gửi thư từ 
một tên miền Internet nhất định. Cơ sở dữ liệu SPF động được xây dựng thông qua thống 
kê, phân tích các số liệu lịch sử. Dựa vào cơ sở dữ liệu này để phán đoán một thư mới có 
phải là thư rác hay lừa đảo trực tuyến hay không. Nếu thư mới được gửi đi từ một địa chi 
IP có trong cơ sở dữ liệu ứng với tên miền của địa chỉ người gửi thì đó là thư bình thường, 
ngoài ra thì bị nghi vấn là thư rác. Để hệ thống hoạt động chính xác thì cơ sở dữ liệu này 
cần phải chính xác. 
Các dữ liệu SPF động sẽ được cung cấp cho người dùng (máy chủ thư điện tử) dưới dạng 
dịch vụ của một bên thứ 3. Trong Hình 2, khi máy chủ nhận được một thư điện tử, nó sẽ 
truy vấn dịch vụ của máy chủ cung cấp dịch vụ SPF động để lấy các thông số về địa chỉ 
người gửi, từ đó xác định địa chỉ người gửi là thật hay giả. Các truy vấn của người dùng 
đến dịch vụ SPF động sẽ được máy chủ cung cấp dịch vụ ghi lại. Số liệu này sẽ được 
dùng để thống kê, phân tích và cập nhật CSDL của SPF động. Chúng tôi đã sử dụng dịch 
vụ DNS để cung cấp dịch vụ SPF động, như vậy, người dùng không phải cài đặt hay thay 
đổi các thiết lập hiện tại mà vẫn có thể sử dụng được dịch vụ SPF động. 
Thách thức lớn nhất của phương pháp SPF động này là làm thế nào để tự động cập nhật 
CSDL của SPF động dựa trên các số liệu lịch sử (log). Phần tiếp theo của báo cáo sẽ phân 
tích vấn đề này. 
4. CẬP NHẬT CSDL SPF ĐỘNG 
4.1 Dữ liệu sử dụng để nghiên cứu 
Để triển khai các nghiên cứu cần thiết, chúng tôi cần thu thập và xây dựng một tập mẫu 
về thư thư rác và thư có nội dung lừa đảo trực tuyến tại Việt Nam. Cơ sở dữ liệu này phải 
đủ lớn và đảm bảo tính chính xác của các mẫu. Những thông tin cần chắt lọc từ các mẫu 
bao gồm: Địa chỉ IP của máy chủ gửi thư; tên miền tương ứng ghi trên địa chỉ thư điện tử 
của người gửi; thời gian gửi thư và thông tin phân loại thư: thư rác hay thư bình thường. 
Ba thông tin đầu có thể dễ dàng lấy ra từ phần header của thư hoặc từ log file của máy 
chủ. Nhóm tác giả chọn phương pháp thứ hai là thu thập log file của máy chủ mail tại 
Trường Đại học Hà Nội để chắt lọc ra những thông tin cần thiết. Toàn bộ tập mẫu được 
lưu trữ dưới dạng cơ sở dữ liệu, cho phép các bước nghiên cứu tiếp theo dễ dàng sử dụng. 
Số lượng thư trong tập dữ liệu mẫu như sau: 
Tổng số thư: 46810 
Tổng số thư bình thường: 7855 
Tổng số thư rác: 38955 
Số thư có nội dung lừa đảo trực tuyến: 53 
4.2 Thời gian có hiệu lực của máy chủ gửi thư 
Để lọc ra các địa chỉ IP thực sự của mỗi một tên miền của máy chủ gửi thư, chúng tôi đã 
dựa vào thời gian có hiệu lực của máy chủ gửi thư. Hình 3 mô tả có sự khác nhau rõ rệt 
về phân bố số lượng cặp (tên miền, IP) giữa thư bình thường và thư rác: Thời gian có 
hiệu lực của các cặp (tên miền và IP) gửi thư rác tập trung vào dưới 3 ngày, và giảm dần 
theo thời gian, trong khi đó thời gian có hiệu lực của các cặp (tên miền và IP) gửi thư 
bình thường chủ yếu lớn hơn 3 ngày. 
0 2 4 6 8 10 12 14 16 18 20 22 24 26
0
20
40
60
80
100
S
o 
lu
on
g 
do
m
ai
n_
ip
Thoi gian co hieu luc (ngay)
 thu binh thuong
 thu rac
Hình 3. Phân bố số lượng cặp (tên miền, IP) theo thơi gian 
Kết quả này khẳng định có thể thông qua thống kê các số liệu lịch sử để chắt lọc các địa 
chỉ máy chủ thật cho một tên miền. Chúng tôi đã làm thí nghiệm về hiệu quả của phương 
pháp SPF động khi sử dụng các ngưỡng thời gian có hiệu lực khác nhau, kết quả được 
trình bày trong Hình 4. 
1 2 3 4 5 6 7
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
sa
i s
o 
(%
)
Nguong thoi gian co hieu luc
 thu binh thuong
 thu rac
Hình 4. Hiệu quả phương pháp SPF động 
Trong đó cho thấy nếu sử dụng các ngưỡng thời gian có hiệu lực khác nhau ta sẽ có các 
sai số khác nhau về khả năng lọc thư rác, ví dụ nếu ngưỡng thời gian có hiệu lực là 3 
ngày, khi đó phương pháp SPF động lọc được 98% tổng số thư rác, lọc nhầm 0.1% số thư 
bình thường. 
5. PHÁT TRIỂN VÀ TRIỂN KHAI SPF ĐỘNG 
Chúng tôi đã phát triển toàn bộ hệ thống lọc thư rác và lừa đảo trực tuyến dựa trên 
phương pháp SPF động. Hệ thống được phát triển trên nền mã nguồn mở, được xây dựng 
theo mô hình máy chủ/máy trạm. Máy chủ cung cấp dịch vụ SPF động. Máy trạm sử 
dụng dịch vụ do máy chủ cung cấp để lọc thư rác. 
Phần máy chủ, chúng tôi lợi dụng dụng dịch vụ DNS để cung cấp dịch vụ SPF động. Bộ 
phân tích địa chỉ IP máy chủ thực tương ứng với mỗi tên miền phát triển bằng ngôn ngữ 
lập trình Perl, có nhiệm vụ cập nhật các bản ghi SPF động cho hệ thống DNS. Các bản 
ghi SPF động được lưu dữ dưới dạng TXT trong hệ thống DNS. Dịch vụ SPF động được 
cung cấp tại địa chỉ sau:  
Phần máy trạm, chúng tôi phát triển phần mềm DSPF Plugin và tích hợp trong 
SpamAssassin. Phần mềm DSPF Plugin sẽ chắt lọc tên miền và địa chỉ IP của máy chủ 
gửi thư từ header của thư điện tử, sau đó gửi các truy vấn DNS, thông qua dịch vụ SPF 
động do máy chủ cung cấp để xác thực người gửi thư. Sau đó thư sẽ được phân loại dựa 
trên kết quả xác thực do máy chủ trả về. DSPF Plugin được cung cấp tại địa chỉ sau: 
Chúng tôi xây dựng và triển khai hệ thống lọc thư rác và lừa đảo trực tuyến tại Trường 
Đại học Hà Nội, trong đó sử dụng mô hình POP3 proxy có tích hợp bộ lọc thư rác của 
chúng tôi. Trong quá trình người dùng lấy thư về từ bất kỳ máy chủ nào bằng giao thức 
POP3, thư sẽ được chuyển qua POP3 proxy và phân loại tại đó trước khi về đến máy tính 
người sử dụng. Dịch vụ POP3 proxy được cung cấp tại địa chỉ sau: 
6. KẾT LUẬN 
Phương pháp SPF động có thể được sử dụng để hỗ trợ phân loại thư rác và thư có nội 
dung lừa đảo trực tuyến. Trong các thí nghiệm của bài báo, phân loại bằng phương pháp 
SPF động có kết quả như sau: Tỷ lệ lọc thư rác là 98%, tỷ lệ lọc nhầm thư bình thường là 
0.1%. 
Phương pháp SPF động có những ưu điểm sau: 1) Không cần kiểm tra nội dung của thư, 
toàn bộ thông tin cần thiết chỉ là địa chỉ IP và tên miền của máy chủ gửi thư điều này 
giúp đảm bảo tính riêng tư và bí mật cho người dùng cuối. 2) Việc không kiểm tra nội 
dung thư cũng tránh được vấn đề về ngôn ngữ trong các thư spam bằng tiếng Việt, đồng 
thời góp phần giảm tải của hệ thống máy chủ, đặc biệt là trong trường hợp spam bằng 
file .pdf hoặc file ảnh. 3) Dễ cài đặt, có thể triển khai ở phạm vi rộng theo mô hình cung 
cấp dịch vụ xác thực. 
Mô hình cung cấp dịch vụ SPF động có thể dễ dàng triển khai trên phạm vi rộng, với chi 
phí thấp, hiệu quả cao, góp phần đẩy mạnh ứng dụng của SPF tại Việt Nam và trên thế 
giới. 
LỜI CẢM ƠN 
Nghiên cứu này được hỗ trợ từ đề tài nghiên cứu khoa học Bộ GD&ĐT năm 2008 mã số 
B 2008-26-10. 
TÀI LIỆU THAM KHẢO 
[1] Nghị định số 90/2008/NĐ-CP, “Nghị định về Chống thư rác”, 8/2008 
[2] RFC 2821, Simple Mail Transfer Protocol, 2001. URL: 
[3] Sender Policy Framwork, Web site, URL:  
[4] DomainKeys, Web site, URL:  
[5] SenderID, Web site, URL: 
www.microsoft.com/mscorp/safety/technologies/senderid/default.mspx 
[6] Y. Kim, W.C. Lau, et al. PacketScore: Statistics-based Overload Control against 
DDOS Attacks. IEEE Infocom 2004