Tìm hiểu đánh giá các thuật toán phân lớp phát hiện URL độc hại

27 143 1
Tìm hiểu đánh giá các thuật toán phân lớp phát hiện URL độc hại

Đ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

MỤC LỤC DANH MỤC VIẾT TẮT LỜI NÓI ĐẦU CHƯƠNG 1: Tổng quan học máy: .4 Tổng quan URL Ứng dụng học máy việc phát URL độc hại: Xây dựng sở liệu huấn luyện CHƯƠNG 2: 11 Thuật toán Logistic Regression 12 Thuật tốn Nạve Bayes 14 Thuật toán Decision Tree 17 a) Entropy .17 b) Iterative Dichotomiser (ID3) 20 c) Thuật toán C4.5 .20 Thuật toán Random Forest 22 CHƯƠNG 3: 23 KẾT LUẬN 29 DANH MỤC VIẾT TẮT Từ viết tắt Từ đầy đủ URL Uniform Resource Locator NP Nondeterministic Polynomial Time FTP API IP ID3 GR DT RF File Transfer Protocol Application Programming Interface Internet Protocol Iterative Dichotomiser Gain Ratio Decision Tree Random Forest Nghĩa tường minh Bộ định vị tài nguyên thống Thuật toán bất định thời gian đa thức Giao thức truyền tập tin Giao diện lập trình ứng dụng Giao thức Internet Thuật toán ID3 Tỉ lệ Gain Cây định Rừng ngẫu nhiên LỜI NÓI ĐẦU Ngày song song với bùng nổ mạnh mẽ công nghệ thơng tin phát triển Internet tồn cầu nguy an tồn thơng tin trở nên trầm trọng nguy hiểm hơn, trang web độc hại hiểm họa hàng đầu khả lây lan phát tán hệ thống máy tính thực hành vi công bất hợp pháp Những trang web bao gồm địa URL (Uniform Resource Locator) độc hại ngày phổ biến với biến thể đa dạng, với cách thức che dấu ngày tinh vi Có thể nói phát ngăn chặn trang web độc hại thách thức đặt lĩnh vực An tồn thơng tin Hiện hướng tìm hiểu, nghiên cứu dựa vào mơ hình học máy để phân loại phân tích URL độc hại tỏ phương pháp hiệu cho ngành công nghệ thơng tin an tồn thơng tin nói chung Trong tiểu luận này, em tìm hiểu, trình bày số thuật toán phân lớp sử dụng học máy để đánh giá URL Phần trình bày chia làm chương bản: - Chương 1: Tổng quan học máy, URL ứng dụng học máy việc phát URL độc hại - Chương 2: Các thuật toán học máy đánh giá URL độc hại - Chương 3: Thực nghiệm đánh giá CHƯƠNG 1: TỔNG QUAN VỀ HỌC MÁY, URL VÀ ỨNG DỤNG HỌC MÁY TRONG PHÁT HIỆN URL ĐỘC HẠI Tổng quan học máy: Theo Wikipedia, Học máy (tiếng Anh: machine learning) lĩnh vực trí tuệ nhân tạo liên quan đến việc nghiên cứu xây dựng kĩ thuật cho phép hệ thống "học" tự động từ liệu để giải vấn đề cụ thể Ví dụ máy "học" cách phân loại thư điện tử xem có phải thư rác (spam) hay khơng tự động xếp thư vào thư mục tương ứng Học máy có liên quan lớn đến thống kê, hai lĩnh vực nghiên cứu việc phân tích liệu, khác với thống kê, học máy tập trung vào phức tạp giải thuật việc thực thi tính tốn Nhiều tốn suy luận xếp vào loại tốn NP-khó, phần học máy nghiên cứu phát triển giải thuật suy luận xấp xỉ mà xử lý Các thuật toán học máy thường dùng bao gồm: - Học có giám sát: đó, thuật tốn tạo hàm ánh xạ liệu vào tới kết mong muốn - Học khơng giám sát: mơ hình hóa tập liệu, khơng có sẵn ví dụ gắn nhãn - Học nửa giám sát: kết hợp ví dụ có gắn nhãn khơng gắn nhãn để sinh hàm phân loại thích hợp - Học tăng cường: đó, thuật tốn học sách hành động tùy theo quan sát giới Mỗi hành động có tác động tới môi trường, môi trường cung cấp thơng tin phản hồi để hướng dẫn cho thuật tốn trình học - Chuyển đổi: tương tự học có giám sát khơng xây dựng hàm cách rõ ràng Thay thế, cố gắng đốn kết dựa vào liệu huấn luyện, kết huấn luyện, liệu thử nghiệm có sẵn trình huấn luyện Tổng quan URL Uniform Resource Locator (viết tắt URL, nghĩa tiếng Việt: định vị tài nguyên thống nhất, gọi cách thông thường địa web, tham chiếu đến tài ngun web định vị trí mạng máy tính chế để truy xuất URL loại Mã nhận dạng tài nguyên thống (Uniform Resource Identifier) Cấu trúc liên kết URL gồm phần chính: giao thức (protocol), tên miền (host name) đường dẫn (path), hình đây: Ví dụ URL Rất nhiều lập luận cho URL địa web thực tế khơng hồn tồn đơn giản Một địa web URL tất URL địa web Một số dịch vụ truy cập Internet FTP chí MAILTO sử dụng dạng URL Phần Protocol URL biểu thị giao thức mà ứng dụng máy chủ giao tiếp Phần Host name URL có nhiệm vụ ánh xạ tới địa IP tài nguyên Internet Host name bao gồm thành phần tên miền phụ (Subdomain name), tên miền (Domain name) tên miền cao cấp (Top-level domain) Ngồi ra, phần Host name chứa thơng tin người dùng (ví dụ //username:password@www.example.com) chứa thơng tin cổng kết nối dịch vụ (ví dụ //www.example.com:8080) Nếu phần Host name URL đưa trình duyệt (hoặc ứng dụng khác) đến máy chủ mạng, phần Path giúp truy vấn đến thư mục tệp tin máy chủ Ứng dụng học máy việc phát URL độc hại: Giải pháp cho việc ngăn chặn truy vấn URL độc hại phương pháp sử dụng lọc thực so sánh với danh sách Blacklist, bao gồm tên miền, máy chủ lưu trữ nội dung trang web độc hại biết Tuy nhiên, phương pháp tồn vài điểm hạn chế - Thứ nhất, yêu cầu cập nhật Blacklist thường xuyên, liên tục, không phát tên miền độc hại - Thứ hai, phương pháp phát tên miền độc hại, kẻ cơng hồn tồn khai thác blacklist, thêm vào URL đoạn code thực thi độc hại ẩn đằng sau tên miền hợp lệ chuyển hướng liên kết hợp lệ tới trang web độc hại khác sau người dùng truy cập, khiến cho việc phát ban đầu cịn khó khăn Trong năm gần đây, cơng nghệ trí tuệ nhân tạo phát triển vô mạnh mẽ, ứng dụng nhiều lĩnh vực khác gặt hái thành tựu đáng kể Phát triển ứng dụng cơng nghệ trí tuệ nhân tạo nhận quan tâm đặc biệt nhà đầu tư, hỗ trợ mạnh mẽ cộng đồng phát triển với số lượng lớn thư viện chức năng, đa dạng tảng framework Đặc biệt, nhà khoa học không ngừng nghiên cứu phát triển thuật toán mới, cải tạo cấu trúc mạng neuron, tối ưu hóa thơng số nhằm cải thiện hiệu huấn luyện trí tuệ nhân tạo Nhờ tính mở Internet, mã nguồn mở dồi dào, phong phú với hỗ trợ nhiệt tình từ cộng đồng, nhà phát triển ứng dụng thường khơng gặp q nhiều khó khăn để tự xây dựng cho mơ hình huấn luyện nhanh chóng hiệu Chính vậy, thời kỳ cách mạng công nghiệp 4.0 này, cơng nghệ trí tuệ nhân tạo phát triển đến mức độ bão hịa chìa khóa thành cơng nằm công nghệ khai phá liệu Ai nắm tay liệu phong phú hồn chỉnh phát huy mạnh cơng nghệ trí tuệ nhân tạo hướng tới thành cơng Quy trình thực qua ba bước: i Xây dựng cập nhật sở liệu URL (URL database); ii Đào tạo, xây dựng mơ hình dự đốn (Machine learning, Math Model); iii Sử dụng mơ hình dự đốn để phát URL độc hại (URL prediction) Trong đó, bước tiên để định thành công phương pháp xây dựng cập nhật sở liệu Thông tin thuộc tính URL (URL feature) lưu trữ chung sở liệu dạng vector số Cơ sở liệu sử dụng mơ hình huấn luyện mạng neuron nhân tạo với đầu vào URL, đầu kết đánh giá tính độc hại URL Kết trình huấn luyện mạng neuron nhân tạo thu mơ hình tốn học mơ tả lưu trữ thơng tin cấu hình mạng neuron huấn luyện, giá trị tham số nốt mạng Mơ hình tốn học truy xuất sử dụng để đánh giá tính độc hại URL Cơ sở liệu liên tục cập nhật trực tuyến sử dụng cho tái huấn luyện mạng neuron nhân tạo để đảm bảo tính độ xác mơ hình huấn luyện trí tuệ nhân tạo, hoạt động ổn định hệ thống Ngoài số yêu cầu sở liệu tính tự mơ tả, tính độc lập, tính trừu tượng, tính qn, tính tồn vẹn, sở liệu huấn luyện cần phải đạt yêu cầu khác như: Số lượng mẫu liệu phải đủ lớn; Mẫu liệu cần phải đa dạng, phân bố theo tỉ lệ số lượng; Dữ liệu cần phải chuẩn hóa theo tiêu chuẩn chung thuận lợi cho việc huấn luyện; Đối với mơ hình huấn luyện có giám sát, mẫu liệu cần phải gán nhãn cách xác; Lựa chọn trích xuất đặc trưng mẫu liệu huấn luyện cần phải tiến hành tỉ mỉ, khách quan Xây dựng sở liệu huấn luyện Hiện có nhiều sở liệu URL độc hại công bố kèm theo kết nghiên cứu nhà nghiên cứu lĩnh vực an tồn thơng tin hay hãng cơng nghệ lớn Tuy nhiên, sở liệu có số lượng mẫu khiêm tốn (chỉ từ vài chục, vài trăm nghìn mẫu) Ngồi ra, nhược điểm sở liệu phân bố không đồng số lượng URL độc hại không độc hại Điều dẫn tới vấn đề liệu bất cân đối (Imbalance Data) Đây vấn đề chưa giải triệt để lĩnh vực nghiên cứu ứng dụng phát triển cơng nghệ trí tuệ nhân tạo Khơng có sở liệu cũ không cập nhật thường xuyên Như vậy, nhiệm vụ cần phải hoàn thành tổng hợp sở liệu sẵn có với độ tin cậy cao, thời gian cập nhật gần nhất, đồng thời bổ sung thêm từ nguồn thu thập khác để đảm bảo tính mới, tính cân đối đa dạng sở liệu Ngoài ra, trang web khiêu dâm trang web có nội dung độc hại không môi trường thuận lợi để lây nhiễm phát tán mã độc, mà trang web nguyên nhân gây nên lệch lạc văn hóa tư tưởng phận người dùng, tập trung chủ yếu vào lứa tuổi trẻ vị thành niên dẫn đến tác động lớn trực tiếp lâu dài tới đời sống người, xã hội Chính vậy, sở liệu ngồi URL độc hại thơng thường, trang web có nội dung độc hại cần phải đưa vào gắn nhãn URL nguy hiểm Tiến hành tìm hiểu phân tích nguồn tài ngun Internet để lựa chọn nguồn tài nguyên có độ tin cậy cao, kết hợp tham khảo blacklist tổng hợp tên miền độc hại hãng bảo mật tiếng giới cung cấp, sở liệu lựa chọn thu thập tổng hợp sở liệu từ nguồn hình đây: Tổng hợp nguồn xây dựng sở liệu huấn luyện phân loại URL Tất liệu thu thập từ nhiều nguồn khác cần thông qua bước tiền xử lý, loại bỏ lỗi, lọc liệu rác chuẩn hóa kiểu liệu theo tiêu chuẩn chung thống nhằm tạo điều kiện thuận lợi cho cơng tác phân tích Để liệu phục vụ tốt cho nhiều mơ hình huấn luyện khác (mơ hình huấn luyện có giám sát khơng có giám sát, mơ hình huấn luyện sử dụng thuật tốn học máy thơng thường hay mơ hình huấn luyện sử dụng phương pháp học sâu), mẫu liệu cần phải gán nhãn cách xác, đồng thời lựa chọn trích xuất đặc trưng tiêu biểu Những URL xác nhận độc hại (bao gồm dạng chính: spam, phishing, malware, ransomware darkweb) gán nhãn tự động 1, URL an toàn gán nhãn lưu vào sở liệu Trên sở phân tích kết nghiên cứu trước chuyên gia lĩnh vực bảo mật an tồn thơng tin đồng thời thơng qua nghiên cứu chuyên sâu cấu trúc URL, phương pháp công lỗ hổng bảo mật ứng dụng web hành vi công mạng thông qua URL, tính chất sau lựa chọn đặc trưng tiêu biểu để phân định URL độc hại an toàn: - Domain blacklist: Kiểm tra domain name URL có nằm danh sách đen tên miền độc hại hay không - Google safe browsing: Kiểm tra tính an tồn URL theo khuyến cáo hãng Google thông qua Google safe browsing API - Chỉ số Shannon Entropy: Chỉ số Shannon Entropy dùng để đánh giá tính ngẫu nhiên chuỗi ký tự URL Chỉ số cao tính ngẫu nhiên chuỗi ký tự lớn Hệ số Shannon Entropy tính theo cơng thức: Trong đó: H(x) số Shannon Entropy chuỗi ký tự URL, p(xi) hàm số tính khối lượng xác suất ký tự chuỗi, b = - Độ dài URL: Tổng số ký tự chuỗi ký tự URL Theo thống kê cho thấy chiều dài chuỗi ký tự URL thường lớn nhiều so với chiều dài chuỗi ký tự URL thông thường Theo tiêu chuẩn SEO, URL đạt chuẩn cần phải ngắn gọn, rõ ràng, có cấu trúc dễ hiểu, dễ nhớ - Túi đựng từ (Bag of words): Mơ hình bag-of-words biểu diễn đơn giản hóa sử dụng xử lý ngôn ngữ tự nhiên truy xuất thông tin Ý tưởng mơ hình Bag of words phân tích phân nhóm, đếm tần suất xuất từ (ký tự) không phụ thuộc vào trật tự xếp hay cú pháp Mơ hình Bag of words thường ứng dụng vào việc tìm kiếm, phân loại tài liệu, lọc spam xác định ý định người dùng - Tần suất xuất ký tự đặc biệt: Đếm số lần xuất ký tự đặc biệt chuỗi ký tự URL - Tần suất xuất ký tự số: Đếm số ký tự chữ số xuất chuỗi ký tự URL Kết thống kê nghiên cứu trước cho thấy số lượng ký tự đặc biệt ký tự số chuỗi ký tự URL có chênh lệch lớn so sánh tương quan - URL độc hại URL thông thường Sự xuất địa IP URL: Tìm kiếm phát - xuất địa IP URL Sự xuất chuỗi ký tự nguy hiểm: Tìm kiếm phát xuất chuỗi ký tự có ẩn chứa tệp tin thực thi, 10 Đồ thị hàm sigmoid Vận dụng thuyết phân phối chuẩn, ta rằng: a= Cơng thức tính xác suất lúc này: Trong đó, thuộc tính đầu vào cịn trọng số tương ứng Có cơng thức tính xác suất ta sử dụng ngưỡng để định nhóm, cụ thể: Ví dụ, = 0.7 mà xác suất nhóm 70%, cịn 70% ta phân vào nhóm Thuật tốn Nạve Bayes Bộ phân lớp Bayes thuật toán thuộc lớp thuật toán thống kê, dự đốn xác suất phần tử liệu thuộc vào lớp Phân lớp Bayes dựa định lý Bayes (định lý đặt theo tên tác giả Thomas Bayes) Thuật tốn thuộc nhóm học có giám sát Định lý Bayes diễn giải sau: - Gọi A, B hai biến cố: 13 - Cơng thức Bayes tổng qt: Trong ta gọi A chứng (evidence) (trong toán phân lớp A phần tử liệu), B giả thiết A thuộc lớp C Trong tốn phân lớp muốn xác định giá trị P(B/A) xác suất để giả thiết B với chứng A thuộc vào lớp C với điều kiện biết thông tin mô tả A P(B|A) 14 xác suất hậu nghiệm (posterior probability hay posteriori probability) B với điều kiện A Phân lớp Naïve Bayes Bộ phân lớp Naïve Bayes hay phân lớp Bayes (simple byes classifier) hoạt động sau: i Gọi D tập liệu huấn luyện, phần tử liệu X biểu diễn vector chứa n giá trị thuộc tính A 1, A2, ,An = {x1,x2, ,xn} ii Giả sử có m lớp C1, C2, ,Cm Cho phần tử liệu X, phân lớp gán nhãn cho X lớp có xác suất hậu nghiệm lớn Cụ thể, phân lớp Bayes dự đoán X thuộc vào lớp Ci nếu: P(Ci|X) > P(Cj|X) (1

Ngày đăng: 16/11/2020, 16:54

Từ khóa liên quan

Mục lục

  • DANH MỤC VIẾT TẮT

  • LỜI NÓI ĐẦU

  • CHƯƠNG 1:

    • 1. Tổng quan về học máy:

    • 2. Tổng quan về URL

    • 3. Ứng dụng học máy trong việc phát hiện URL độc hại:

    • 4. Xây dựng cơ sở dữ liệu huấn luyện

    • CHƯƠNG 2:

      • 1. Thuật toán Logistic Regression

      • 2. Thuật toán Naïve Bayes

      • 3. Thuật toán Decision Tree

        • a) Entropy

        • b) Iterative Dichotomiser 3 (ID3)

        • c) Thuật toán C4.5

        • 4. Thuật toán Random Forest

        • CHƯƠNG 3:

        • KẾT LUẬN

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

Tài liệu liên quan