Luận Văn Xây dựng hệ thống quét thư rác trên môi trường phân tán

Thảo luận trong 'Công Nghệ Thông Tin' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    170
    Điểm thành tích:
    0
    Xu:
    0Xu
    Khóa luận tốt nghiệp
    Đề tài: XÂY DỰNG HỆ THỐNG QUÉT THƯ RÁC TRÊN MÔI TRƯỜNG PHÂN TÁN
    Định dạng file word


    MỤC LỤC

    MỤC LỤC i
    Chương 1. Tổng quan về thư rác và các kỹ thuật phát hiện thư rác 1
    1.1. Giới thiệu về thư rác. 1
    1.1.1. Lịch sử. 1
    1.1.1.1. Giai đoạn thứ nhất – những năm đầu của thư rác. 1
    1.1.1.2. Giai đoạn thứ hai – thư rác được gửi thông qua phần mềm 1
    1.1.1.3. Giai đoạn thứ ba – phần mềm chống thư rác chống lại các phần mềm gửi thư rác 2
    1.1.2. Định nghĩa. 2
    1.1.3. Mục đích chính gửi thư rác. 3
    1.1.4. Các đặc tính của thư rác. 3
    1.1.5. Các kỹ thuật tạo thư rác. 5
    1.2. Giới thiệu các kỹ thuật phát hiện thư rác. 6
    1.2.1. Kỹ thuật blacklisting. 6
    1.2.1.1. Giới thiệu. 6
    1.2.1.2. Ưu – khuyết điểm 7
    1.2.1.3. Ghi chú. 7
    1.2.2. Kỹ thuật whitelisting. 7
    1.2.2.1. Giới thiệu. 7
    1.2.2.2. Ưu – khuyết điểm 9
    1.2.2.3. Ghi chú. 9
    1.2.3. Kỹ thuật heuristic filtering. 9
    1.2.3.1. Giới thiệu. 9
    1.2.3.2. Ưu – khuyết điểm 12
    1.2.3.3. Ghi chú. 12
    1.2.4. Kỹ thuật challenge/ response. 12
    1.2.4.1. Giới thiệu. 12
    1.2.4.2. Ưu – khuyết điểm 13
    1.2.4.3. Ghi chú. 14
    1.2.5. Kỹ thuật throttling. 14
    1.2.5.1. Giới thiệu. 14
    1.2.5.2. Ưu – khuyết điểm 15
    1.2.5.3. Ghi chú. 15
    1.2.6. Kỹ thuật address obfuscation. 16
    1.2.6.1. Giới thiệu. 16
    1.2.6.2. Ưu – khuyết điểm 16
    1.2.6.3. Ghi chú. 16
    1.2.7. Kỹ thuật collaborative filtering. 17
    1.2.7.1. Giới thiệu. 17
    1.2.7.2. Ưu – khuyết điểm 17
    1.2.7.3. Ghi chú. 18
    1.3. Bảng thống kê các phần mềm chống thư rác dựa vào các kỹ thuật chống thư rác 18
    1.3.1. Các phần mềm chống thư rác có bản quyền. 18
    1.3.2. Phần mềm chống thư rác mã nguồn mở. 18
    1.4. Phân tích và định hướng phát triển ứng dụng thử nghiệm 19
    1.5. Giới hạn vấn đề hệ thống thực nghiệm của luận văn. 19
    Chương 2. Phát triển kỹ thuật phát hiện thư rác dựa trên thống kê và so khớp 21
    2.1. Kỹ thuật thống kê trong hệ thống. 21
    2.1.1. Tổng quan về phương pháp lọc thống kê. 21
    2.1.2. Mô hình bộ lọc thống kê. 22
    2.1.3. Tập dữ liệu lịch sử (Historical dataset). 23
    2.1.4. Bộ tách từ (Tokenizer). 24
    2.1.5. Máy phân tích kết quả (Analysis engine). 25
    2.1.6. Cơ sở toán học. 26
    2.1.6.1. Công thức tính xác suất của một từ (token) – công thức Graham 26
    2.1.6.2. Công thức chọn các token quan trọng nhất (interesting tokens). 26
    2.1.6.3. Công thức tính xác suất của một thông điệp. 27
    2.1.7. Đánh giá. 27
    2.1.8. Cải tiến. 28
    2.1.9. Mô hình huấn luyện. 29
    2.1.10. Kiểm tra độ chính xác của bộ lọc thư rác. 30
    2.1.11. Thống kê thực nghiệm 31
    2.1.11.1. Thống kê độ chính xác của bộ lọc với tập dữ liệu lịch sử khác nhau. 31
    2.1.11.2. Thống kê mức độ chính xác bộ lọc thư rác với cùng tập dữ liệu lịch sử 32
    2.2. Kỹ thuật so khớp trong hệ thống. 33
    2.2.1. Độ tương tự giữa hai chuỗi 34
    2.2.1.1. Đặt vấn đề. 34
    2.2.1.2. Phát biểu bài toán và ý tưởng giải quyết 35
    2.2.1.3. Thuật toán đo độ tương tự gốc. 37
    2.2.2. Cải tiến thuật toán đo độ tương tự gốc. 38
    2.2.2.1. Ý tưởng. 38
    2.2.2.2. Thuật toán đo độ tương tự cải tiến. 38
    2.2.3. Thực nghiệm so sánh độ tương tự của thuật toán gốc và cải tiến. 39
    2.2.3.1. Thực nghiệm trên câu. 39
    2.2.3.2. Thực nghiệm trên văn bản. 41
    2.2.4. Thực nghiệm minh họa kỹ thuật so khớp không phụ thuộc độ dài văn bản 44
    2.2.4.1. Mô tả thực nghiệm 44
    2.2.4.2. Thống kê. 44
    2.2.5. Cải tiến để kết hợp với kỹ thuật thống kê. 45
    2.2.5.1. Xác định tỉ số độ dài nội dung hai thư cần so khớp. 46
    2.2.5.2. Xác định ngưỡng độ tương tự. 47
    2.2.6. Kết luận. 48
    Chương 3. Hệ thống thử nghiệm 50
    3.1. Mô hình toàn bộ hệ thống. 50
    3.2. Mô tả tính cá nhân hóa của hệ thống. 52
    3.3. Mô tả cơ sở dữ liệu của hệ thống. 54
    3.3.1. Cơ sở dữ liệu của kỹ thuật thống kê. 54
    3.3.1.1. Mô tả chi tiết các bảng. 55
    3.3.2. Cơ sở dữ liệu kỹ thuật so khớp. 56
    3.4. Mô tả sơ đồ lớp ở mức phân tích. 57
    3.4.1. Chương trình VietAntiSpam 57
    3.4.1.1. Sơ đồ. 57
    3.4.1.2. Danh sách các lớp đối tượng. 58
    3.4.1.3. Chi tiết các lớp đối tượng. 59
    3.4.2. Chương trình VASBroker. 66
    3.4.2.1. Sơ đồ. 66
    3.4.2.2. Danh sách các lớp đối tượng. 66
    3.4.2.3. Chi tiết các lớp đối tượng. 66
    3.4.3. Chương trình Storage. 67
    3.4.3.1. Sơ đồ. 67
    3.4.3.2. Danh sách các lớp đối tượng. 68
    3.4.3.3. Chi tiết các lớp đối tượng. 68
    3.5. Mô hình kết hợp khi quét thư rác. 69
    3.6. Mô hình kết hợp khi huấn luyện và huấn luyện lại 71
    3.6.1. Huấn luyện. 71
    3.6.2. Huấn luyện lại 72
    Chương 4. Cài đặt và thực nghiệm 74
    4.1. Ngôn ngữ và môi trường phát triển. 74
    4.2. Hệ thống máy thực nghiệm 74
    4.3. Kết quả thực nghiệm 75
    4.3.1. Mô tả thực nghiệm 75
    4.4. So sánh với SpamAssassin. 76
    Chương 5. Tổng kết 78
    5.1. Kết luận. 78
    5.2. Hướng phát triển. 79
    5.3. Lời kết 79
    Phụ lục A: Hướng dẫn cài đặt I
    A.a. Mô hình triển khai thử nghiệm I
    A.b. Chuẩn bị các máy sau. I
    A.c. Cài đặt Mail Server trên Fedora core 12. I
    A.c.(i). Chuẩn bị các gói cài đặt sau. I
    A.c.(ii). Mục đích. II
    A.c.(iii). Cài đặt II
    A.c.(iv). Cấu hình. II
    A.d. Cài đặt máy Storage. V
    A.d.(i). Cài đặt WampServer 2.0i V
    Cài đặt tập tin vas_dataset_wb.sql vào cơ sở dữ liệu. VII
    A.d.(ii). Cài đặt VASStorage. VII
    A.d.(iii). Chạy VASStorage. VIII
    A.e. Cài đặt máy Broker VIII
    A.e.(i). Sửa tập tin phân giải tên miền. VIII
    A.e.(ii). Cài đặt VASBroker vào máy. VIII
    A.e.(iii). Chạy VASBroker. IX
    A.f. Cài đặt các máy Worker IX
    A.f.(i). Sửa tập tin phân giải tên miền. IX
    A.f.(ii). Cài đặt VietAntiSpam vào máy. IX
    A.f.(iii). Chạy VietAntiSpam XI
    Phụ lục B: Hướng dẫn sử dụng. XII
    B.a. Sử dụng hệ thống ở Phụ lục A XII
    B.b. Kiểm tra độ chính xác của bộ lọc với một kho mail cụ thể. XII
    B.c. Cấu hình. XII
    B.c.(i). Chạy chương trình. XIII
    B.d. Sử dụng SpammerSim để gửi mail XIV
    TÀI LIỆU THAM KHẢO I


    Danh sách các bảng biểu
    Bảng 1.1. Các phần mềm chống thư rác có bản quyền[SUP][7][/SUP]. 21
    Bảng 1.2. Các phần mềm chống thư rác mã nguồn mở. 21
    Bảng 2.1. Bảng các câu so sánh cho hành động “đảo” trong P. 47
    Bảng 2.2. Bảng so sánh độ tương tự của thuật toán gốc và cải tiến từ hành động “đảo” trong P 47
    Bảng 2.3. Bảng các câu so sánh cho hành động “xóa” trong P. 48
    Bảng 2.4. Bảng so sánh độ tương tự của thuật toán gốc và cải tiến từ hành động “xóa” trong P 48
    Bảng 2.5. Bảng các câu so sánh cho thực nghiệm trên văn bản. 50
    Bảng 2.6. Bảng so sánh độ tương tự của thuật toán gốc và cải tiến từ hành động cho thực nghiệm trên văn bản 51
    Bảng 2.7. Bảng minh họa kỹ thuật so khớp không phụ thuộc độ dài văn bản. 53
    Bảng 2.8. Thử nghiệm xác định tỉ số độ dài nội dung hai thư cần so khớp. 55
    Bảng 2.9. Bảng kết quả thử nghiệm ngưỡng độ tương tự. 57
    Bảng 3.1. Danh sách các trường trong bảng vas_users. 64
    Bảng 3.2. Danh sách các trường trong bảng vas_preferences. 64
    Bảng 3.3. Danh sách các trường trong bảng vas_token_data. 65
    Bảng 3.4. Danh sách các trường trong bảng vas_stats. 65
    Bảng 3.5. Danh sách các lớp đối tượng của VietAntiSpam 68
    Bảng 3.6. Chi tiết lớp VASDaemon của VietAntiSpam 69
    Bảng 3.7. Chi tiết lớp VASTokenizer của VietAntiSpam 69
    Bảng 3.8. Chi tiết lớp VASEngine của VietAntiSpam 69
    Bảng 3.9. Chi tiết lớp VASTraining của VietAntiSpam 69
    Bảng 3.10. Chi tiết lớp VASContext của VietAntiSpam 70
    Bảng 3.11. Chi tiết lớp VASMessage của VietAntiSpam 70
    Bảng 3.12. Chi tiết lớp VASUser của VietAntiSpam 71
    Bảng 3.13. Chi tiết lớp VASConfig của VietAntiSpam 71
    Bảng 3.14. Chi tiết lớp VASStats của VietAntiSpam 72
    Bảng 3.15. Chi tiết lớp VASPreferences của VietAntiSpam 72
    Bảng 3.16. Chi tiết lớp VASToken của VietAntiSpam 73
    Bảng 3.17. Chi tiết lớp VASTokenData của VietAntiSpam 73
    Bảng 3.18. Chi tiết lớp VASTextExtractor của VietAntiSpam 73
    Bảng 3.19. Chi tiết lớp VASOfficeExtractor của VietAntiSpam 74
    Bảng 3.20. Chi tiết lớp VASPDFTextExtractor của VietAntiSpam 74
    Bảng 3.21. Chi tiết lớp VASTXTTextExtractor của VietAntiSpam 74
    Bảng 3.22. Chi tiết lớp VASMatching của VietAntiSpam 74
    Bảng 3.23. Chi tiết lớp VASReceiver của VietAntiSpam 75
    Bảng 3.24. Chi tiết lớp VASSender của VietAntiSpam 75
    Bảng 3.25. Các lớp của chương trình VASBroker. 76
    Bảng 3.26. Chi tiết lớp SMTPRelay của VASBroker. 76
    Bảng 3.27. Chi tiết lớp WorkerChoice của VASBroker. 76
    Bảng 3.28. Chi tiết lớp RBWorkerChoice của VASBroker. 77
    Bảng 3.29. Chi tiết lớp QSWorkerChoice của VASBroker. 77
    Bảng 3.30. Các lớp của chương trình Storage. 77
    Bảng 3.31. Chi tiết lớp Daemon của Storage. 78
    Bảng 3.32. Chi tiết lớp Receiver của Storage. 78
    Bảng 3.33. Chi tiết lớp Sender của Storage. 78
    Bảng 3.34. Thực nghiệm tỉ lệ false positive cao hơn tỉ lệ false negative. 80
    Bảng 4.1. Bảng cấu hình các máy dùng thực nghiệm 85
    Bảng 4.2. Bảng kết quả các lần thực nghiệm 86
    Bảng 4.3. Bảng so sánh độ chính xác của SpamAssassin và VietAntiSpam 87


    Danh sách các hình
    Hình 1.1. So sánh thư rác với các thư điện tử khác [SUP][3][/SUP]. 3
    Hình 2.1. Mô hình bộ lọc thống kê[SUP][4][/SUP] 25
    Hình 2.2. Biểu đồ độ chính xác với các mức huấn luyện ban đầu khác nhau. 36
    Hình 2.3. Biểu đồ độ chính xác với số lượng thư nhiều. 38
    Hình 2.4. Ví dụ với các khối độ dài t = 3 [SUP][1][/SUP] 41
    Hình 2.5. Minh họa thuật toán gốc [SUP][1][/SUP] 42
    Hình 3.1. Mô hình toàn bộ hệ thống thử nghiệm 58
    Hình 3.2. Mô hình mô tả tính cá nhân hóa. 61
    Hình 3.3. Mô hình cơ sở dữ liệu. 64
    Hình 3.4. Sơ đồ cơ sở dữ liệu kỹ thuật so khớp. 66
    Hình 3.5. Sơ đồ lớp VietAntiSpam 68
    Hình 3.6. Sơ đồ lớp chương trình VASBroker. 75
    Hình 3.7. Sơ đồ lớp chương trình VASStorage. 77
    Hình 3.8. Mô hình kết hợp khi quét thư rác. 79
    Hình 3.9. Mô hình kết hợp khi huấn luyện. 81
    Hình 3.10. Mô hình kết hợp khi huấn luyện lại 82
    Hình 4.1. Mô hình các máy trong quá trình thực nghiệm 85

    LỜI NÓI ĐẦ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ư rác là một trong những thách thức lớn nhất hiện nay mà khách hàng và các nhà cung cấp dịch vụ phải đối phó. Thư rác đã trở thành một hình thức quảng cáo chuyên nghiệp, phát tán virus, ăn cắp thông tin, với nhiều thủ đoạn và mánh khóe cực kỳ tinh vi. Người dùng phải mất khá nhiều thời gian để xóa những thư “không mời mà đến”, nếu vô ý có thể bị nhiễm virus, trojan, spyware và nặng nề hơn là mất những thông tin như thẻ tín dụng, tài khoản ngân hàng qua các thư rác dạng phishing.
    Thư rác không chỉ gây khó chịu và gây phiền nhiễu cho người dùng, nó còn gây ra mất mát năng suất, giảm băng thông khiến cho các công ty, tổ chức tổn thất rất nhiều tiền. Vì vậy, các công ty, tổ chức có sử dụng hệ thống thư điện tử riêng phải có biện pháp để ngăn chặn thư rác xâm nhập vào hệ thống của họ. Mặc dù có thể sẽ không ngăn chặn được tất cả thư rác nhưng chỉ cần ngăn chặn phần lớn nào đó cũng sẽ giúp giảm tác hại của thư rác.
    Tất nhiên, những kẻ gửi thư rác sẽ liên tục cải thiện chiến thuật của chúng, do đó, điều quan trọng là biện pháp ngăn chặn thư rác phải “học” cách thức thay đổi của thư rác theo thời gian để giúp việc ngăn chặn có hiệu quả. Và việc ngăn chặn thư rác phải được thực hiện nhanh nhất có thể để không làm ảnh hưởng đến hệ thống, công việc khác.
    Xuất phát từ các lý do trên, đề tài luận văn “XÂY DỰNG HỆ THỐNG QUÉT THƯ RÁC TRÊN MÔI TRƯỜNG PHÂN TÁN” được thực hiện với mục đích:
    · Tìm hiểu thư rác và các kỹ thuật ngăn chặn thư rác.
    · Phát triển kỹ thuật quét thư rác thống kê và so khớp.
    · Đề xuất mô hình và cài đặt thử nghiệm hệ thống quét thư rác trên môi trường phân tán.
    Luận văn đã đạt được một số kết quả như độ chính xác phân loại thư rác trong thử nghiệm xấp xỉ 94%, hỗ trợ quét các tập tin đính kèm (txt,word, excel, powerpoint, pdf) và đưa hệ thống quét thư rác lên môi trường phân tán.
    Nội dung chính của luận văn được chia thành 5 chương như sau:
    Chương 1: Tổng quan về thư rác và các kỹ thuật phát hiện thư rác
    Giới thiệu khái quát về lịch sử, đặc điểm của thư rác và các kỹ thuật phát hiện thư rác đã có.
    Chương 2: Phát triển kỹ thuật quét thư rác dựa trên thống kê và so khớp
    Mô tả cơ sở lý thuyết của hai kỹ thuật áp dụng trong hệ thống thực nghiệm là thống kê và so khớp, các thực nghiệm minh họa độ chính xác của từng kỹ thuật.
    Chương 3: Hệ thống thử nghiệm
    Phân tích, thiết kế hệ thống thử nghiệm cho luận văn.
    Chương 4: Cài đặt và thực nghiệm
    Tiến hành cài đặt và thực nghiệm hệ thống thử nghiệm đã đề ra.
    Chương 5: Tổng kết
    Tóm tắt lại các vấn đề đã nghiên cứu và đề ra hướng phát triển trong tương lai.
    Chương 1. Tổng quan về thư rác và các kỹ thuật phát hiện thư rác1.1. Giới thiệu về thư rác1.1.1. Lịch sửCó thể chia lịch sử của thư rác thành 3 giai đoạn sau:
    1.1.1.1. Giai đoạn thứ nhất – những năm đầu của thư rácNhiều ý kiến cho rằng thư rác đầu tiên được phát tán trên mạng diện rộng là vào năm 1978, đó là một quảng cáo từ Digital Equipment Corporation (DEC) [SUP][8][/SUP]. Do dịch vụ thư điện tử lúc này chưa tiên tiến nên người phát tán thư rác (spammer) này phải đánh thủ công các địa chỉ thư điện tử muốn gửi và chỉ có khoảng 320 trong tổng số các địa chỉ thư điện tử mà spammer muốn gửi nhận được thư rác này trong lần phát tán đầu tiên. Vào 1988 xuất hiện kiểu thư rác khác là thư rác lừa đảo (như lừa đảo làm việc từ thiện, lừa đảo về kiếm tiền).
    1.1.1.2. Giai đoạn thứ hai – thư rác được gửi thông qua phần mềmĐầu thập niên 1990, với sự phát triển của Internet mang đến vấn nạn là số lượng thư rác tăng lên nhanh chóng. Lúc này các spammer dùng các phần mềm để tự động việc gửi thư điện tử đến một danh sách các địa chỉ. Ví dụ về thư rác phát tán qua các phần mềm tự động là thư rác Jesus và thư rác Cantel và Siegel.
    Vào 1995 Jeff Slaton – tự nhận mình là “vua thư rác” , ông là một trong những người đầu tiên kiếm lợi nhuận từ các thư rác mà ông gửi đi, ông còn ép buộc các nạn nhân của mình trả phí nếu không muốn nhận thư rác. Việc làm của ông tạo ra ý tưởng cho các công ty thương mại là thuê những người như Jeff Slaton để phát tán thư điện tử với mục đích là quảng cáo giúp họ.
    1.1.1.3. Giai đoạn thứ ba – phần mềm chống thư rác chống lại các phần mềm gửi thư rácVào 1996 xuất hiện các phần mềm chống thư rác đầu tiên như Spamblock, Internet Death Penalty, tuy nhiên vẫn không làm giảm sự phát triển của thư rác. Các địa chỉ thư điện tử của người dung được rao bán cho các công ty, tổ chức muốn thực hiện quảng cáo trên thư điện tử. Và từ 1997 đến nay sự phát triển của thư rác đã vượt quá sự kiểm soát, một thống kê cho thấy 97% tổng số thư điện tử được gửi trên mạng là các thư không mong muốn nhận từ người dùng [SUP][9][/SUP].
    1.1.2. Định nghĩaCó nhiều tranh cãi về việc đâu là định nghĩa chính xác của thư rác (spam email), bởi vì thư rác mang tính cá nhân hóa nên khó mà nói lên được hết ý nghĩa của thư rác. Nhiều ý kiến cho rằng thư rác là những “thư điện tử (email) không mong muốn”. Định nghĩa này cũng không thực sự chính xác, như một nhân viên nhận những thư điện tử về công việc từ sếp của họ, đây là những thư điện tử người nhân viên không mong muốn nhưng chúng không phải là thư rác. Lại có ý kiến khác cho rằng thư rác là những “thư điện tử thương mại không được yêu cầu từ phía người nhận” - những thư này bao gồm các thư điện tử quảng cáo về các sản phẩm và thư điện tử lừa gạt. Nhưng định nghĩa này cũng không thực sự chính xác, nó làm mọi người nghĩ rằng thư rác giống như là thư đáng bỏ đi (junk mail).
    Sau đó có ý kiến cho rằng thư rác là “số lượng lớn thư điện tử không yêu cầu” và trong số đó các thư điện tử quảng cáo, thương mại chiếm đa số, đây có lẽ là định nghĩa gần đúng với ý nghĩa của thư rác nhất [SUP][4][/SUP].
    Hình vẽ sau sẽ thể hiện rõ định nghĩa của thư rác:
     

    Các file đính kèm:

Đang tải...