Luận văn thạc sĩ nghiên cứu phát hiện tấn công web cơ bản dựa trên học máy sử dụng web log

60 4 0
Luận văn thạc sĩ nghiên cứu phát hiện tấn công web cơ bản dựa trên học máy sử dụng  web log

Đ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

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - Vũ Thị Quý NGHIÊN CỨU PHÁT HIỆN TẤN CÔNG WEB CƠ BẢN DỰA TRÊN HỌC MÁY SỬ DỤNG WEB LOG LUẬN VĂN THẠC SĨ KỸ THUẬT (Theo định hướng ứng dụng) HÀ NỘI - 2020 e HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - Vũ Thị Quý NGHIÊN CỨU PHÁT HIỆN TẤN CÔNG WEB CƠ BẢN DỰA TRÊN HỌC MÁY SỬ DỤNG WEB LOG CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH MÃ SỐ: 8.48.01.01 LUẬN VĂN THẠC SĨ KỸ THUẬT (Theo định hướng ứng dụng) NGƯỜI HƯỚNG DẪN KHOA HỌC TS HOÀNG XUÂN DẬU HÀ NỘI - 2020 e i LỜI CAM ĐOAN Tôi cam đoan cơng trình nghiên cứu riêng tơi Nội dung luận văn có tham khảo sử dụng tài liệu, thông tin đăng tải tạp chí trang web theo danh mục tài liệu tham khảo Tất tài liệu tham khảo có xuất xứ rõ ràng trích dẫn hợp pháp Tơi xin hồn tồn chịu trách nhiệm chịu hình thức kỷ luật theo quy định cho lời cam đoan Hà nội, ngày tháng năm 2020 Người cam đoan Vũ Thị Quý e ii LỜI CẢM ƠN Đầu tiên em xin gửi lời biết ơn sâu sắc tới Thầy giáo, Tiến sĩ Hoàng Xuân Dậu, người Thầy tận tình bảo, dành nhiều thời gian việc hướng dẫn học viên cách đọc tài liệu, thu thập đánh giá thông tin đồng thời giúp em tiếp cận nhiều phương pháp tư nghiên cứu khoa học để hoàn thành luận văn cao học Em xin gửi lời cảm ơn chân thành tới tất thầy, cô giáo khoa Sau đại học thầy cô giáo trường – Học viện Cơng nghệ Bưu Viễn thơng ln nhiệt tình giúp đỡ tạo điều kiện tốt cho em suốt trình học tập nghiên cứu trường Xin chân thành cảm ơn anh, chị bạn học viên lớp Cao học – Học viện động viên, giúp đỡ nhiệt tình chia sẻ với em kinh nghiệm học tập, cơng tác suốt khố học Học viên xin chân thành cảm ơn vị lãnh đạo bạn đồng nghiệp quan tạo điều kiện tốt để em hồn thành tốt đẹp khố học Cao học Mặc dù cố gắng hoàn thành luận văn này, xong luận văn khó tránh khỏi thiếu sót Em mong nhận nhận xét, góp ý, tận tình bảo từ thầy, Em xin chân thành cảm ơn! Hà Nội, tháng năm 2020 Vũ Thị Quý e iii MỤC LỤC Trang PHẦN MỞ ĐẦU 1 Lý chọn đề tài -1 Tổng quan vấn đề nghiên cứu -3 Mục đích nghiên cứu Đối tượng phạm vi nghiên cứu 5 Phương pháp nghiên cứu -5 CHƯƠNG 1: TỔNG QUAN VỀ CÁC DẠNG TẤN CÔNG VÀO WEBSITE, ỨNG DỤNG WEB VÀ CÁC GIẢI PHÁP PHÒNG CHỐNG 1.1 Kiến Trúc Ứng Dụng Web Các Yêu Cầu Bảo Mật -6 1.1.1 Kiến trúc ứng dụng web 1.1.2 Các yêu cầu bảo mật ứng dụng web, website 10 1.1.2.1 Yêu cầu cài đặt 10 1.1.2.2 Tắt/disable thành phần mặc định 10 1.1.2.3 Thay đổi thành phần mặc định - 11 1.1.2.4 Giới hạn truy cập - 11 1.2 Các Nguy Cơ Các Dạng Tấn Công Lên Ứng Dụng Web 11 1.2.1 Các nguy lỗ hổng bảo mật website, ứng dụng web (TOP 10 OWASP 2017) 11 1.2.2 Một số dạng công web - 16 1.2.2.1 Tấn công chèn mã SQLi - 16 1.2.2.2 Tấn công Cross-Site Scriting (XSS) - 18 1.2.2.3 Duyệt đường dẫn (Directory traversal) 20 1.2.2.4 Tấn công CMDi - 20 1.2.3 Các biện pháp bảo mật ứng dụng web, website - 21 1.2.3.1 Nguyên tắc chung - 21 1.2.3.2 Một số biện pháp bảo mật cụ thể - 23 1.2.3.2.1 Kiểm tra liệu đầu vào 23 e iv 1.2.3.2.2 Giảm thiểu giao diện bị công 23 1.2.3.2.3 Phòng vệ theo chiều sâu - 24 1.3 Kết luận Chương 24 CHƯƠNG 2: PHÁT HIỆN TẤN CÔNG WEB DỰA TRÊN HỌC MÁY SỬ DỤNG WEB LOG - 25 2.1 Tìm hiểu Web log 25 2.1.1 Khái quát Web log 25 2.1.2 Các dạng web log - 26 2.2 Khái quát Học Máy thuật toán Học Máy - 29 2.2.1 Khái quát học máy 29 2.2.1.1 Khái niệm 29 2.2.1.2 Phân loại kỹ thuật học máy 31 2.2.2 Một số thuật toán học máy - 32 2.2.2.1 Naive Bayes - 32 2.2.2.2 Cây định 35 2.2.2.3 Rừng ngẫu nhiên 37 2.3 Phát công web dựa học máy sử dụng web log 38 2.3.1 Mơ hình phát - 38 2.3.2 Các giai đoạn huấn luyện phát - 39 2.3.2.1 Giai đoạn huấn luyện - 39 2.3.2.2 Giai đoạn phát - 39 2.4 Kết luận Chương 40 CHƯƠNG 3: CÀI ĐẶT VÀ THỬ NGHIỆM - 41 3.1 Giới thiệu tập liệu - 41 3.1.1 Tập liệu mẫu - 41 3.1.2 Dữ liệu web log thực - 43 3.2 Tiền xử lý liệu 44 3.3 Huấn luyện kiểm thử mô hình phát 44 3.4 Thử nghiệm, kết nhận xét 45 e v 3.4.1 Lựa chọn công cụ thử nghiệm 45 3.4.2 Kết thử nghiệm - 45 3.4.3 Nhận xét 46 3.5 Kết luận chương - 46 KẾT LUẬN 47 DANH MỤC CÁC TÀI LIỆU THAM KHẢO - 48 e vi DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT TỪ VIẾT TẮT AES API TIẾNG ANH TIẾNG VIỆT/GIẢI THÍCH Advanced Encryption Standard Tiêu chuẩn mã hóa nâng cao Application Programming Interface CGI Common Gateway Interface CLF Common log format CMDi Command Injection DHTML Giao diện cổng chung Server chương trình Định dạng nhật ký chung Lỗ hổng chèn mã dòng lệnh web Cơ sở liệu CSDL CSRF Giao diện lập trình ứng dụng Cross Site Request Forgery Dynamic HyperText Markup Một dạng công web Ngôn ngữ đánh dấu siêu Language văn động DR Detection Rate Tỉ lệ phát xác HTTP HyperText Transfer Protocol Giao thức truyền tải siêu văn HTTPS HyperText Transfer Protocol Secure Giao thức bảo mật HTTP an toàn IDS Intrucsion Detection System Hệ thống phát xâm phạm IIS Internet Information Services Các dịch vụ dành cho máy chủ e vii IPS Intrusion prevention System Hệ thống ngăn chặn xâm phạm Lightweight Directory Access Giao thức ứng dụng truy cập Protocol cấu trúc thư mục Operating system Phần mềm hệ thống Open Web Application Security Dự án mở bảo mật ứng dụng Project web PCA Principal Component Analysis Phân tích thành phần RSA Rivest Shamir Adleman Hệ thống mật mã khóa cơng khai SQLi SQL Injection Lỗ hổng chèn mã sql web SSL Secure Sockets Layer Giao thức bảo mật SSL Transmission Control Protocol/ Giao thức điều khiển truyền nhận/ Internet Protocol Giao thức liên mạng LDAP OS OWASP TCP/IP TF/IDF Term frequency/ inverse document frequency Tần suất từ /tần suất tài liệu nghịch TLS Transport Layer Security Bảo mật tầng truyền tải URI Uniform Resource Identifier Nhận diện địa web URL Uniform Resource Locator Địa web WAF Web Application Firewall Tường lửa ứng dụng web XSS Cross-Site Scripting Là loại lỗ hổng web e viii DANH SÁCH HÌNH VẼ Hình 1.1: Kiến trúc chuẩn ứng dụng web [1] Hình 1.2: Cấu trúc http request Hình 1.3: Cấu trúc http reponse Hình 1.4: Các lớp bảo mật ứng dụng web [1] - 21 Hình 2.1: Quá trình học máy [14] 30 Hình 2.2: Q trình học máy tồn diện [14] - 31 Hình 2.3: Mơ hình thuật tốn định [13] - 36 Hình 2.4: Mơ hình thuật toán rừng ngẫu nhiên [13] 37 Hình 2.5: Mơ hình phát công web bản: Giai đoạn huấn luyện [2] - 38 Hình 2.6: Mơ hình phát cơng web bản: Giai đoạn phát [2][20] 38 e 35 Multi class Prediction: Bản chất thuật toán phân loại dự đoán chia thành nhiều lớp Sentiment Analysis: Naive Bayes sử dụng phân loại ngôn ngữ tự nhiên cho kết tốt so với số thuật tốn khác Bên cạnh cịn phân loại spam-mail nhận định bình luận tích cực hay khơng tích cực mạng xã hội Recommendation System: hệ thống gợi ý hoạt động dựa dự đoán 2.2.2.2 Cây định Cây định (Decision Tree) đồ thị định hậu (bao gồm rủi ro hao phí tài nguyên) Cây định sử dụng để xây dựng kế hoạch nhằm đạt mục tiêu mong muốn Các định dùng để hỗ trợ trình định Cây định dạng đặc biệt cấu trúc [3] Trong lĩnh vực học máy, định kiểu mơ hình dự báo (predictive model), nghĩa ánh xạ từ quan sát vật/hiện tượng tới kết luận giá trị mục tiêu vật/hiện tượng Mỗi nút (internal node) tương ứng với biến; đường nối với nút thể giá trị cụ thể cho biến Mỗi nút đại diện cho giá trị dự đoán biến mục tiêu, cho trước giá trị biến biểu diễn đường từ nút gốc tới nút Kỹ thuật học máy dùng định gọi học định, hay gọi với tên ngắn gọn định Mơ hình biểu diễn hình 2.3 ví dụ đặc trưng thuật tốn định Học định phương pháp thông dụng khai phá liệu Khi đó, định mơ tả cấu trúc cây, đó, đại diện cho phân loại cành đại diện cho kết hợp thuộc tính dẫn tới phân loại Một định học cách chia tập hợp nguồn thành e 36 tập dựa theo kiểm tra giá trị thuộc tính Q trình lặp lại cách đệ qui cho tập dẫn xuất Q trình đệ qui hồn thành khơng thể tiếp tục thực việc chia tách nữa, hay phân loại đơn áp dụng cho phần tử tập dẫn xuất Hình 2.4: Mơ hình thuật tốn định [13] Cây định có loại: Cây hồi quy (Regression tree): ước lượng hàm có giá trị số thực thay sử dụng cho nhiệm vụ phân loại (định giá, ước lượng giá trị nhà cần giao bán, khoảng thời gian nằm viện bệnh nhân) Cây phân loại (Classification tree): dùng toán phân loại kết (phân biệt giới tính, kết trận đấu, …) Ưu điểm thuật toán định đơn giản phổ biến Mơ hình sinh quy tắc dễ hiểu cho người đọc, tạo luật với nhánh luật Dữ liệu đầu vào không cần chuẩn hóa, làm việc với liệu số liệu phân loại làm việc với liệu lớn Ngồi cịn xác thực mơ hình cách sử dụng kiểm tra thống kê Bên cạnh ưu điểm, thuật toán cịn số nhược điểm kèm mơ hình phụ thuộc lớn vào liệu ta có, với thay đổi nhỏ liệu cấu e 37 trúc mơ hình định thay đổi hồn tồn Ngồi định hay gặp vấn đề overfitting 2.2.2.3 Rừng ngẫu nhiên Rừng ngẫu nhiên thuật tốn học có giám sát Rừng ngẫu nhiên sử dụng để làm tảng Rừng ngẫu nhiên tập hợp định, mà chọn theo thuật toán dựa vào ngẫu nhiên Rừng ngẫu nhiên hoạt động cách đánh giá nhiều định ngẫu nhiên, lấy kết đánh giá tốt số kết trả Mơ hình rừng ngẫu nhiên hiệu cho toán phân loại huy động lúc hàng trăm mơ hình nhỏ bên với quy luật khác để đưa định cuối Mỗi mô hình mạnh yếu khác nhau, theo nguyên tắc “wisdom of the crowd”, ta có hội phân loại xác so với sử dụng mơ hình đơn lẻ Mơ hình tiêu biểu thuật tốn Random Forest biểu diễn hình sau: Hình 2.5: Mơ hình thuật toán rừng ngẫu nhiên [13] Ưu điểm thuật tốn Random Forest sử dụng cho toán Classification Regression, làm việc với liệu thiếu giá trị Khi rừng có nhiều mơ hình tránh việc bị overfitting so với mơ hình định e 38 Nhược điểm giải thuật tốn nhiều thời gian thực phải duyệt nhiều để tìm kết tốt 2.3 Phát công web dựa học máy sử dụng web log 2.3.1 Mơ hình phát Mơ hình phát cơng web dựa học máy sử dụng web log luận văn triển khai theo giai đoạn: (1) giai đoạn huấn luyện biểu diễn Hình 2.5 (2) giai đoạn phát biểu diễn Hình 2.6 Trong đó, URI (Uniform Resource Indicator) chuỗi truy nhập bóc tách từ web log Các URI bình thường URI cơng dùng cho giai đoạn huấn luyện lấy từ tập liệu mẫu gán nhãn [2] Hình 2.6: Mơ hình phát cơng web bản: Giai đoạn huấn luyện [2] Hình 2.7: Mơ hình phát công web bản: Giai đoạn phát [2][20] e 39 2.3.2 Các giai đoạn huấn luyện phát 2.3.2.1 Giai đoạn huấn luyện Giai đoạn thực xây dựng mơ hình phát từ liệu huấn luyện gồm bước sau: - Thu thập tập liệu huấn luyện: Dữ liệu huấn luyện lấy từ tập Http Params Dataset [19] Bộ liệu gồm 31.067 URI payload truy vấn web, kèm theo độ dài, loại cơng (norm-bình thường, sqli-tấn cơng SQLi, xss-tấn công XSS, cmdi-tấn công chèn mã lệnh hệ điều hành, pathtraversal-tấn công duyệt đường dẫn) nhãn (norm - bình thường, anom-bất thường) Tập liệu chia thành phần: phần liệu cho huấn luyện gồm 20.000 URI payload, phần lại để kiểm thử - Tiền xử lý: Khâu thực vector hoá URI payload sử dụng phương pháp 3-gram số hoá sử dụng phương pháp TF-IDF (tần suất từ - tần suất tài liệu nghịch) Tiếp theo sử dụng phương pháp PCA (Phân tích thành phần chính) để giảm số chiều vector xuống 256 (lựa chọn qua thực nghiệm) - Huấn luyện: thực huấn luyện liệu sau tiền xử lý sử dụng thuật toán định CART (hỗ trợ thư viện Python) để sinh mơ hình phát Mơ hình phát lưu vào file để sử dụng cho giai đoạn phát - Kiểm thử mơ hình phát hiện: Sử dụng tập liệu kiểm thử liệu Http Params Dataset [19] để kiểm thử độ xác phát 2.3.2.2 Giai đoạn phát Giai đoạn thực phân tích dòng web log nhằm phát dấu hiệu cơng SQLi, XSS, duyệt đường dẫn chèn dịng lệnh hệ điều hành gồm bước sau: - Tách URI truy nhập: từ dòng web log, tách lấy phần địa trang (URI stem) truy vấn (URI query) phục vụ phát Đây thành phần tin tặc e 40 thường sử dụng để nhúng đoạn mã công vào địa URL trang web - Tiền xử lý: Khâu thực vector hoá URI truy nhập sử dụng phương pháp 3-gram, TF-IDF PCA tương tự giai đoạn huấn luyện - Phát hiện: vector URI truy nhập xác định bình thường hay bị cơng mơ hình phát 2.4 Kết luận Chương Chương giới thiệu hiểu biết WEB LOG, dạng WEB LOG, hoạt động định dạng loại WEB LOG Ngoài chương giới thiệu khái quát học máy đưa số thuật toán học máy sử dụng để phát công web Naive Bayes, Cây định (Decision Tree), Rừng ngẫu nhiên Tuy nhiên mục đích chương chủ yếu sâu vào việc trình bày mơ hình phát cơng sử dụng, pha xử lý mơ tiền xử lý, huấn luyện phát Trong chương 3, nội dung chủ yếu giới thiệu tập liệu sử dụng để huấn luyện cho học máy, cách xử lý tiền liệu, bước làm pha huấn luyện phân loại liệu đầu vào Trình bày số phương pháp để sử dụng huấn luyện phát hiện, kết dùng để đánh giá mức độ hiệu sử dụng phương pháp học máy khác e 41 CHƯƠNG 3: CÀI ĐẶT VÀ THỬ NGHIỆM Trong chương luận văn trọng tâm vào phần cài đặt thử nghiệm để đưa kết khả phát công web dựa web log mơ hình học máy Chi tiết vào phần giới thiệu tập liệu sử dụng để huấn luyện, kịch huấn luyện đánh giá thuật toán để đưa kết xác Từ kết thu rút nhược điểm mơ hình học máy sử dụng để cải thiện thêm kết hướng tương lai 3.1 Giới thiệu tập liệu 3.1.1 Tập liệu mẫu Tập liệu mẫu dùng cho thử nghiệm đánh giá mơ hình phát HttpParamsDataset [19] Tập gồm tham số truy vấn HTTP với 19.304 truy vấn bình thường gán nhãn norm 11.763 truy vấn bất thường gán nhãn anom Bảng 3.1 cung cấp số ghi mẫu tập liệu Theo đó, liệu lưu trữ file theo định dạng CSV file có cột ứng với thuộc tính: payload (tải hay chuỗi truy vấn), length (độ dài payload), attack type (loại cơng, gồm norm-bình thường, sqli, xss, cmdi path-traversal) label (nhãn, gồm norm-bình thường anom-bất thường) Các truy vấn bất thường gồm loại với số lượng sau: - 10.852 truy vấn công chèn mã SQL gán nhãn sqli - 532 truy vấn công XSS gán nhãn xss - 89 truy vấn công chèn mã lệnh hệ điều hành gán nhãn cmdi - 290 truy vấn công duyệt đường dẫn gán nhãn path-traversal Tập liệu HttpParamsDataset chia thành phần sử dụng cho huấn luyện kiểm thử: - Tập cho huấn luyện gồm 20.712 truy vấn, có 7.842 truy vấn bất thường; e 42 - Tập cho kiểm thử gồm 10.355 truy vấn, có 3.921 truy vấn bất thường Bảng 3.1: Một số ghi tập liệu HttpParamsDataset [19] length attack type label castellanos de zapardiel 24 norm norm -3136%') or 3400=6002 21 sqli anom 1')) as gfzb where 7904=7904;begin dbms_lock.sleep(5); end 60 sqli anom 1")) and 4386=utl_inaddr.get_host_address(chr(113)||chr(113)||c hr(112)||chr(106)||chr(113)||(select (case when (4386=4386) then else end) from dual)||chr(113)||chr(122)||chr(118)||chr(122)||chr(113)) and (("smnw" like "smnw 227 sqli anom -2604)) as sekb where 6897=6897 or 1000=7683 44 sqli anom 1');begin dbms_lock.sleep(5); end and ('jzlr'='jzlr 51 sqli anom 1%")));create or replace function sleep(int) returns int as '/lib/libc.so.6','sleep' language 'c' strict; select sleep(5) and ((("%"=" 134 sqli anom -1638' or 2724 in ((char(113)+char(113)+char(112)+char(106)+char(113) +(select (case when (2724=2724) then char(49) else char(48) end))+char(113)+char(122)+char(118)+char(122)+char( 113))) and 'xkne'='xkne 203 sqli anom 1%";call regexp_substring(repeat(left(crypt_key(char(65)||char(6 9)||char(83),null),0),500000000),null) 104 sqli anom tweddle norm norm sirevici norm norm payload (tải) e 43 3.1.2 Dữ liệu web log thực Dữ liệu web log thực liệu thu thập thực tế từ máy chủ web Luận văn sử dụng phần liệu web log thu thập đề tài khoa học công nghệ cấp nhà nước, mã số KC.01.05/16-20 [20] thực Học viện Cơng nghệ Bưu Viễn thơng Web log thu thập chuẩn hóa theo định dạng W3C Extended phục vụ cho phân tích, xử lý Bảng 3.2 mô tả số trường web log thực [20], luận văn sử dụng thơng tin từ trường URI_QUERY để phân tích phát cơng web Bảng 3.2: Một số trường web log thực [20] Mô tả Tên trường Ngày xử lý yêu cầu theo định dạng yyyy-mm-dd (nămDATE tháng-ngày) TIME Giờ xử lý yêu cầu theo định dạng hh:mm:ss (giờ:phút:giây) CLIENT_IP Địa IP máy khách HTTP_METHOD Phương thức HTTP máy khách gửi yêu cầu URI_STEM Địa tương đối trang, ví dụ /products/search.aspx Chuỗi truy vấn trang (HTTP query string) Ví dụ: URI_QUERY category_id=100& category_desc=Science Fiction Books Mã trạng thái xử lý yêu cầu Ví dụ mã 200 xử lý yêu cầu HTTP_STATUS thành công Số lượng byte yêu cầu (Request) máy chủ nhận từ BYTE_RECEIVED máy khách Số lượng byte trả lời (Response) máy chủ gửi từ BYTE_SENT TIME_TAKEN máy khách Thời gian xử lý yêu cầu tính giây e 44 3.2 Tiền xử lý liệu Khâu tiền xử lý liệu nhằm trích chọn số hóa đặc trưng cho truy vấn HTTP thực theo bước mơ tả phần giới thiệu mơ hình phát Chương Do ta sử dụng 3-gram chuẩn xây dựng từ việc lấy tất phần tử 3-gram khác trình phân tách 3-gram ghi tập huấn luyện gồm 20.712 truy vấn, độ dài 3-gram chuẩn lớn lên tới vài chục nghìn phần tử Nếu thực lưu trữ, ánh xạ phần tử tập chuẩn gặp khó khăn q trình lưu trữ tốc độ xử lý tính tốn Vì vậy, để trình huấn luyện diễn nhanh mà khơng tính xác mơ hình sử dụng phương pháp để giảm chiều liệu 3gram chuẩn Principal Component Analysis (PCA) Phương pháp PCA dựa quan sát liệu thường không phân bố ngẫu nhiên không gian mà thường phân bố gần đường/mặt đặc biệt PCA dựa vào danh sách tập liệu 3-gram phân tách ban đầu, sau dựa vào cách phân bố liệu tập liệu 3-gram, PCA lựa chọn k phần tử có tầm quan trọng việc định phân loại, bỏ qua phần tử quan trọng, khơng ảnh hưởng việc định phân loại kết request Kết khâu tiền xử lý vector với 256 chiều đại diện cho truy vấn URI 3.3 Huấn luyện kiểm thử mơ hình phát Tập liệu huấn luyện sau tiền xử lý sử dụng để huấn luyện sử dụng thuật toán định để sinh mơ hình phân loại (cụ thể thuật toán định CART hỗ trợ thư viện sk-learn Python) Mơ hình lưu vào file cho khâu kiểm thử Trong khâu kiểm thử, tập liệu kiểm thử sau tiền xử lý sử dụng để đánh giá độ xác phân loại e 45 Độ đo sử dụng độ xác tính số truy vấn phân loại chia cho tổng số truy vấn thuộc loại Độ đo tính cho truy vấn bình thường, loại bất thường trung bình 3.4 Thử nghiệm, kết nhận xét 3.4.1 Lựa chọn công cụ thử nghiệm Việc cài đặt phát triển chức mô đun thực sử dụng tảng công cụ sau:  Hệ điều hành Ubuntu 16.04, 64 bít  Ngơn ngữ lập trình Python 3.5 thư viện kèm theo 3.4.2 Kết thử nghiệm Các thử nghiệm thực với mô đun phát công SQLi, XSS, duyệt đường dẫn, CMDi bao gồm:  Thử nghiệm độ xác phát với tập liệu kiểm thử, kết cho Bảng 3.2  Thử nghiệm phát liệu web log thực, kết cho Bảng 3.3 Bảng 3.2: Kết kiểm thử mơ hình phát cơng web sử dụng tập liệu kiểm thử [19] e 46 Bảng 3.3: Một số kết chi tiết phát công web sử dụng web log thực Loại công phát Tấn công SQLi Tấn công XSS Chuỗi công sử dụng fpw=(select%20convert(int%2cCHAR(65))) type=vh01i%27%3e%3cscript%3ealert%281%29%3 c%2fscript%3eooq5g Duyệt đường dẫn type= / / / / / / / / / / /etc/passwd%00 Tấn công CMDi fpw=WEB-INF/web.xml%3f 3.4.3 Nhận xét Từ kết thử nghiệm mơ hình phát hiện, rút số nhận xét sau:  Mơ hình phát cơng web đạt độ xác phát trung bình cao, đạt 98.51% Hầu hết dạng công trạng thái bình thường có độ xác phát cao, riêng độ xác phát cơng CMDi đạt 66.67% lượng liệu huấn luyện cho dạng cơng Trên thực tế, cơng CMDi gặp dịch vụ web dạng SQLi, XSS duyệt đường dẫn  Kết phát thử web log thực cho thấy mô hình phát xác loại cơng Mơ hình có khả phát dạng công web bao gồm SQLi XSS, công duyệt đường dẫn CMDi 3.5 Kết luận chương Trong chương luận văn mô tả chi tiết liệu sử dụng cho mơ hình phát công web sử dụng học máy, mô tả chi tiết phương pháp huấn luyện phát hiện, thống kê chi tiết kết đạt nhiều kịch thử nghiệm khác từ rút nhận xét ưu điểm hạn chế phương pháp học máy sử dụng e 47 KẾT LUẬN Kết đạt được: Từ nội dung chương, luận văn đạt kết sau:  Trình bày khái quát ứng dụng web, yêu cầu bảo mật ứng dụng web, web server, loại công web đặc điểm cách khai thác loại công web phổ biến biện pháp bảo mật, cách phòng chống.  Trình bày phương pháp phát cơng web sử dụng học máy, thuật tốn học máy áp dụng cho toán phát cơng web Đưa mơ hình phát cơng web ngun lý hoạt động mơ hình phát cơng Trình bày q trình xử lý liệu, đưa liệu vào huấn luyện phát kiểm tra.  Thử nghiệm mơ hình phát công web dựa học máy với kịch cụ thể  Hướng phát triển tương lai  Do hạn chế thời gian khả năng, luận văn thử nghiệm mơ hình thuật toán học máy Cây định Trong tương lai sử dụng thuật toán khác trình huấn luyện phát hiện, Naive Bayes, Rừng ngẫu nhiên SVM, từ tìm thuật toán tối ưu.  Cập nhật thêm liệu để phát loại công cập nhật cách thức công lỗ hổng cũ. e 48 DANH MỤC CÁC TÀI LIỆU THAM KHẢO Tiếng Việt [1] Hoàng Xuân Dậu, Bài giảng An toàn ứng dụng web sở liệu, Học viện Cơng nghệ bưu viễn thơng, 2017 [2] Hoàng Xuân Dậu, “Nghiên cứu, phát triển hệ thống phân tích vết truy cập dịch vụ cho phép phát hiện, cảnh báo hành vi bất thường nguy an tồn thơng tin Chính phủ điện tử”, Báo cáo đề tài KC.01.05/16-20, 2019 [3] Từ Minh Phương, Giáo trình Nhập mơn Trí Tuệ Nhân Tạo, Học viện Cơng nghệ bưu viễn thơng, 2015 Tiếng Anh [4] Abhishek Kumar Baranwal (2012), Approaches to detect SQL injection and XSS in web applications, EECE 571B, Term Survey Paper, University of British Columbia, Canada, April 2012 [5] Kemalis, K and T Tzouramanis (2008) SQL-IDS: A Specificationbased Approach for SQLinjection Detection SAC’08 Fortaleza, Ceará, Brazil, ACM (2008), pp 2153-2158 [6] P Bisht, and V.N Venkatakrishnan (2008), “XSS-GUARD: Precise dynamic prevention of Cross-Site Scripting Attacks,” In Proceeding of 5th Conference on Detection of Intrusions and Malware & Vulnerability Assessment, LNCS 5137, 2008, pp 23-43 [7] Doyen Sahoo, Chenghao Liu, and Steven C.H Hoi (2017), Malicious URL Detection using Machine Learning: A Survey, [Online] https://arxiv.org/abs/1701.07179, Mar 2017 Trang WEB [8] OWASP, Open Web Application Security Project, http://www.owasp.org, truy nhập tháng 1.2018 [9] OWASP ModSecurity Core https://www.owasp.org/index.php/Category: e Rule Set, 49 OWASP_ModSecurity_Core_Rule_Set_Project, truy nhập tháng 1.2018 [10] https://ereka.vn/post/owasp-cong-bo-top-10-rui-ro-bao-mat-ung-dung- nam-2017 [11] https://m.bkav.com.vn/tin_tuc_noi_bat/-/chi_tiet/669034/tong-ket-an- ninh-mang-nam-2019-va-du-bao[12] https://quantrimang.com/lo-hong-bao-mat-nhung-hieu-biet-can-ban- 93098 [13] https://machinelearningcoban.com/2017/08/08/nbc/ [14] https://ereka.vn/post/cach-xay-dung-mot-mo-hinh-hoc-may-machine- learning-model-5298271823815628220 [15] https://securitydaily.net/tan-cong-directory-traversal-la-gi/ [16] https://www.owasp.org/index.php/Command_Injection [17] https://www.loganalyzer.net/log-analysis-tutorial/what-is-log-file.html [18] https://quantrimang.com/tan-cong-kieu-sql-injection-va-cac-phong- chong-trong-asp-net-34905 [19] HTTP Param Dataset, https://github.com/Morzeux/HttpParamsDataset, truy nhập 12.2018 [20] Hồng Xn Dậu nhóm thực Lab ATTT – Học viện Công nghệ BCVT Đề tài “Nghiên cứu, phát triển hệ thống phân tích vết truy cập dịch vụ cho phép phát hiện, cảnh báo hành vi bất thường nguy an tồn thơng tin Chính phủ điện tử”, mã số KC.01.05/16-20 2020 e ... Theo hướng nghiên cứu này, đề tài luận văn thạc sĩ học viên có tên ? ?Nghiên cứu phát công web dựa học máy sử dụng web log? ?? tập trung nghiên cứu vấn đề phát công web dựa học máy sử dụng web log Do... toán học máy, đưa mơ hình phát cơng website chi tiết khâu xử lý liệu e 25 CHƯƠNG 2: PHÁT HIỆN TẤN CÔNG WEB DỰA TRÊN HỌC MÁY SỬ DỤNG WEB LOG Chương luận văn trình bày khái quát WEB LOG, dạng WEB LOG, ... thực phải duyệt nhiều để tìm kết tốt 2.3 Phát công web dựa học máy sử dụng web log 2.3.1 Mơ hình phát Mơ hình phát công web dựa học máy sử dụng web log luận văn triển khai theo giai đoạn: (1) giai

Ngày đăng: 27/03/2023, 06:45

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

Tài liệu liên quan