ÁP DỤNG PHƯƠNG PHÁP HỌC MÁY TRONG PHÁT HIỆN VÀ NGĂN CHẶN TẤN CÔNG WEB

46 2 0
ÁP DỤNG PHƯƠNG PHÁP HỌC MÁY TRONG PHÁT HIỆN VÀ NGĂN CHẶN  TẤN CÔNG WEB

Đ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 PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP......................................... 1 I. Giới thiệu.................................................................................................. 5 1. Tổng quan và mục tiêu của đồ án ....................................................... 5 2. Bố cục của đồ án................................................................................. 7 II. Tổng quan về ứng dụng web và vấn đề bảo mật cho ứng dụng web........ 8 1. Ứng dụng web..................................................................................... 8 2. Các vấn đề trong bảo mật web............................................................ 9 3. Giới thiệu về Web Application Firewall........................................... 11 III. Các nghiên cứu liên quan ..................................................................... 13 1. Sử dụng các phương pháp phân loại dựa trên học máy cơ bản ........ 13 2. Sử dụng deep learning ...................................................................... 15 3. Các phương pháp khác...................................................................... 18 IV. Phương pháp đề xuất và kết quả thu được ........................................... 20 1. Tập dữ liệu ........................................................................................ 20 2. Một số khái niệm .............................................................................. 21 a. Học máy ........................................................................................ 21 b. Một số phương pháp phân lớp thường dùng trong học máy ......... 22 c. Cách đánh giá mô hình học máy ................................................... 23 3. Trình bày phương pháp tiến hành và kết quả thu được .................... 24 a. Tổng quan về phương pháp tiến hành ........................................... 24 b. Tiền xử lý đối với dữ liệu thô........................................................ 26 c. Xây dựng cơ sở dữ liệu ................................................................. 27 d. Mô tả phương pháp trích chọn dữ liệu .......................................... 29 e. Tiến hành thí nghiệm và kết quả thu được .................................... 34 f. Kết luận, các công việc trong tương lai......................................... 38 V. Mô hình triển khai thực tế ...................................................................... 39 1. Tổng quan mô hình và các thành phần ............................................. 39 Áp dụng phương pháp học máy trong phát hiện và ngăn chặn tấn công web Hoàng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 4 2. Nguyên lý hoạt động của hệ thống ................................................... 40 3. Đề xuất phát triển thêm cho mô hình này trong tương lai ................ 41 Tài liệu tham khảo .......................................................................................... 4

ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG * ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC NGÀNH CÔNG NGHỆ THÔNG TIN ÁP DỤNG PHƯƠNG PHÁP HỌC MÁY TRONG PHÁT HIỆN VÀ NGĂN CHẶN TẤN CƠNG WEB Sinh viên thực hiện: Hồng Phú Hoan Lớp CNTT1.02 – K58 Giảng viên hướng dẫn: TS Nguyễn Hồng Quang HÀ NỘI, 05 – 2018 Áp dụng phương pháp học máy phát ngăn chặn công web PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Thông tin sinh viên Họ tên sinh viên: Hoàng Phú Hoan Điện thoại liên lạc: 0968756614 Email:hoangphuhoan2012@gmail.com Lớp: CNTT1.02 Hệ đào tạo: Đại trà Đồ án tốt nghiệp thực tại: Viện Công nghệ thông tin, trường Đại học Bách Khoa Hà Nội Thời gian làm ĐATN: Từ ngày 1/3/2018 đến 30/5/2018 Mục đích nội dung ĐATN Trong đồ án này, muốn thực việc áp dụng công nghệ học máy việc phát công bảo mật nhằm vào ứng dụng web đồng thời xây dựng hệ thống để thực việc ngăn chặn công web Các nhiệm vụ cụ thể ĐATN Nhiệm vụ cụ thể đồ án là: - Tìm phương pháp học máy cho độ xác cao việc phát công web - Áp dụng phương pháp học máy tìm để xây dựng hệ thống web application firewall bản, bảo vệ ứng dụng web Lời cam đoan sinh viên: Tơi Hồng Phú Hoan cam kết ĐATN cơng trình nghiên cứu thân hướng dẫn Tiến sỹ Nguyễn Hồng Quang Các kết nêu ĐATN trung thực, khơng phải chép tồn văn cơng trình khác Hà Nội, ngày 29 tháng năm 2018 Hoàng Phú Hoan Xác nhận giáo viên hướng dẫn mức độ hoàn thành ĐATN cho phép bảo S Hà Nội, ngày 29 tháng năm 2018 Tiến sỹ Nguyễn Hồng Quang Hồng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 Áp dụng phương pháp học máy phát ngăn chặn cơng web TĨM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP Trong giới đại ngày nay, ứng dụng web ngày trở nên quan trọng phần thiếu mạng internet Hâu hết thông tin internet lưu trữ website Cũng mà vấn đề bảo mật web ngày trở thành vấn đề quan tâm Hầu hết ứng dụng web bảo vệ được sử dụng công nghệ dựa signature-based Phương pháp sớm bộc lộ nhiều hạn chế việc phát triển trì phù hợp với đa dạng cơng Nhận thấy u cầu đồ án tơi muốn tìm kiếm phương pháp phát công web sử dụng học máy Nó đem lại khả phát cơng vượt trội, dễ trì, phát triển có khả đạt độ xác cao Cùng với đó, tơi muốn áp dụng phương pháp mà nghiên cứu vào việc xây dựng hệ thống Web Application Firewall với chức Để đảm bảo khả phát với độ xác cao nghiên cứu tơi thực việc phát công dựa tập liệu sử dụng nhiều nghiên cứu trước chưa lượng liệu đa dạng Các công việc thực đồ án này: - Nghiên cứu bảo mật ứng dụng web - Nghiên cứu phương pháp sử dụng để phát công web - Đề xuất phương pháp phát công web dựa học máy thân - Thử nghiệm phương pháp tập liệu CSIC 2010 - Xây dựng hệ thống Web Application Firewall áp dụng phương pháp đề xuất để bảo vệ hệ thống web thực Hoàng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 Áp dụng phương pháp học máy phát ngăn chặn công web MỤC LỤC PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP I Giới thiệu Tổng quan mục tiêu đồ án Bố cục đồ án Tổng quan ứng dụng web vấn đề bảo mật cho ứng dụng web II Ứng dụng web Các vấn đề bảo mật web Giới thiệu Web Application Firewall 11 III Các nghiên cứu liên quan 13 Sử dụng phương pháp phân loại dựa học máy 13 Sử dụng deep learning 15 Các phương pháp khác 18 IV Phương pháp đề xuất kết thu 20 Tập liệu 20 Một số khái niệm 21 a Học máy 21 b Một số phương pháp phân lớp thường dùng học máy 22 c Cách đánh giá mơ hình học máy 23 Trình bày phương pháp tiến hành kết thu 24 V a Tổng quan phương pháp tiến hành 24 b Tiền xử lý liệu thô 26 c Xây dựng sở liệu 27 d Mơ tả phương pháp trích chọn liệu 29 e Tiến hành thí nghiệm kết thu 34 f Kết luận, công việc tương lai 38 Mơ hình triển khai thực tế 39 Tổng quan mô hình thành phần 39 Hồng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 Áp dụng phương pháp học máy phát ngăn chặn công web Nguyên lý hoạt động hệ thống 40 Đề xuất phát triển thêm cho mô hình tương lai 41 Tài liệu tham khảo 42 Chú giải 44 Hồng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 Áp dụng phương pháp học máy phát ngăn chặn công web I Giới thiệu Tổng quan mục tiêu đồ án Ngành công nghệ thơng tin phát triển đồng thời với nó, khả an tồn thơng tin cao, đặc biệt ứng dụng public rộng rãi người dùng website khả trở thành mục tiêu công lại lớn Theo thống kê từ công ty bảo mật lớn Bkav, CMC hàng năm Việt Nam có hàng ngàn website bị cơng, năm 2017 có tới 40% số website Việt Nam tồn lổ hổng nghiệm trọng, cho phép hacker có khả ăn cắp sở liệu chí leo quyền, thực thi lệnh tùy ý server Nguy hiểm hơn, số website tồn lỗ hổng nghiêm trọng có khơng website trọng yếu quan nhà nước website tập đoàn kinh tế lớn, quan trọng Tiêu biểu kể tới số vụ xảy vài năm gần liên quan trực tiếp tới việc đảm bảo an tồn thơng tin cho website vụ website Tổng công ty hàng không Việt Nam năm 2016 bị hack khiến thông tin 411.000 hành khách bị phát tán mạng hay vụ rị rỉ thơng tin 163 triệu tài khoản ZingID VNG, công ty internet lớn Việt Nam diễn vào đầu năm 2018 Thực tế cho thấy rõ ràng vấn đề an ninh, bảo mật website, mặt tổ chức nơi chứa nhiều thông tin quan trọng chưa xem xét đầu tư mức, đặt yêu cầu cấp thiết phải nâng cấp khả phịng chống cơng cho website Hồng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 Áp dụng phương pháp học máy phát ngăn chặn cơng web Hình 1.1 Thống kê số lượng website bị công tháng đầu năm 2017 (http://securitybox.vn) Để giúp website có khả tự bảo vệ mức mà khơng địi hỏi chủ nhân website cần có kiến thức bảo mật web, công ty an ninh mạng Việt Nam nói riêng giới nói chung đưa ứng dụng bảo vệ website tự động gọi chung với tên WAF (Web Application Firewall) Tại Việt Nam, số nhà cung cấp sản phẩm dịng WAF kể tới Bkav, Viettel, Cystack… Tuy nhiên doanh nghiệp này, công nghệ sử dụng chủ yếu chặn cơng dựa việc phân tích http traffic phát công dựa phương pháp signature-based Điểm yếu phương pháp chủ yếu tập trung vào kiểu cơng, từ chuyên gia bảo mật dựa vào đặc điểm từ khóa, pattern để tạo lên luật nhằm lọc ngăn chặn traffic thỏa mãn điều kiện hay nói cách khác traffic giống với đặc điểm cơng bị ngăn chặn Điều địi hỏi cần có đội kĩ sử bảo mật ln ln túc trực để liên tục cập nhật luật để chống lại công phát hiện, mà bối cảnh có đến trăm ngàn kiểu traffic cơng khác nhau, lại có hình thức cơng phức tạp, khó viết luật phương pháp sau thời gian dẫn tới vấn đề khó dùy trì, quản lý, tập luật lớn theo thời gian thời gian xử lý lớn gây loạt vấn đề hệ thống khác Hơn nữa, phương pháp tiếp cận signature-based lại khơng có khả phát lỗ hổng chưa cơng bố hay cịn gọi zero-day, phương pháp mà cách hacker mũ đen chuyên nghiệp thường dùng để công vào hệ thống quan trọng, bảo vệ kĩ nhiên lại phương pháp bảo vệ hầu hết lại có tác dụng dạng cơng cơng bố Vì vậy, để giải khó khăn việc phát triển WAF, đồ án này, muốn đề xuất mơ hình học máy đóng vai trị định việc phát cơng web Mơ hình học máy thay việc chạy theo phương thức cơng cần tập trung vào ứng dụng web mà bảo vệ, dựa thuộc tính, đặc điểm ứng dụng web để phát traffic độc hại Qua dễ thấy vượt trội phương pháp phát ngăn chặn công nhằm vào ứng dụng web dựa học máy việc dễ dàng bảo trì, mở rộng, khơng cần có đội ngũ theo dõi cải tiến ngày đêm để cập nhật khả đánh chặn kiểu công Thay vào đó, ta việc cập nhật lại tập liệu học trường hợp có thay đổi nội dụng, cấu trúc website, việc diễn nhanh chóng, dễ dàng hầu hết công đoạn thực cách tự động không cần nhiều đến can thiệp kĩ sư chun Hồng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 Áp dụng phương pháp học máy phát ngăn chặn cơng web trách Ngồi ra, cách tiếp cận việc khai thác lỗ hổng zero-day dễ dàng bị phát hiện, không khác so với lỗ hổng thơng thường Bố cục đồ án Trong đồ án này, xin trình bày vấn đề sau: • Tổng quan ứng dụng vấn đề bảo mật cho ứng dụng web: Chương đem đến nhìn tổng quan ứng dụng web mơ hình, thành phần, thức hoạt động, cách thức liên kết thành phần đặc trưng thông thường ứng dụng web Ngồi ra, tơi đề cập đến vấn đề bảo mật web giới thiệu WAF (Web Application Firewall) giải pháp ưa chuộng việc triển khai hệ thống phát chống công cho hệ thống website • Các nghiên cứu liên quan: Trong chương này, ta điểm qua hướng tiếp cận theo phương pháp truyền thống lẫn phương pháp sử dụng học máy nghiên cứu công bố báo cáo năm gần để thấy kết tiến nghiên cứu báo công bố lĩnh vực phát cơng bảo mật nhằm vào website • Phương pháp đề xuất kết thu được: Đây chương quan báo cáo đồ án tốt nghiệp này, tập trung phân tích cách chi tiết vào mơ hình học máy tơi đề xuất, kết mơ hình cải tiến so với nghiên cứu cơng bố trước thực tập liệu, định hướng phát triển cải tiến tương lai • Mơ hình triển khai thực tế: Để chứng minh cho khả ứng dụng phương pháp học máy đề xuất vào việc bảo vệ website thực tế, chương xin đề xuất hệ thống phát bảo vệ website theo thời gian thực thử áp dụng hệ thống thực tế để bảo vệ website thật trước request công Do hệ thống mức thử nghiệm đơn giản, thực chức cốt lõi nên xin đưa số định hướng phát triển tương lai để thực biến hệ thống trở thành chắn hiệu website phức tạp chịu tải lớn Hoàng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 Áp dụng phương pháp học máy phát ngăn chặn công web II Tổng quan ứng dụng web vấn đề bảo mật cho ứng dụng web Ứng dụng web Ứng dụng web từ lâu trở thành thành phần cốt lõi mạng internet đối tượng tương tác người dùng internet Các ứng dụng web dù có quy mơ khác tuân theo kiến trúc Hình 2.1 Kiến trúc ứng dụng web (nguồn internet) Hình cho ta thấy kiến trúc ứng dụng web bao gồm: webserver, file service/script (ứng dụng web), sở liệu (database) Trong webserver đóng vai trị tiếp nhận điều phối khí có request từ phía client Các yêu cầu sau webserver tiếp nhận chuyển đến service (thuộc ứng dụng web) tương ứng, ứng dụng web làm nhiệm vụ phân tích yêu cầu request trả tài nguyên tương ứng cho client thông qua webserver Cơ sở liệu đóng vai trị lưu trữ, cung cấp thơng tin cho ứng dụng web q trình xử lý request Các webserver phổ biến kể tới Apache, Nginx, IIS, Tomcat… Các ứng dụng web tùy thuộc vào yêu cầu triển khai mà tạo nên ngơn ngữ lập trình khác C#, Java, Python, PHP… Cịn sở liệu có số tên quen thuộc SQLServer, MySQL, MongoDB, Oracle Ngồi ra, tùy thuộc vào độ phức tạp, quy mô, yêu cầu việc phát triển mà website có thêm nhiều thành phần khác Message Queue, Proxy, Cache Client Webserver liên lạc với giao thức HTTP HTTPS (một dạng mở rộng HTTP với khả mã hóa liệu đường truyền) HTTP viết tắt Hypertext Transfer Protocol, cho phép giao tiếp giữu Client Server, stateless protocol, hoạt động dựa giao thức TCP/IP, mặc định thơng qua Hồng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02 Áp dụng phương pháp học máy phát ngăn chặn công web cổng 80 HTTP 443 HTTPS Giao thức bao gồm hai thành phần http request (gửi từ client lên server) http response (phản hồi từ server cho client) Hình 2.2 Cấu trúc HTTP request HTTP response Các vấn đề bảo mật web Vấn đề bảo mật website cân nhắc cảnh báo từ ngày đầu mà ứng dụng web có mặt internet Có nhiều dạng công web khác nhau, danh sách loại lỗ hổng web đánh giá có mức độ nguy hiểm cao ứng dụng web thống kê OWASP [16] - tổ chức phi lợi nhuận tiếng giới hoạt động với mục đích phổ biến kiến thức bảo mật web, phương pháp phòng chống cho người dùng, tổ chức, doanh nghiệp khắp giới: • Tồn file cũ: Các files cũ không sử dụng lưu lại server vơ tình tiết lộ nhiều thơng tin nhạy cảm để hacker truy cập • File mặc đinh: Các file mặc định server nới hacker dễ dàng truy cập tìm kiếm thơng tin nhạy cảm • Lộ mã nguồn website: Việc lộ lọt cho phép hacker nắm mã nguồn website thực tìm kiếm lỗ hổng nghiêm trọng dựa • Các HTTP method nguy hiểm: Một số method http cho phép thực việc chỉnh sửa, xóa file server PUT, DELETE • Chèn CRLF: Lỗ hổng cho phép chèn kí tự đặc biệt làm thay đổi cấu trúc gói tin chí thực thi câu lệnh tùy ý • Không hạn chế truy cập: Việc không hạn chế truy cập vào tài nguyên quan trọng trang quản trị kẽ hở lớn tạo hội cho hacker truy cập sâu vào hệ thống Hoàng Phú Hoan: 20131522 Khóa K58 Lớp CNTT1.02

Ngày đăng: 28/01/2024, 15:05

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

Tài liệu liên quan