Chương 1. TONG QUAN ĐỀ TÀI.----2:+cs22+22SE222EE215122.eecr 2 Re acc na. Mục tiêu của để tài. Đối tượng, phạm vi nghiên cứu.
Đối tượng nghiên cứu:. Tính mới và tính ứng dụng của đề tài .-----ccccccrrrceecverrrrreererrrrrrrreerer 4 Chương 2. «SH HH HH HH HH 5 2. Giới thiệu về NGINX.
Nguyên lý hoạt động của NGINX. Các tính năng chính của NGINXX. Phương pháp tao và biên dịch mô-đun trong NGINX.--«css ng Hàng HH. HH HH HH.
Khái niệm R€V€TS€ DfOXV .--- 5s: 5+k*‡EEHEHHHH HH HH nh 7 2. Mô hình reverse DTOX.---s-sz x 2HYnHHHHHHHYHHYHHỶ HH Hà HH Hàng 7 2. Web Application FIrewalÏ. «HH nà HH Hà Hà HH Hà HH HH HH1 9 2.
Giới thiệu về Modsecurify. ModSecurity Core Rule Set (CRS):. Natural Language Processing (NILP).---cs«ecei HH Hiy 17 2. Giới thiệu về NLP.
Ứng dụng của NLP.---cs2eccetrrerErreretrrrrvrrirrtrrrrrrrrrrrrrrrerre 17 Chương 3. THIẾT KẾ HỆ THỐNG. Tổng quan về hệ thống. Tiền xử lí dữ liệu.
Triển khai các mô hình. Kiến trúc mô hình Birectional-LSTM. Tổng quan mô hình Bidirectional-L/STM:. Chi tiết quy trình hoạt động của hệ thống.
Yêu cầu được gửi từ máy tan công đến Reverse proxy -WAE. Yêu cầu được xử lý tai máy Reverse proxy — WAE. Yêu cầu được gửi từ máy Reverse proxy — WAF đến máy chủ web. HIỆN THỰC HE THỐNG VA THỰC NGHIỆM.
Hiện thực hệ thống. Mô hình triển khai. Câu hình các máy thực nghiệm. Dữ liệu và tiền xử lí.
HH HH HH1 re. Tiền xử lý dữ liệu trong NGINX. Triển khai ModSecurity vào NGINX. Triển khai mô hình học máy vào NGINX.
Triển khai các mô hình khác.------s+++ccettreccvttrrrerrrrrrrrrrrre 62 cao hố ẽẽẽ. 65 “AI (in 2 nh <S. Kết quả thực nghiệm trên Python.----es2+ccestrcc+trrerrrrrret 66 4. So sánh kết quả thực nghiệm với các mô hình khác.
Chạy thực nghiệm trên NGINX. Trường hợp WAF chỉ sử dụng Modse€CUTIfy. Trường hợp WAF tích hợp Modsecuirty và mô hình Bidirectional- Chương 5. KẾT LUẬN VA HƯỚNG PHAT TRIỂN.----2+-z2trzztrrz+2 78 ca sẽ.
Kết quả đạt tt Cesssssssssssssssessssssssssssssssesssssesassessesessssssssssesnsssessssessssessssessstesses 79 No phat in. 82 Hình 1: Các chức năng chính của NGINX.- si 6 Hình 2: Mô hình hoạt động của Reverse Proxy .-e--cceercrrterrrrrtrrerrriirrrrrrrrrie 8 Hình 3: Mô hình sử dụng Web Application FIrewalÏ.---‹c-e-e-ceexeerreeeeere 9 Hình 4: Mối quan hệ giữa AI, Machine Learning va Deep Learning. 11 Hình 5: Lịch sử deep learning Hình 6: Mạng nƠ-TOH. --- 5c 5s< xxx HH HH HH HH HH Hàng nnrrkg Hình 7: Mô hình tổng quan về hệ thống đề xuất .:+:cccccerrrreeeceeerrrree 19 Hình 8: Mô hình Bidirectional LŠ TÌM.--c--cxceksrxrekiirritkiriiririiirrriee 25 Hình 9: Phân tách đường dẫn dựa vào những kí tự đặc biệt.-- 39 Hình 10: Phân tách dữ liệu dựa vào những kí tự đặc DIGt .‹---«-©5<«- 40 Hình 11: Đường dan được đưa về dang thống nhắt.---+--s++czstree 42 Hình 12: Chuyển đường dẫn về dạng mảng $6 .ccec:iiiceeeveerrrrresvevrrrrre 43 Hình 13: Dữ liệu được chuyên sang dạng thống nhất.-iiiiccccevverrrrrrrrrreeeeee 47 Hình 14: Dữ liệu được chuyên sang dạng mảng sỐ.-------s++cesree 48 Hình 15: Mô hình được tải thành công vào NGINX.-«c-cceceeerreree 62 Hình 16: Mô hình Simple 1moelL.- ---s+-s<5seSxs+Extsrxerrtetrttrrkrtrkrrrrrrtkrtrrkrrrree 62 Hình 17: Mô hình LLS”TÌM.----c-Scccc+rirtrirtritErtiriiiriiiiiiiiiirirrree 63 Hình 18: Mô hình CNN for TT€X(.s-- 5c c2 ren 63 Hình 19: Mô hình CNN-LSTMou.
esseessssecseessseesseesneesstersseesstessseesneesssessseersessneesaseesseesaensneenes 64 Hình 20: Thực nghiệm trên 20% bộ dữ liệu bat thường CSIC chỉ sử dung MMOCS€CUTIẨY .seseesstesseessesstesseesseenseeseesseensecnseeseenseensecsesnseensesseenseeaseeaeenseeaeesessneeaesseessesaeeaeesseenseeaeesees 67 Hình 21: Thực nghiệm trên 20% bộ dữ liệu bình thường CSIC chỉ sử dụng ]MOS€CUTTẨV ,. 5c St HT HH HH HH TH HH TH HH TH HH HH HH grnkkg 68 Hình 22: Thực nghiệm trên 20% bộ dữ liệu bất thường FWAE chỉ sử dụng ]MOS€CUTIẨY. 55c se HH HHHHHHYnHYHY HA Hà Hà Hà THẾ HH HÌn HH HH HH1 01100110. 69 Hình 23: Thực nghiệm trên trên 5000 requests đầu trong 20% của bộ dữ liệu bình thường FWAF chỉ sử dụng ModS€CurIfy.«-cc<ccxeisrieekirttriikriiiriirirrree 69 Hình 24: Thực nghiệm trên 20% dữ liệu bắt thường của bộ HttpParams chỉ sử dụng MOS€CUTTẨY.
ch Hà Hà Hà Hà HH HH HH HH HH1 g1 rnrykg 70 Hình 25: Thực nghiệm trên 20% dữ liệu bình thường của bộ HttpParams chỉ dử dụng MOCS€CUTIẨV. 5c 5+ tt tr HH HH HH1 HH1 H111 1111k rrrkke 71 Hình 26: Thực nghiệm trên 20% bộ dữ liệu bat thường CSIC sử dung mô-đun mới Hình 28: Thực nghiệm trên 20% bộ dữ liệu bat thường FWAF sử dung mô-đun mới —.Ô 73 Hình 29: Thực nghiệm trên 5000 yêu cầu đầu của bộ dữ liệu bình thường của FWAB sử dụng mô-đun THỚI. --s-- << 5£5<£+x*SEE*EEE+kSEEEEErEEkrEkkttrktkkrrkkrrrkrrkrrkrrrerrkeee 74 Hình 30: Thực nghiệm trên 20% dữ liệu bất thường của HttpParams sử dụng mô- GUT 0. 75 Hình 31: Thực nghiệm trên 20% dữ liệu bình thường HttpParams sử dụng mô-đun TIO cesssssesssssseensssseesesnsseesssseessssseseesnseenessseensssseeessssseeesssseesssnseesessueenssnseesssssseeessuseessssseenensseensssseensanseeessnans 75 DANH MỤC BANG BANG 1: CÁC TU KHOA ĐƯỢC ĐỊNH NGHĨA.
2-2-5 sccxccezxxe2 22 BANG 2: BANG ANH XA CHUYEN DOI TỪ. - 2-52 52S+E‡EEeEEeEererxrree 23 BANG 3: SO LƯỢNG BO DU LIEU SAU KHI LỌC.-- c5 s2 s+c+ +2 33 BANG 4: KET QUA DU DOAN CUA MO HINH TREN CAC BO DU LIỆU.ó6 BANG 5: KET QUA SO SANH GIỮA MO HINH DE XUẤT VA CÁC MÔ HÌNH KHACwoe ccccccsesscsscssessesscsscsscsvcsvcsssesscsussucsucsucsussessesuesussucsussvssessesaesussueassssseseesseseesnease 66 BANG 6: CÁC CHỈ SO TREN DU LIEU THU NGHIEM KHI CHUA TÍCH HỢP MÔ-ĐUƯN. SG 5n TT 11121111011211111111 1111111111111 1111111111111 Tre 71 BANG 7: CÁC CHỈ SO TREN DU LIEU THU NGHIỆM KHI ĐÃ TÍCH HOP MO-DUN oeeccccecsscsssessessesssessessessvssuessesssssucsuessesssssvssussuesssssecsussssssessssssessesstessesseeseesseas 76 BANG 8: SO SÁNH KET QUÁ THỰC NGHIỆM GIỮA MODSECURITY VA \(055910)8)1900 12 —. 76 DANH MỤC TỪ VIET TAT WAF Web Application Firewall CRS Core Rule Set NLP Natural Language Processing XSS Cross Site Scripting CBOW Continuous Bag-of-Words NLP Natural Language Processing LSTM Long Short-Term Memory CNN Convolutional Neural Network RNN Recurrent Neural Network DANH MỤC TỪ TẠM DỊCH Học máy Machine Learning Học sâu Deep Learning Mô hình Model Mô-đun Module Nơ ron Neuron Tường lửa Firewall Phiên Session TOM TAT KHÓA LUẬN Các cuộc tan công mạng đang ngày càng phổ biến, các cuộc tấn công diễn ra dưới rất nhiều kỹ thuật và hình thức khác nhau, cách thức tấn công cũng thay đổi dần nên các hệ thống phát hiện xâm nhập dựa vào dấu hiệu là không hiệu quả, thay vào đó, các hệ thống phát hiện xâm nhập sử dụng học máy thường chứng tỏ ưu thế hơn trong việc phát hiện các cuộc tan công mới.
Đề đạt được độ chính xác cao, cần có tập dit liệu lớn và có thé bao gồm nhiều cuộc tan công khác nhau. Trong nghiên cứu này, nhóm tác giả đề xuất một hệ thống phát hiện xâm nhập dựa trên học máy, bên cạnh đó, chính hệ thông này sẽ được tích hợp vào NGINX như một module. Mục dich của việc này nhằm tăng được khả năng bảo vệ dành cho tường lửa, nâng cao khả năng phân biệt và ngăn chặn những yêu câu độc hại. TONG QUAN DE TÀI 1.
Giới thiệu về đề tài Trong khoảng thời gian 5 năm trở lại gần đây, ứng dụng doanh nghiệp ngày càng có xu hướng chuyền đổi từ ứng dụng desktop sang ứng dụng web. Các cuộc tấn công mạng nhăm vào các máy chủ web và ứng dụng web vẫn đang là một trong những van đề chủ chốt cần được chú trọng trong một doanh nghiệp đang sử dụng công nghệ. Các cuộc tấn công vào các ứng dụng web ngày càng trở nên phức tạp và khó bị phát hiện hơn. Do đó, việc triển khai các biện pháp để bảo vệ các ứng dụng web nhằm tránh khỏi các cuộc tan công là một công việc hết sức cần thiết.
Mặc dù các nhà phát triển ứng dụng web đã triển khai các biện pháp phòng thủ, nhưng các cuộc tan công vẫn không ngừng phát triển nên nhu cầu về phan mềm hoặc sản phẩm chủ yếu dé hỗ trợ các quy trình phòng thủ nham nâng cao mức độ bảo vệ web đã trở nên cấp thiết. Một trong những phương pháp được sử dụng phố biến nhất hiện nay là Web Application Firewall (WAP). Các WAF thông thường hoạt động bang việc sử dụng chữ ky (signature), chúng nhận biết cuộc tắn công thông qua dấu hiệu riêng biệt của nó, điều này dựa trên một cơ sở dữ liệu có sẵn nên nó yêu cầu cơ sở dit liệu lớn. Bên cạnh đó việc phụ thuộc vào cơ sở dir liệu va các logic và quy tắc được mã hóa cứng (sử dụng lập trình truyền thống) cũng ton tại những hạn chế nhất định.
Trong những thập kỷ gần đây, trí tuệ nhân tạo đã trở thành một cuộc cách mạng khoa học và đạt được ưu thế trong việc làm chủ công việc mà con người làm. Các nhà nghiên cứu và chuyên gia bảo mật thông tin đã đặc biệt chuyền sang khai thác khả năng của trí tuệ nhân tạo dé phat hién va chéng lại các cuộc tan công. Với mong muốn có thê tận dụng tối đa những gì đã có nhưng vẫn có thể nắm bắt được xu hướng hiện tại, trong khóa luận tốt nghiệp này nhóm tác giả sẽ thực hiện triển khai một WAF kết hợp giữa một WAF thông thường và machine learning. Mục đích của việc kết hợp này là có thé đưa ra một WAF có thé hoạt động hiệu quả, không chỉ phát hiện được những cuộc tấn công đã có chữ kí mà còn có khả năng phát triển xa hơn, phát hiện được những cuộc tấn công mới.
Mục tiêu của đề tài Mục tiêu của nhóm hướng đến là có thé dé có thể xây dựng một mô-đun có thé ngăn chặn được các cuộc tan công Web sử dụng Web Application Firewall như thông thường. Nhưng bên cạnh đó nhóm kết hợp với học máy đề có thé phát hiện được những tân công mới, đây là những cuộc tân công chưa có chữ ký. Cụ thê, mục tiêu của dé tài như sau: Nghiên cứu và sử dụng được một Web Application Firewall thông thường, cụ thê trong khóa luận tốt nghiệp này nhóm sẽ sử dụng ModSecurity. Thực hiện tích hợp và triển khai ModSecurity vào Nginx.
Hiểu được những hạn chế còn tổn tại trong một Web Application Firewall thông thường, nhóm sẽ thực hiện tích hợp các phương pháp hiện đại, cụ thể ở đây là Machine Learning dé có thé khắc phục các hạn chế còn tồn đọng. Đề xuất một phương pháp không những phát hiện được những cuộc tấn công đã có (những cuộc tân công đã có signature và được lưu trong database) mà còn có thé phát hiện được những cách tan công mới. Từ phương pháp đã đề xuất, nhóm phát triển một mô-đun cho Nginx có khả năng phát hiện được những cách tan công web hoạt động ở mức tốt. Cuối cùng, nhóm sẽ thực hiện những kịch bản tan công thực tế để có thể đánh giá được mức độ hoạt động của hệ thống mà nhóm đã xây dựng.
Đối tượng, phạm vỉ nghiên cứu 1. Đối tượng nghiên cứu: Công cụ Nginx va Reverse Proxy Cách viết và biên dich (compile) một mô-đun Nginx Web Application Firewall (ModSecurity) Cac phuong phap hoc may 1.