Nghiên cứu một số kỹ thuật phát hiện trang web giả mạo và ứng dụng

81 10 0
Nghiên cứu một số kỹ thuật phát hiện trang web giả mạo và ứng dụng

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN THỊ HUYÊN NGHIÊN CỨU MỘT SỐ KỸ THUẬT PHÁT HIỆN TRANG WEB GIẢ MẠO VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN - 2016 ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN THỊ HUYÊN NGHIÊN CỨU MỘT SỐ KỸ THUẬT PHÁT HIỆN TRANG WEB GIẢ MẠO VÀ ỨNG DỤNG Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Ngƣời hƣớng dẫn khoa học: TS NGUYỄN NGỌC CƢƠNG THÁI NGUYÊN - 2016 i LỜI CAM ĐOAN Tôi xin cam đoan luận văn tự thân tơi tìm hiểu, nghiên cứu dƣới hƣớng dẫn TS Nguyễn Ngọc Cƣơng Các chƣơng trình thực nghiệm thân tơi lập trình, kết hoàn toàn trung thực Các tài liệu tham khảo đƣợc trích dẫn thích đầy đủ TÁC GIẢ LUẬN VĂN Nguyễn Thị Huyên ii LỜI CẢM ƠN Tôi xin bày tỏ lời cảm ơn chân thành tới tập thể thầy cô giáo Viện công nghệ thông tin – Viện Hàn lâm Khoa học Công nghệ Việt Nam, thầy cô giáo Trƣờng Đại học Công nghệ thông tin truyền thông - Đại học Thái Nguyên giảng dạy cho suốt trình học tập chƣơng trình cao học trƣờng Đặc biệt tơi xin bày tỏ lịng biết ơn sâu sắc tới thầy giáo TS Nguyễn Ngọc Cƣơng quan tâm, định hƣớng đƣa góp ý, gợi ý, chỉnh sửa quý báu cho trình làm luận văn tốt nghiệp Cũng nhƣ bạn bè đồng nghiệp, gia đình ngƣời thân quan tâm, giúp đỡ chia sẻ với suốt q trình làm luận văn tốt nghiệp Dù có nhiều cố gắng nhƣng chắn không tránh khỏi thiếu sót mong nhận đƣợc đóng góp ý kiến thầy, bạn để luận văn đƣợc hồn thiện Tơi xin chân thành cảm ơn! Thái Nguyên, tháng 05 năm 2016 Nguyễn Thị Huyên iii MỤC LỤC Trang MỞ ĐẦU Chƣơng TỔNG QUAN VỀ AN NINH MẠNG VÀ BÀI TOÁN GIẢ MẠO WEBSITE 1.1 Tổng quan an ninh mạng 1.1.1 Giới thiệu an ninh mạng 1.1.2 Nguy ảnh hƣởng tới an toàn mạng 1.1.3 Các khái niệm 1.1.4 Các loại công mạng 1.1.5 Các phƣơng thức công 1.2 Dịch vụ website 17 1.2.1 Giới thiệu Website 17 1.2.2 Các hình thức giả mạo web 18 1.2.3 Các kiểu lừa đảo Phishing 20 1.3 Bài toán giả mạo website 23 1.3.1 Giả mạo 23 1.3.2 Một số kỹ thuật 23 Chƣơng CÁC KỸ THUẬT PHÁT HIỆN WEBSITE GIẢ MẠO 26 2.1.Thuật toán TF - IDF (Term Frequency/Inverse Document Frequency) .26 2.1.1 Phƣơng pháp dựa tần số từ khóa (TF – Term Frequency) 26 2.1.2 Phƣơng pháp dựa nghịch đảo tần số văn (IDF – Inverse Document Frequency) 26 2.1.3 Phƣơng pháp TF × IDF 27 2.2 Thuật toán sử dụng phƣơng pháp thống kê (Bayesian) 28 2.2.1 Định lý Naïve Bayes 28 2.2.2 Ví dụ 30 2.2.3 Thuật tốn Nạve Bayes 31 2.3 Thuật toán so khớp 32 2.3.1 Thuật toán so khớp chuỗi sơ khai 33 2.3.2 Thuật toán Rabin – Karp 35 2.3.3.Thuật toán Boyer Moore Horspool 36 2.3.4 DOM Tree 38 2.4 Thuật toán dựa tƣơng đồng hình ảnh trang web 38 2.4.1 Thuật Toán K-Means 39 iv 2.4.2 Thuật toán so khớp đồ thị 43 Chƣơng XÂY DỰNG CHƢƠNG TRÌNH PHÁT HIỆN WEBSITE GIẢ MẠO VÀ ỨNG DỤNG 46 3.1 Ứng dụng thuật toán Naive Bayes phát website giả mạo 46 3.2 Các luật xác định giả mạo áp dụng cho thuật toán 47 3.2.1 Phát giả mạo dựa địa 47 3.2.2 Phát giả mạo dựa đặc tính bất thƣờng 52 3.2.3 Phát giả mạo dựa tính dùng HTML JavaScript 53 3.2.4 Phát giả mạo dựa tên miền 55 3.3 Thiết kế chƣơng trình 55 3.4 Phân tích thuật toán 56 3.4.1 Ý tƣởng 56 3.4.2 Cài đặt 56 3.5 Giao diện chƣơng trình kết 59 KẾT LUẬN 64 Hƣớng phát triển 64 TÀI LIỆU THAM KHẢO 65 PHỤ LỤC 67 Phần mềm WEKA 67 v DANH SÁCH KÍ HIỆU, TỪ VIẾT TĂT Viết tắt Viết đầy đủ |X| Lực lƣợng tập X APWG Anti Phishing Working Group ARP Address Resolution Protocol CSDL Cơ sở liệu Phishing Giả mạo DHCP Dynamic Host Configuration Protocol DNS Domain Name System DOM Document Object Model TF-IDF Term Frequency – Inverse Document Frequency WEKA Waikato Environment for Knowledge Analysis NB Naïve Bayes MAC Media Access Control LAN Local Area Network DoS Dinal of Services TCP/IP Transmission Control Protocol / Internet Protocol SMTP Simple_Mail_Transfer_Protocol URL Uniform Resource Locator XML Extensible Markup Language vi DANH MỤC CÁC BẢNG VÀ HÌNH VẼ Hình 1.1 Báo cáo tội phạm Internet Hình 1.2 Số lƣợng liệu bị đánh cắp Hình 1.3 Tỷ lệ lỗ hổng trang web Hình 1.4 Mơ tả hoạt động bảng CAM Hình 1.5 Quá trình cấp phát ip từ máy chủ DHCP 10 Hình 1.6 Minh họa DHCP Rouge 11 Hình 1.7 Minh họa việc chuyển hƣớng ngƣời dùng 12 Hình 1.8 Minh họa việc cấp phát IP giả 13 Hình 1.9 Minh họa cách thức giả mạo ARP 14 Hình 1.10 Minh họa trình giả mạo MAC 15 Hình 1.11 Minh họa Fake DNS 16 Hình 2.1 Thuật tốn K-means dạng sơ đồ khối 39 Hình 2.2 Ví dụ đồ thị 43 Hình 3.1 Giao diện chƣơng trình 59 Hình 3.2 Kết chƣơng trình 60 Hình 3.3 Kiểm tra URL 63 Hình Giao diện phần mềm Weka 67 Hình Giao diện Weka Explorer 68 Hình Giao diện Weka Explorer sau chọn CSDL Websites Phishing 68 Hình Phân loại liệu 69 MỞ ĐẦU Đặt vấn đề Hiện nay, công nghệ thông tin hầu nhƣ đƣợc áp dụng rộng rãi toàn cầu, nƣớc dần chuyển từ từ tiếp xúc với cơng nghệ thấy đƣợc lợi ích to lớn việc áp dụng công nghệ thông tin vào lĩnh vực nhƣ kinh doanh, quản lý, mua sắm, nói chung tất nhu cầu ngƣời Một dịch vụ công nghệ hàng đầu đƣợc sử dụng phổ biến dịch vụ WEB Với công nghệ WEB đáp ứng nhu cầu ngƣời Giả mạo (phishing biến thể từ fishing nghĩa câu cá phreaking nghĩa nhử ngƣời dùng tiết lộ bí mật), lĩnh vực bảo mật máy tính hành vi giả mạo ác ý nhằm lấy đƣợc thông tin nhạy cảm nhƣ tên ngƣời dùng, mật chi tiết thẻ tín dụng cách giả dạng thành chủ thể tin cậy giao dịch điện tử Vấn đề giả mạo (phishing hay fake) nói chung giả mạo web nói riêng loại tội phạm kỹ thuật xã hội có xu hƣớng gia tăng mạng Giả mạo đƣợc báo cáo vấn nạn web lần vào năm 2001 hiệp hội bảo vệ khách hàng, hiệp hội thƣơng mại liên bang Mỹ ngày nhóm làm việc chống giả mạo APWG (Anti Phishing Working Group) đƣa thông số trang web giả tăng khoảng 50% năm Hầu hết công lừa đảo đại xảy cách thu hút ngƣời sử dụng truy cập vào trang web độc hại trông hoạt động giống nhƣ gốc Khi đó, ngƣời sử dụng bị thuyết phục trang xác thực cung cấp thơng tin cá nhân bao gồm thông tin xác thực thông tin ngân hàng Những thông tin thƣờng đƣợc kẻ sử dụng để thực số hình thức hành vi trộm cắp hay gian lận thực tế Do vậy, việc nghiên cứu phát trang web giả mạo nhu cầu cấp thiết Phát trang web giả mạo việc để ngăn chặn xóa bỏ trang web giả mạo Hiện có nhiều cách tiếp cận khác để phát trang web giả mạo Một đặc tính bật trang web giả mạo phải tƣơng tự nhƣ trang web gốc Điều có nghĩa hai trang web gốc web giả mạo có cấu trúc giống đến mức tốt để ngƣời dùng có đủ tự tin tiết lộ thông tin nhạy cảm Hầu hết trang lừa đảo làm tốt việc tạo giao diện hợp lệ cách chép bố trí trang, font, kiểu, logo chí thơng tin bảo mật trang hợp lệ Có nhiều kỹ thuật giải pháp để phát trang web giả mạo: Hướng mở rộng giải pháp từ thư rác: Thuật toán TF-IDF (Term Frequency/Inverse Document Frequency) sử dụng từ khóa để xác định trang cụ thể Kỹ thuật thƣờng đƣợc dùng khai thác văn với máy tìm kiếm để tìm trang liên quan Thuật toán TFIDF xác định từ khóa trang web, từ khóa đƣợc đƣa vào máy tìm kiếm chẳng hạn Google lấy nhóm URL Nếu trang web bị nghi ngờ nằm nhóm trang đƣợc coi hợp lệ, ngƣợc lại bị cho lừa đảo hầu hết trang lừa đảo khơng có thứ hạng cao kết máy tìm kiếm Thuật tốn đƣợc ứng dụng giải pháp Cantina đƣợc phát triển nhà nghiên cứu Đại học Carnegie Mellon với việc sử dụng năm từ khóa có tần suất xuất cao trang Tuy nhiên giải pháp phù hợp có hai giả thiết sau: - Thứ nhất, trang lừa đảo phải nhìn hoạt động giống với trang hợp lệ cho kết từ khóa đƣợc xác định TF-IDF giống - Thứ hai, máy tìm kiếm phải cho kết xếp hạng trang web hợp lệ xác cao trang lừa đảo Hướng sử dụng giải pháp Bayesian: Thuật toán lọc Bayesian vốn đƣợc phát triển để phát thƣ rác nhƣng nhà nghiên cứu Đại học Iowa sử dụng thuật toán để phát triển thành công cụ chống lừa đảo đƣợc đặt tên B-APT Lợi thuật tốn có khả phát đƣợc đối tƣợng chƣa nhìn thấy trƣớc Việc sử dụng phép lọc Bayesian giải pháp hứa hẹn cho việc phát lừa đảo ngày 58 thể tính nhanh xác suất không xuất theo công thức () ( ̅)  Khởi tạo mảng chiều C, chiều có kích thƣớc m (số phân lớp), chiều có kích thƣớc N (số đặc trƣng), chiều có kích (d k) để lƣu giá trị ( | )  Duyệt qua văn tập liệu, tiến hành thống kê số cần thiết để tính xác suất ( | ) theo công thức lƣu vào mảng C 3.4.2.2 Phân lớp Đầu vào:   Vector đặc trƣng trang web cần phân lớp Các giá trị xác suất Đầu ra:  ( ) ( | ) Nhãn/lớp trang web cần phân loại Cơng thức tính xác suất thuộc phân lớp i biết trƣớc mẫu X (|) ()∏( |) Dựa vào vector đặc trƣng trang web cần phân lớp, áp dụng cơng thức tính xác suất thuộc phân lớp cho trang web, chọn lớp có xác suất cao 3.4.2.3 Ví dụ Websites Web1 Web Web Web Web Web ( ( ̅ ̅| ( ( ̅| ( ( ̅ ̅| ( ( ̅| Webnew = (1,0) ( ( Vậy trang web thuộc lớp Phishing 3.5 Giao diện chƣơng trình kết Hình 3.1 Giao diện chƣơng trình 60 Chức nút lệnh giao diện chƣơng trình: Nút Random Split: Thực việc đọc 11055 trang web CSDL Websites Phishing chia chúng thành 10 phần cách ngẫu nhiên - Nút “Training”: Thực đọc k phần 10 phần (k = 7, 8, 9) trang web để huấn luyện theo thuật tốn NạveBayes - “Nút “Testing”: Thực việc kiểm thử 11055 trang web có CSDL đƣa kết luận cho trang web Sau tính tốn hiệu chƣơng trình dựa độ đo DR, FPR Acc - Nút “Check URL”: Thực trình đọc URL trang web đƣợc nhập từ textbox URL kiểm tra xem trang web vừa nhận có phải trang web phishing hay khơng Nút “Exit”: Thốt khỏi chƣơng trình Hình dƣới kết thử nghiệm hàm, luật,… WEKA chƣơng trình sử dụng thuật tốn NạveBayes sở liệu Websites Phishing Hình 3.2 Kết chƣơng trình 61  Với trình huấn luyện sử dụng 10 tập kết chƣơng trình nhƣ sau:  Trong 4898 trang web hợp pháp chƣơng trình cho kết quả: Số lƣợng trang web hợp pháp phân loại TN = 4571 Số lƣợng trang web hợp pháp phân loại sai thành trang web lừa đảo FP = 327  Trong 6157 trang web lừa đảo chƣơng trình cho kết quả: Số lƣợng trang web lừa đảo phân loại TP = 5747 Số lƣợng trang web lừa đảo phân loại sai thành trang web hợp pháp FN = 410  Và kết độ đo (đơn vị %):  Với trình huấn luyện sử dụng 10 tập kết chƣơng trình nhƣ sau:  Trong 4898 trang web hợp pháp chƣơng trình cho kết quả: Số lƣợng trang web hợp pháp phân loại TN = 4504 Số lƣợng trang web hợp pháp phân loại sai thành trang web lừa đảo FP = 394  Trong 6157 trang web lừa đảo chƣơng trình cho kết quả: Số lƣợng trang web lừa đảo phân loại TP = 5630 Số lƣợng trang web lừa đảo phân loại sai thành trang web hợp pháp FN = 527  Và kết độ đo (đơn vị %): DR = 91.44% FPR = 8.04% Acc = 91.67% Với kết trên, ta thấy tập liệu huấn luyện đa dạng tỉ lệ phát trang web giả mạo lớn 62 Kết đƣợc so sánh với số phƣơng pháp phân loại đƣợc tích hợp WEKA với CSDL WebPhishing phƣơng pháp tenford cross validation nhƣ sau: Phƣơng pháp My Result NaiveBayes Simple Bayes.WAODE Function.Logistic Function.RBFNetwork Function.Spegasos Lazy.IB1 misc.HyperPipes Rules.ConjunctiveRule Rules.Ridor Tree.BFTree Tree.RandomForest Tree.RandomTree Xét tỉ lệ phát độ xác tổng thể phƣơng pháp làm tác giả đứng vị trí lần lƣợt thứ 10 thứ tổng số 13 phƣơng pháp Tuy nhiên tỉ lệ phát sai (FPR) chƣơng trình tác giả đứng vị trí thứ Về thời gian chạy chƣơng trình: Thời gian chạy chƣơng trình phụ thuộc vào kích thƣớc khối liệu đầu vào, để phân loại tập 11055 website chƣơng trình chạy trung bình khoảng 50 giây Ngồi ra, chƣơng trình cịn có chức kiểm tra trang web thực tế đƣợc nhập vào textbox kết luận trang web trang web thƣờng hay trang web giả mạo 63 Hình 3.3 Kiểm tra URL Hình kết trang web giả mạo với URL đƣợc lấy từ trang web PhishTank (https://www.phishtank.com) Kết chƣơng trình đƣợc trả dƣới dạng thơng báo trang web giả mạo thƣờng Đồng thời, chƣơng trình tải giao diện trang web lên hình ngƣời dùng tiện theo dõi đánh giá 64 KẾT LUẬN Luận văn đạt đƣợc kết sau đây: - Tìm hiểu tổng quan giả mạo web, phƣơng pháp phát website phishing sử dụng - Tìm hiểu thuật tốn Nạve Bayes, cài đặt ứng dụng vào trình huấn luyện phát trang web giả mạo Xây dựng chƣơng trình mơ q trình huấn luyện phát website phishing - Thử nghiệm với liệu chuẩn WebsitePhishing so sánh kết với số phƣơng pháp học máy khác WEKA Hƣớng phát triển - Cần nghiên cứu khâu tiền xử lý, xây dựng mẫu huấn luyện tiêu chuẩn nhƣ phƣơng pháp cải tiến để cải thiện kết - Nâng cao khả phát cách kết hợp nhiều phƣơng pháp lại với Xây dựng hệ thống phát website phishing ứng dụng vào thực tế 65 TÀI LIỆU THAM KHẢO [1] Lê Đắc Nhƣờng, Nguyễn Gia Nhƣ, Lê Đăng Nguyên, Lê Trọng Vĩnh Song song hóa thuật tốn so khớp mẫu QuickSearch NIDS sử dụng mơ hình chia sẻ nhớ OpenMP Pthreads Tạp chí Đại học Quốc gia Hà Nội, tháng 12/2012 Vol 28(4), Tr 255 – 263 [2] Nguyễn Ngọc Cƣơng, Phạm Ngọc Lãng (2014), Mạng truyền liệu, NXB Thông Tin Truyền Thông [3] Le Dang Nguyen, Dac Nhuong Le, Le Trong Vinh, Detecting phishing web Pages based on DOM-Tree Structure and Graph Matching Algorithm- The Fifth International Symposium on Information and Communication Technologies, SoICT 2014, December 4-5, 2014, Hanoi, Vietnam [4] Yue Zhang, Jason Hong and Lorrie cranor “CANTINA: A Content – Based Approach to Detecting Phishing Web Sites”, In the Proceedings of the 16th International Conference on World Wide We, p639-648, 2007 [5] Likarish, Eunjin Jung, Dunbar D., and Hansen T.E., “B-APT: Bayesian Anti-Phishing Toolbar”, In the Proceeding of 16th International Conference on Communication 2008 (ICC’08), pp 17451749, 2008 [6] Vinnarasi Tharania I, R Sangareswari, and M Saleembabu, “Web Phishing Detection In Machine Learning Using Heuristic Image Based Method”, International Journal of Engineering Research and Applications, Vol.2, Issue 5, pp.1589-1593, 2012 [7] to Kranti W., Supriya A And N V Puri, “ An Efficient Approach Detecting Phishing A Web Using K-Means and Naive- Bayes 66 Algoriths”, International Journal of Research in Advent Technology, Vol.2, No.3, pp.106-111, 2014 [8] Jangjong Fan, Kehyih Su, “An Efficient Algorith for Matching Multiple Patterns”, IEEE Transactions on Knowledge and Data Engineering, vol 5, no 2, pp 339-351, 1993 67 PHỤ LỤC Phần mềm WEKA WEKA (Waikato Environment for Knowledge Analysis) phần mềm khai thác liệu thuộc dự án trƣờng đại học Waikato, New Zealand lần năm 1993 Mục tiêu để xây dựng công cụ đại nhằm phát triển kĩ thuật máy học áp dụng chúng vào toán khai thác liệu thực tế, sử dụng giảng thuật giải Machine Learning nhiều trƣờng đại học lớn giới WEKA đƣợc viết ngôn ngữ Java JDK, cấu trúc gồm 600 lớp tổ chức thành 10 packages Với chức chính: - Khảo sát liệu: Tiền xử lí liệu, phân lớp, gom nhóm liệu, khai thác luật kết hợp - Thực nghiệm mô hình: cung cấp phƣơng tiện để kiểm chứng đánh giá mơ hình học - Biểu diễn trực quan liệu nhiều dạng đồ thị… Trong đề tài, chủ yếu sử dụng phần mềm để khảo sát liệu nhằm so sánh với chƣơng trình xây dựng đề tài Giao diện phần mềm WEKA: Hình Giao diện phần mềm Weka Từ giao diện WEKA thực bƣớc: 68 Bƣớc Chọn nút tác vụ Explorer, giao diện Weka Explorer xuất Hình Giao diện Weka Explorer Bƣớc Tại thẻ Preprocess chọn nút Open file… để nạp tệp sở liệu Thông thƣờng sở liệu lƣu dạng *.arff *.csv Hình Giao diện Weka Explorer sau chọn CSDL Websites Phishing 69 WEKA thống kê đƣa thuộc tính có sở liệu hiển thị giao diện, hộp Attributes nhấn nút All để chọn tất thuộc tính Bƣớc Chọn thẻ Classify để chọn sử dụng phƣơng pháp phân loại Hình Phân loại liệu Bƣớc Chọn hàm, luật,… phân loại mục Classify nhấn nút Choose Thiết lập số tùy chọn mục Test options, ta chọn sử dụng phƣơng pháp Cross-validation Bƣớc Nhấn nút Start để thực hiện, theo dõi kết vùng Classifier output Để tìm hiểu chức khác phần mềm Weka chi tiết cách sử dụng bạn đọc tìm hiểu tại: https://www.cs.waikato.ac.nz/ml/weka/ ... trang web giả mạo Hiện có nhiều cách tiếp cận khác để phát trang web giả mạo 2 Một đặc tính bật trang web giả mạo phải tƣơng tự nhƣ trang web gốc Điều có nghĩa hai trang web gốc web giả mạo có cấu... đồng hình ảnh hai trang web để so sánh thành phần chi tiết chúng để phát trang Web giả mạo Chính học viên lựa chọn đề tài ? ?Nghiên cứu số kỹ thuật phát trang Web giả mạo ứng dụng? ?? cho luận văn... kỹ thuật phát giả mạo web - Xây dựng chƣơng trình thử nghiệm tìm kiếm trang web giả mạo thuật tốn Nạve Bayes Đối tƣợng phạm vi nghiên cứu Bài toán giả mạo web, thuật toán liên quan đến phát trang

Ngày đăng: 08/06/2021, 12:50

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan