Spampot hệ thống thu thập spam tự động

6 415 0
Spampot hệ thống thu thập spam tự động

Đang tải... (xem toàn văn)

Thông tin tài liệu

Spampot hệ thống thu thập spam tự động

SPAMPOT – HỆ THỐNG THU THẬP SPAM TỰ ĐỘNG Hồ Thị Lương (1), Đại Thị Phú, Trần Quang Anh (2)Khoa Công Nghệ Thông Tin, Trường Đại Học Hà Nội (1) holuongbg@gmail.com,(2) anhtq@hanu.edu.vn Tóm tắt: Hiện nay, Cơ Sở Dữ Liệu (CSDL) về spam đóng vai trò quan trọng trong lĩnh vực nghiên cứu về anti-spam, đánh giá các sản phẩm anti-spam … Tuy nhiên, ở Việt Nam vẫn đang thiếu hụt những CSDL spam với yêu cầu đặt ra là phải luôn mới, tự động hóa và chính xác. Với thực trạng ở Việt Nam như vậy, chúng tôi đưa ra hệ thống SPAMPOT tự động hóa, được xây dựng hoàn toàn trên mã ngưồn mở. Với tính năng tự động hóa, hệ thống SPAMPOT đã giải quyết được vấn đề khó khăn trong việc thu thập spam thay vì phải lấy spam từ các mailserver một cách thủ công. Bên cạnh đó, ưu điểm luôn luôn cập nhật và chính xác của CSDL đã giúp những người nghiên cứu tạo ra các báo cáo về số lượng spam định kỳ. Kết quả của hệ thống SPAMPOT là phải đảm bảo CSDL luôn luôn được cập nhật dữ liệu mới, thống kê được số lượng spam theo ngày và hiển thị trên file ảnh. 1. Giới thiệu “Thư rác (spam) là thư điện tử, tin nhắn được gửi đến người nhận mà người nhận đó không mong muốn hoặc không có trách nhiệm phải tiếp nhận theo quy định của pháp luật. Thư rác trong Nghị định này bao gồm thư điện tử rác và tin nhắn rác” (theo nghị định của chính phủ số 90/2008/NĐ-CP ngày 13 tháng 08 năm 2008 về chống thư rác). Theo như Cornelis Robat, tác giả bài báo về “Spam” đã viết: Thư rác mang mục đích thương mại, quảng cáo, hoặc lấy thông tin của người khác… Chính vì vậy mà nó gây ra những mối nguy hại cho người dùng, theo như ông viết thì “spam lấy bandwith của người người dùng Internet. Vào năm 2004, trên 30% tất cả mạng internet được chiếm đoạt và sử dụng hoàn toàn bởi spam”. Spam trở nên càng ngày càng tồi tệ vì làm cho người dùng không sử dụng được dịch vụ (đầy hộp thư, xóa nhầm, mất thời gian xóa thư), đôi khi nó có kèm theo virus, mang những thông tin lừa đảo trực tuyến. Đối với các tổ chức, nạn thư rác gây tốn kém tiền bạc và làm ảnh hưởng tới danh tiếng của tổ chức đó (IP của tổ chức bị chặn). Ví dụ: ở trường đại học hà nội (hanu), có 500 người dùng, 15000 emails mỗi ngày, trong đó có 12000 spam mỗi ngày, 15 s một email (download, đọc, xóa), 50 giờ /ngày * 30000 VND/giờ = 1500000 VND/ngày. Chính vì vậy mà nhiều đơn vị đã chuyển dịch vụ mail lên Google, Microsoft. Trong thời gian gần đây, nhiều đơn vị trong nước đã từ bỏ việc xây dựng hệ thống thư điện tử của riêng mình và sử dụng các dịch vụ cung cấp thư điện tử miễn phí của Google và Microsoft. Điều này phản ánh năng lực nghiên cứu, phát triển hệ thống thư điện tử, đặc biệt trong lĩnh vực lọc thư rác của Việt Nam còn nhiều hạn chế. Nhóm thực hiện đề tài mong muốn cùng các nhà khoa học trong nước đóng góp sức lực của mình vào công cuộc xây dựng nền kinh tế tri thức cho Việt Nam. Để khắc phục tình trạng này, đã và đang có rất nhiều nghiên cứu, giái pháp để ngăn chặn thư rác. Trong quá trình nghiên cứu về thư rác, thì điều cần thiết đầu tiên là phải xây dựng hệ thống CSDL về thư rác. CSDL này phải đảm bảo tính tự động cập nhật, và chính xác. Đó cũng là yêu cầu đặt ra để thiết kế một CSDL chuẩn phục vụ cho việc nghiên cứu về anti-spam cũng như đánh giá các sản phẩm anti-spam. Hiện nay trên thế giới đã có một số CSDL mẫu về spam như: spamassasin (http://svn.apache.org/viewvc/spamassassin/trunk/sample-spam.txt?view=log), TREC 2006 (http://plg.uwaterloo.ca/~gvcormac/treccorpus06), CCERT Data Sets of Chinese Emails (http://www.ccert.edu.cn/spam/sa/datasets.htm). Các CSDL mẫu này chủ yếu là tiếng anh, và không cập nhật liên tục. Lý do là việc việc thu thập spam tương đối khó khăn, vì chủ yếu các spam được lưu trữ trên các server, hơn nữa, việc nghiên cứu cần số lượng spam rất lớn, vì thế chúng ta không thể thu thập spam một cách thủ công. Điều đó dẫn đến cơ sở dữ liệu không thể đảm bảo được tính cập nhật. Giải pháp đưa ra là: chúng ta phải xây dựng hệ thống tự động lấy mail từ server, và thường xuyên theo thời gian đặt ra. Chính vì vậy, nhóm nghiên cứu của chúng tôi đề xuất xây dựng hệ thống SPAMPOT (hệ thống thu thập tự động) thỏa mãn yêu cầu của một hệ thống CSDL chuẩn(mới và chính xác). Hệ thống SPAMPOT sẽ tự động thu thập spam hàng ngày, cập nhật vào CSDL spam, đồng thời đưa ra thống kê về số lượng spam theo từng ngày. Phần còn lại của bài báo được trình bày như sau: Phần 2: mô hình SPAMPOT; Phần 3: thực hiện; Phần 4: kết quả nghiên cứu; Cuối cùng là kết luận và những hướng nghiên cứu tiếp theo. 2. Mô hình SPAMPOT 2.1 Ý tưởng Trong bài nghiên cứu của tác giả Matthew Prince, và các tác giả khác về “Understanding How Spammers Steal Your E-mail Address: An Analysis of the First Six Months of Data from Project Honey Pot”, ông đã đề cập đến phương pháp mà các spammer lấy điạ chỉ email bằng cách thiết lập các spider(chương trình để tách riêng điạ chỉ email trên internet). Tham khảo từ phương pháp này, chúng tôi đưa ra ý tưởng trong việc xây dựng spampot là sẽ đặt nhiều địa chỉ email ở nhiều nơi trên internet, tuy nhiên những địa chỉ này là địa chỉ không dùng để gửi hay nhận thư, chỉ được public rộng rãi trên internet. Ví dụ post trên các diễn đàn, hay dùng làm chữ ký trên các diễn đàn… Vì hiện nay những spammer sẽ chạy các đoạn mã hay các chương trình như spider, crawler… để lấy các địa chỉ email ở trên mạng sau đó gửi thư hàng loạt tới các điạ chỉ email này. Nếu điạ chỉ mail mà public trên internet nhận được các email này thì đó chính xác là spam. Bằng cách đăng ký và public rộng rãi địa chỉ email trên internet, chúng tôi sẽ thu thập được nhiều spam ở mục hộp thư đến của các điạ chỉ email. 2.2 Mô hình Spam Account Theo như hình ở trên, thì hệ thống spampot cần phải có các spam account (điạ chỉ email mà trong mục hộp thư đến phải là spam mail mà nhận được theo ý tưởng giới thiệu ở trên). Để thực hiện được quá trình đưa các spam vào CSDL thì cần cần có 1 script thực hiện điều này và trực tiếp lưu các spam này vào trong cơ sở dữ liệu theo từng ngày. Từ CSDL trong hệ thống SPAMPOT, những người quản lý còn có thể quản lý, sửa đổi CSDL một cách dễ dàng và thuận tiện hơn. Ngoài ra, hệ thống này còn có chức năng tự động thống kê số lượng spam thu được theo từng ngày, để làm được điều này thì phải cần 1 scritp để lấy dữ liệu từ trong CSDL và hiển thị theo thời gian. 3. Thực hiện Để xây dựng hệ thống SPAMPOT, chúng tôi đã sử dụng các module và các scripts mã nguồn mở được public trên mạng để cài đặt cho hệ thống. Tuy nhiên, để hiểu và có thể xây dựng được hệ thống SPAMPOT, thì điều rất quan trọng là hiểu được ngôn ngữ lập trình Perl(ngôn ngữ xử lý văn bản rất hiệu quả), mà dùng chủ yếu trong các module để chạy chương trình, ngoài ra kiến thức về hệ điều hành linux cũng tương đối cần thiết vì chúng tôi xây dựng hệ thống này hoàn toàn trên linux. Các module được cài đặt: Mail-POP3Client-2.18: Module sẽ kết nối đến mailserver(ở trong nghiên cứu này là gmail) và hỗ trợ các chức năng lấy mail về (http://search.cpan.org/) IO-Socket-SSL-1.19: Module này hỗ trợ các mailserver mà sử dụng SSL (gmail). GDGraph-1.44: Module dùng để vẽ biểu đồ thống kê số lượng spam và sinh ra file ảnh miêu tả cho thực trạng spam. Để module này hoạt động hiệu quả, thì cần phải cài thêm các module khác hỗ trợ như: DBD-Chart-0.82, DBI-1.607, gd-2.0.35, GD-2.16, GDTextUtil-0.86, Time-HiRes-1.9715, zlib-1.2.3. Các module này đều được public trên http://search.cpan.org/ . Chú ý là phải cài tất cả các module hổ trợ thì GDGraph mới tự động vẽ được biểu đồ, nếu không thì chương trình sẽ báo lỗi và không thể hoàn thành Spam Account Spam Account Script: get mail Manage/ Modify Script: display graph Database Display Statistics việc cài đặt GDGraph. Việc cài đặt các module này đều có hướng dẫn chi tiết trong file README ở mỗi module. Hai scripts viết bằng perl để chạy hệ thống Script 1: Download spam từ trên mailserver: chương trình này sẽ tự động kết nối vào các địa chỉ email mà chứa spam đã có sẵn, lấy các spam và xóa các mail này trong hộp thư đến, sau đó sẽ tự động kết nối tới cơ sở dữ liệu và lưu các email này vào trong cơ sở dữ liệu với các trường đã được thiết kế sẵn, ở trong hệ thống này thì chương trình này sẽ tách email thành 2 phần rõ ràng là header và body của mỗi email và đưa vào cơ sở dữ liệu với 2 trường này. Script2: Trình bày số liệu trên biểu đồ dưới dạng file ảnh: Chương trình sẽ kết nối tới cơ sở dữ liệu và tới bảng lưu các spam, sau đó sẽ chọn và đếm số lượng spam theo từng ngày, cụ thể chúng tôi mặc định chương trình sẽ đếm và hiển thị spam trong vòng 10 ngày gần đây nhất, tính từ ngày hiện tại. Sau đó chương trình sẽ kết nối tới module vẽ biểu đồ, và lấy số liệu vừa lấy được ở trên để vẽ và hiển thị ra file ảnh dạng jpg, gif,…tùy theo cách đặt của người cài đặt. Khi quan sát ảnh này, chúng tôi có thể biết được số lượng spam hiện này như thế nào, có gì khác so với thời gian trước… Tự động hóa hệ thống: trong linux có câu lệnh crontab, mà giúp cài đặt thời gian chạy tự động cho chương trình, ở đây chúng tôi đặt chương trình chạy 3phút 1 lần. Với chức năng này chúng tôi không phải chạy chương trình một cách thủ công, mà nó sẽ tự động sau 3 phút, như vậy sẽ rất thuận tiện chúng tôi chỉ cần xem file ảnh sẽ biết được số luợng spam như thế nào. 4. Kết quả Hệ thống này được đưa vào hoạt động thực tế, kết thúc chu trình làm việc của hệ thống, chúng ta sẽ có CSDL được cập nhật và 1 file ảnh. Trong đó, ảnh hiển thị số lượng spam từng ngày trong 10 ngày gần nhất, ngày thứ 10 là ngày hiện tại, và lùi về các ngày trước đó theo thứ tự giảm dần. Ảnh này sẽ thay đổi số lượng liên tục vì nó cập nhật thường xuyên sau 3 phút. Kết quả được đặt trên 1 website mà mọi người có thể truy cập và xem một cách dễ dàng tại địa chỉ: http://fit.hanu.vn/~emaildatabase/antispam/index.htmlNgoài ra, chúng tôi còn sở hữu CSDL về spam mà thỏa mãn được yêu cầu chúng tôi đặt ra ban đầu: tự động hóa, dữ liệu luôn luôn cập nhật và chính xác. Biểu đồ kết quả spam trong 10 ngày 5. Kết luận Mặc dù đã có kết quả nghiên cứu, nhưng vì thời gian nghiên cứu còn hạn chế nên kết quả nghiên cứu vẫn chưa cao: chúng tôi mới chỉ thử nghiệm việc lấy mail từ các account của Gmail; chưa public các account của gmail rộng rãi; số lượng spam thu được chưa nhiều. Trong thời gian sắp tới chúng tôi có kế hoạch làm cho hệ thống hoàn thiện hơn và có khả năng ứng dụng được trong thực tiễn nghiên cứu antispam: Lấy spam từ các mail server khác nhau như: yahoomail, hotmail, webmail…, Tạo báo cáo hàng tuần một cách tự động từ hệ thống Tách IP đầu tiên của header, và tra IP này thuộc nước nào, vì trong một nghiên cứu của tác giả Joshua Goodman với nghiên cứu về “IP Addresses in Email Clients” đã viết ”Những địa chỉ IP đóng 1 vai trò quan trọng trong việc chống spam, được sử dụng cho những danh sách an toàn, những danh sách đen, anti-spoofing và những mục đích liên quan.” Kiểm tra online: lấy các thư spam trong cơ sở dữ liệu và gửi tới một địa chỉ khác, tại địa chỉ này sẽ đặt phần mềm lọc spam, từ đó kiểm tra xem phần mềm này lọc chính xác bao nhiều %. 6. Tài liệu tham khảo [1] Cornelis Robat. Spam, URL: http://www.thocp.net/reference/internet/spam.htm, 28/12/2006. [2] Joshua Goodman. IP Addresses in Email Clients. In Proceedings of the First Conference on Email and Anti-Spam (CEAS), 2004. [3] Matthew Prince, Benjamin Dahl, et all. Understanding How Spammers Steal Your E-Mail Address: An Analysis of the First Six Months of Data from Project Honey Pot. In Proceesing of the Second Conference on Email and Anti-Spam, 2005. [4] Nghị định của chính phủ số 90/2008/NĐ-CP ngày 13 tháng 08 năm 2008 về chống thư rác. [5] Quang-Anh Tran, CCERT Data Sets of Chinese Emails(CDSCE), URL: http://www.ccert.edu.cn/spam/sa/datasets.htm, 2005. [6] Spamassasin, Log of /spamassassin/trunk/sample-spam.txt, URL: http://svn.apache.org/viewvc/spamassassin/trunk/sample-spam.txt?view=log[7] TREC, TREC 2006 Spam Track Public Corpora, URL: http://plg1.cs.uwaterloo.ca/cgi-bin/cgiwrap/gvcormac/foo06, 2006 . SPAMPOT (hệ thống thu thập tự động) thỏa mãn yêu cầu của một hệ thống CSDL chuẩn(mới và chính xác). Hệ thống SPAMPOT sẽ tự động thu thập spam hàng ngày,. ngưồn mở. Với tính năng tự động hóa, hệ thống SPAMPOT đã giải quyết được vấn đề khó khăn trong việc thu thập spam thay vì phải lấy spam từ các mailserver

Ngày đăng: 16/01/2013, 09:57

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan