Bối cảnh và vấn đề nghiên cứu

Trong bối cảnh công nghệ thông tin phát triển và xu hướng chuyển dịch mạnh mẽ từ các ứng dụng truyền thống (desktop) sang nền tảng web trong giai đoạn 5 năm gần đây, máy chủ web và các ứng dụng web đã trở thành mục tiêu hàng đầu của các cuộc tấn công mạng. Theo báo cáo từ tổ chức Gartner được tác giả trích dẫn, có tới 75% các hành vi tấn công an ninh mạng xảy ra tại tầng ứng dụng (Application Layer - Tầng 7 trong mô hình OSI). Kẻ tấn công tập trung khai thác các máy chủ web vì hai nguyên nhân chính:

  1. Chiếm đoạt và khai thác trái phép hàng triệu thông tin dữ liệu người dùng được lưu trữ trong cơ sở dữ liệu (chẳng hạn như mã định danh cá nhân, địa chỉ, thông tin tài khoản ngân hàng) để trục lợi thương mại.
  2. Cài cắm mã độc vào tài liệu nguồn trên máy chủ nhằm chuyển hướng hoặc xâm nhập thiết bị của người dùng khi họ duyệt hoặc tải xuống các tài nguyên này.

Để thiết lập cơ chế bảo vệ ứng dụng web, phương pháp phổ biến là triển khai Tường lửa ứng dụng web (Web Application Firewall - WAF). Tuy nhiên, các WAF truyền thống (tiêu biểu như ModSecurity sử dụng bộ luật OWASP Core Rule Set) hoạt động chủ yếu dựa trên cơ chế nhận diện chữ ký mẫu (signature-based) và các bộ lọc biểu thức chính quy (regular expressions). Phương thức này bộc lộ hạn chế cố hữu: phụ thuộc hoàn toàn vào cơ sở dữ liệu chữ ký đã biết, logic quy tắc mã hóa cứng, không có khả năng phát hiện các biến thể tấn công mới chưa từng được định nghĩa (unknown attacks / zero-day) hoặc các kỹ thuật làm mờ (obfuscation), vượt qua bộ lọc (bypass).

Từ thực tiễn đó, đề tài khóa luận "Phát triển mô-đun tường lửa ứng dụng web tích hợp học máy cho NGINX" được thực hiện nhằm giải quyết bài toán tích hợp mô hình học máy vào hệ thống tường lửa ứng dụng web trên máy chủ NGINX để tự động phân loại, ngăn chặn lưu lượng độc hại mà vẫn đảm bảo tốc độ xử lý yêu cầu.

Mục tiêu và nhiệm vụ nghiên cứu

Khóa luận xác định các mục tiêu và nhiệm vụ nghiên cứu cụ thể như sau:

  1. Nghiên cứu nguyên lý hoạt động và triển khai giải pháp WAF truyền thống ModSecurity trên nền tảng NGINX hoạt động dưới vai trò Reverse Proxy.
  2. Phân tích các hạn chế của WAF truyền thống dựa trên luật (rule-based WAF) và xác định phương pháp học máy (Machine Learning / Deep Learning) phù hợp để khắc phục.
  3. Đề xuất quy trình tiền xử lý, chuẩn hóa dữ liệu URL và xây dựng mô hình học sâu có khả năng phát hiện cả các vector tấn công đã có chữ ký lẫn các hành vi tấn công mới.
  4. Phát triển, biên dịch một mô-đun mở rộng viết bằng ngôn ngữ C cho NGINX nhằm tích hợp mô hình học máy đã huấn luyện vào luồng xử lý lưu lượng HTTP/HTTPS thực tế.
  5. Xây dựng môi trường thực nghiệm, thiết lập các kịch bản tấn công và đo lường độ chính xác cùng độ trễ xử lý để đánh giá hiệu năng toàn diện của hệ thống đề xuất.

Đối tượng và phạm vi nghiên cứu

  • Đối tượng nghiên cứu:
    • Máy chủ web NGINX và cơ chế hoạt động của Reverse Proxy.
    • Cấu trúc, phương pháp lập trình và quy trình biên dịch mô-đun (dynamic module) cho NGINX.
    • Tường lửa ứng dụng web ModSecurity cùng bộ quy tắc cốt lõi ModSecurity Core Rule Set (CRS).
    • Các kỹ thuật học máy, học sâu và xử lý ngôn ngữ tự nhiên (NLP) áp dụng trong phân loại chuỗi truy vấn (URL/HTTP request).
  • Phạm vi nghiên cứu:
    • Xây dựng mô hình Reverse Proxy đứng trước máy chủ web nội bộ sử dụng NGINX.
    • Phát triển mô-đun WAF tích hợp mô hình học sâu cho NGINX bằng ngôn ngữ C.
    • Tập trung xử lý và phát hiện các dạng tấn công web phổ biến gồm SQL Injection (SQLi), Cross-Site Scripting (XSS), Command Injection và Local File Inclusion.
    • Thời gian thực hiện đề tài: Từ ngày 05/09/2022 đến ngày 09/12/2022 (nghiệm thu tháng 01/2023).

Cơ sở lý thuyết và phương pháp

Khung lý thuyết và mô hình sử dụng

Khóa luận xây dựng trên các nền tảng lý thuyết và công nghệ chính sau:

  • Kiến trúc NGINX và Reverse Proxy: NGINX hoạt động dựa trên kiến trúc hướng sự kiện (event-driven) và xử lý bất đồng bộ (asynchronous), cho phép quản lý hàng ngàn kết nối đồng thời với mức sử dụng tài nguyên tối ưu. Với vai trò Reverse Proxy, NGINX tiếp nhận toàn bộ lưu lượng HTTP/HTTPS từ mạng ngoài, lọc và chuyển tiếp các yêu cầu hợp lệ đến Web Server nội bộ.
  • Tường lửa ModSecurity và bộ luật CRS: ModSecurity đóng vai trò là tầng lọc luật (Rule Engine), sử dụng OWASP ModSecurity Core Rule Set để phát hiện các lỗ hổng theo chuẩn OWASP Top 10 thông qua cơ chế kiểm tra mẫu chuỗi và biểu thức chính quy.
  • Xử lý ngôn ngữ tự nhiên (Natural Language Processing - NLP): Xem xét mỗi chuỗi yêu cầu URL như một chuỗi văn bản cần trích xuất ngữ cảnh cú pháp.
  • Mô hình nhúng từ Word2Vec (Continuous Bag-of-Words - CBOW): Ánh xạ các từ khóa hoặc token trong URL thành các vector thực trong không gian liên tục nhiều chiều. CBOW dự đoán từ trung tâm $X_i$ dựa trên ngữ cảnh $k$ từ xung quanh thông qua biểu diễn ẩn: $$h = \frac{1}{k} W \left(\sum_{j=1}^{k} X_j\right)$$ và đầu ra xác suất: $$Y_i = \text{Softmax}(W'^T \cdot h)$$
  • Mạng nơ-ron hồi quy hai chiều (Bidirectional LSTM): Mạng Bidirectional Long Short-Term Memory cho phép mô hình duyệt và ghi nhớ thông tin ngữ cảnh của chuỗi URL theo cả hai chiều (từ trái sang phải và từ phải sang trái), hạn chế tình trạng mất mát thông tin đối với các chuỗi dài so với mạng RNN truyền thống.

Phương pháp nghiên cứu

  • Phương pháp chuẩn hóa và làm giàu dữ liệu (Data Normalization): Thiết lập thuật toán phân tích cú pháp URL, tách biệt các dấu câu, ký tự đặc biệt và thay thế các chuỗi tham số ngẫu nhiên bằng các định danh thống nhất nhằm thu gọn kích thước không gian từ vựng nhưng vẫn bảo toàn cấu trúc ngữ nghĩa của vector tấn công.
  • Phương pháp thực nghiệm mô hình học sâu: Huấn luyện, đánh giá và so sánh nhiều kiến trúc mạng nơ-ron khác nhau gồm Simple Model, CNN (Convolutional Neural Network), LSTM đơn luồng, mô hình kết hợp CNN-LSTM và mô hình đề xuất Bidirectional-LSTM trên môi trường Python trước khi triển khai thực tế.
  • Phương pháp đóng gói và lập trình hệ thống: Sử dụng C API để tải (load) và thực thi mô hình học máy bên trong mã nguồn C của mô-đun NGINX, kết hợp cơ chế biên dịch dynamic module với cờ --with-compat.
  • Nguồn dữ liệu thực nghiệm: Khóa luận sử dụng các bộ dữ liệu chuẩn học thuật và an toàn thông tin bao gồm: Bộ dữ liệu CSIC, bộ dữ liệu FWAF và bộ dữ liệu HttpParams.

Thiết kế và triển khai

Kiến trúc tổng thể hệ thống

Hệ thống được thiết kế theo mô hình 3 thành phần chính:

  1. Attacker (Máy tấn công): Đóng vai trò phát sinh các luồng lưu lượng truy cập bình thường và các mẫu payload tấn công độc hại (SQLi, XSS, bypass payloads).
  2. Reverse Proxy - WAF (Máy chủ trung gian NGINX): Tiếp nhận toàn bộ lưu lượng trước khi đến máy chủ đích. Tại đây, lưu lượng được kiểm tra qua hai tầng lọc liên tiếp:
    • Tầng 1 - ModSecurity WAF: Kiểm tra chữ ký theo bộ luật Core Rule Set. Nếu phát hiện vi phạm, yêu cầu bị chặn ngay lập tức. Các yêu cầu vượt qua tầng 1 sẽ được chuyển tiếp sang tầng 2.
    • Tầng 2 - Bộ phát hiện học máy tích hợp: Chuỗi URL được module NGINX tiền xử lý theo thuật toán chuẩn hóa, chuyển thành dạng mảng số/vector thông qua bảng ánh xạ và đưa qua mô hình Bidirectional-LSTM đã nạp sẵn vào bộ nhớ để suy luận (inference). Nếu mô hình phân loại là bình thường (Allowed), yêu cầu được chuyển tiếp đến Web Server; nếu phân loại là bất thường (Anomaly/Attack), yêu cầu sẽ bị ngắt và chặn.
  3. Web Server (Máy chủ ứng dụng đích): Nằm ở vùng mạng nội bộ phía sau Reverse Proxy, chỉ tiếp nhận và xử lý các yêu cầu đã được xác thực an toàn qua cả hai tầng kiểm tra.
+---------------+      HTTP Requests      +------------------------------------------+      Forward Valid Traffic      +------------------+
|   Attacker /   | ---------------------> |              NGINX REVERSE PROXY         | ------------------------------> |    WEB SERVER    |
| Client Browser |                        |                                          |                                 | (Internal Host)  |
+---------------+                        |  +------------------------------------+  |                                 +------------------+
                                         |  | Tầng 1: ModSecurity WAF (CRS Rules)|  |
                                         |  +------------------------------------+  |
                                         |                    | (Traffic passed)     |
                                         |                    v                      |
                                         |  +------------------------------------+  |
                                         |  | Tầng 2: Machine Learning WAF Module|  |
                                         |  |  - Chuẩn hóa URL (Normalization)   |  |
                                         |  |  - Nhúng từ (Word2Vec CBOW)        |  |
                                         |  |  - Suy luận Bidirectional-LSTM     |  |
                                         |  +------------------------------------+  |
                                         |                    |                      |
                                         |           [ Block if Attack ]             |
                                         +------------------------------------------+

Quy trình chuẩn hóa dữ liệu URL

Để chuyển đổi các chuỗi URL phức tạp về dạng đồng nhất phục vụ cho mô hình học máy, nhóm tác giả xây dựng thuật toán phân tích và bảng ánh xạ đặc trưng:

Nhãn thay thế (Token) Mô tả quy tắc ánh xạ
PathString Thay thế các thành phần định danh đường dẫn thư mục trong URL
Numbers Thay thế toàn bộ các chuỗi ký tự số [0-9]
PureString Thay thế các chuỗi ký tự chữ cái thuần túy [a-z] và dấu gạch nối -
UniString Thay thế các chuỗi ký tự chứa mã Unicode
HexString Thay thế các chuỗi ký tự định dạng Hexadecimal
MixString Thay thế các chuỗi ký tự hỗn hợp không xuất hiện trong tập dữ liệu huấn luyện
Dấu câu & Định dạng tệp Giữ nguyên các dấu phân tách (/, ?, &, =, +, .) và phần mở rộng (.jsp, .php...)

Các từ khóa đặc trưng cho hành vi tấn công được giữ nguyên theo danh mục:

  • Từ khóa SQL: select, waitfor, delete, insert, limit, replace, drop, order by, create, desc, group by, alter.
  • Từ khóa HTML: doctype, base, area, button, audio, abbr.
  • Từ khóa XSS & Ký tự đặc biệt: alert, br, document, ., [, ], :, ', ".

Kiến trúc chi tiết mô hình Bidirectional-LSTM

Mô hình học sâu được thiết kế với cấu trúc phân tầng liên tục:

Tầng (Layer) Cấu hình & Kích thước đầu ra (Output Shape) Chức năng chi tiết
InputLayer [(None, 556)] Tiếp nhận chuỗi vector số đại diện cho URL có độ dài cố định 556 chiều
Embedding (None, 556, 300) Nhúng từ vựng sang không gian vector 300 chiều thông qua ma trận trọng số Word2Vec
SpatialDropout1D (None, 556, 300) Giảm thiểu hiện tượng quá khớp (overfitting) trên các chiều nhúng
Bidirectional (LSTM) (None, 556, 256) Gồm 256 units LSTM, duyệt chuỗi theo cả hai chiều thuận và nghịch
Conv1D (None, 554, 64) Trích xuất các đặc trưng cục bộ với 64 bộ lọc (filters)
GlobalAveragePooling1D (None, 64) Lấy giá trị trung bình trên các chiều đặc trưng
GlobalMaxPooling1D (None, 64) Lấy giá trị lớn nhất trên các chiều đặc trưng
Concatenate (None, 128) Ghép nối hai đầu ra Pooling trung bình và cực đại thành vector 128 chiều
Dense (None, 2) Tầng kết nối đầy đủ kích hoạt hàm Softmax, đưa ra xác suất nhị phân (An toàn / Tấn công)

Nội dung chính theo từng chương

Chương 1. TỔNG QUAN ĐỀ TÀI

  • Trình bày tính cấp thiết của việc bảo vệ ứng dụng web trước thực trạng gia tăng tấn công tầng ứng dụng theo khảo sát của Gartner.
  • Phân tích hạn chế của các giải pháp WAF truyền thống hoạt động dựa trên tập luật cứng (hardcoded rules) và biểu thức chính quy.
  • Xác định mục tiêu đề tài: Xây dựng giải pháp kết hợp giữa WAF truyền thống ModSecurity và mô-đun học máy trên NGINX để nâng cao khả năng phát hiện các biến thể tấn công mới.
  • Nêu rõ đối tượng, phạm vi nghiên cứu và kế hoạch triển khai từ tháng 09/2022 đến tháng 12/2022.

Chương 2. CƠ SỞ LÝ THUYẾT

  • Giới thiệu tổng quan về máy chủ NGINX, nguyên lý xử lý bất đồng bộ theo hướng sự kiện (asynchronous event-driven), các tính năng cân bằng tải, bộ nhớ đệm, tính sẵn sàng cao và cơ chế mở rộng thông qua dynamic module.
  • Trình bày phương pháp cấu hình Reverse Proxy trên NGINX và quy trình biên dịch mô-đun C với tùy chọn --with-compat.
  • Phân tích nguyên lý hoạt động của WAF, lịch sử phát triển của ModSecurity và bộ luật OWASP Core Rule Set (CRS).
  • Tổng hợp cơ sở lý thuyết về Trí tuệ nhân tạo (AI), Học máy (Machine Learning) và Học sâu (Deep Learning); phân loại các kiến trúc mạng nơ-ron (Feedforward, CNN, RNN, LSTM, Autoencoder, SOM).
  • Khái quát về Xử lý ngôn ngữ tự nhiên (NLP) và ứng dụng kỹ thuật nhúng từ trong bài toán phân loại chuỗi truy vấn web.

Chương 3. THIẾT KẾ HỆ THỐNG

  • Trình bày mô hình kiến trúc tổng quan kết hợp giữa NGINX Reverse Proxy, ModSecurity và bộ phát hiện tấn công học máy.
  • Mô tả chi tiết thuật toán chuẩn hóa dữ liệu URL, các bảng từ khóa định nghĩa cho tấn công SQL Injection, XSS, HTML và bảng ánh xạ chuyển đổi token (PathString, Numbers, PureString, UniString, HexString, MixString).
  • Trình bày kỹ thuật nhúng từ Word2Vec theo kiến trúc Continuous Bag-of-Words (CBOW) và công thức ánh xạ không gian vector.
  • Đặc tả chi tiết từng lớp trong kiến trúc mạng nơ-ron đề xuất Bidirectional-LSTM kết hợp tầng Conv1D và Global Pooling.
  • Thiết lập quy trình luân chuyển dữ liệu từ Client qua Reverse Proxy - WAF đến Web Server nội bộ.

Chương 4. HIỆN THỰC HỆ THỐNG VÀ THỰC NGHIỆM

  • Cấu hình môi trường mạng thực nghiệm gồm máy tấn công, máy Reverse Proxy - WAF và máy chủ web.
  • Trình bày quy trình nhúng mô hình học máy vào mô-đun NGINX bằng ngôn ngữ C thông qua C API.
  • Thực nghiệm huấn luyện và so sánh mô hình Bidirectional-LSTM với các mô hình cơ sở (Simple Model, CNN, LSTM, CNN-LSTM) trên môi trường Python.
  • Tiến hành chạy thực nghiệm kiểm thử trên 20% dữ liệu của các bộ dữ liệu CSIC, FWAF và HttpParams (gồm cả tập dữ liệu bình thường và bất thường, kiểm tra 5000 yêu cầu đầu của tập FWAF).
  • So sánh hiệu quả giữa cấu hình chỉ dùng ModSecurity đơn lẻ và cấu hình tích hợp mô-đun Bidirectional-LSTM trên NGINX.

Chương 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

  • Tổng kết toàn bộ kết quả nghiên cứu: Xây dựng thành công mô-đun NGINX tích hợp mô hình học sâu có khả năng hoạt động trực tiếp trong môi trường Reverse Proxy.
  • Đánh giá khả năng bổ trợ của mô hình học máy đối với các trường hợp tấn công vượt qua được tập luật của ModSecurity.
  • Đề xuất các định hướng phát triển tiếp theo nhằm tối ưu hóa hiệu năng và mở rộng phạm vi phát hiện của hệ thống.

Kết quả và đóng góp

Kết quả thực nghiệm chính

  • Xây dựng hoàn chỉnh chuỗi tiền xử lý dữ liệu: Thuật toán chuẩn hóa URL kết hợp mô hình nhúng từ Word2Vec CBOW cho phép ánh xạ các chuỗi truy vấn có cấu trúc phức tạp thành vector đầu vào cố định 556 chiều, giữ nguyên ngữ nghĩa của các câu lệnh tấn công.
  • Hiện thực thành công mô-đun C cho NGINX: Tích hợp trực tiếp mô hình học sâu vào luồng xử lý của máy chủ NGINX mà không làm gián đoạn khả năng làm việc của hệ thống Reverse Proxy.
  • Hiệu quả phát hiện tấn công trên các tập dữ liệu thực nghiệm:
    • Qua kiểm thử trên 20% dữ liệu bất thường và bình thường của các bộ dữ liệu CSIC, FWAF (bao gồm 5000 requests đầu tiên của tập dữ liệu bình thường) và HttpParams, mô hình Bidirectional-LSTM đề xuất đạt độ chính xác cao hơn so với các mô hình CNN, LSTM đơn luồng và CNN-LSTM.
    • Khi triển khai trên NGINX, hệ thống tích hợp hai tầng (ModSecurity + Bidirectional-LSTM) đã phát hiện và ngăn chặn thành công các lưu lượng tấn công có áp dụng kỹ thuật làm mờ (bypass payloads) mà bộ luật tĩnh của ModSecurity bỏ sót.

Giải pháp và kiến nghị tác giả đề xuất

  • Kết hợp mô hình WAF hai tầng: Tầng 1 sử dụng WAF dựa trên luật (ModSecurity) để lọc nhanh các mẫu tấn công đã biết với độ trễ cực thấp; Tầng 2 sử dụng mô-đun học sâu để phân tích sâu các yêu cầu còn lại nhằm phát hiện các mẫu tấn công phức tạp hoặc biến thể mới.
  • Đưa thuật toán chuẩn hóa URL vào mã nguồn C của NGINX để tối ưu hóa thời gian xử lý chuỗi trước khi đưa vào mô hình học máy.

Đóng góp của đề tài

  1. Đề xuất quy trình chuẩn hóa chuỗi URL linh hoạt với các token đặc trưng, giải quyết được bài toán từ mới chưa xuất hiện trong tập huấn luyện thông qua nhãn MixString.
  2. Thiết kế kiến trúc mạng Bidirectional-LSTM kết hợp Conv1D và SpatialDropout1D tối ưu hóa cho bài toán phân loại chuỗi truy vấn HTTP độc hại.
  3. Chuyển giao thành công mô hình học sâu từ môi trường nghiên cứu Python sang triển khai thực tế dưới dạng mô-đun động trong máy chủ web NGINX bằng ngôn ngữ C.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế

  • Mô hình hiện tại tập trung chủ yếu vào việc phân tích và chuẩn hóa chuỗi đường dẫn (URL) cùng các tham số truy vấn HTTP GET; chưa bao quát toàn diện các phương thức truyền dữ liệu phức tạp khác trong phần thân (body) của HTTP POST hoặc dữ liệu mã hóa đa phần (multipart data).
  • Quá trình suy luận của mô hình học sâu bên trong mô-đun NGINX tạo ra một mức độ trễ tính toán nhất định đối với mỗi yêu cầu so với việc chỉ kiểm tra chuỗi tĩnh đơn thuần của WAF truyền thống.
  • Tập dữ liệu huấn luyện phụ thuộc vào các bộ dữ liệu có sẵn (CSIC, FWAF, HttpParams), cần tiếp tục cập nhật các biến thể tấn công mới phát sinh trong thực tế.

Hướng nghiên cứu tiếp

  • Tối ưu hóa mã nguồn C và cơ chế nạp trọng số mô hình trong NGINX nhằm giảm thiểu tối đa độ trễ xử lý cho từng yêu cầu.
  • Mở rộng thuật toán tiền xử lý để kiểm tra toàn diện cả Header, Cookie và Request Body của các phương thức HTTP khác nhau.
  • Nghiên cứu cơ chế cập nhật trực tuyến (online learning) hoặc tự động tái huấn luyện mô hình khi phát hiện các mẫu lưu lượng bất thường mới trong quá trình vận hành thực tế.

Giá trị tham khảo

Tài liệu khóa luận mang lại giá trị tham khảo chuyên môn cho các đối tượng sau:

  • Sinh viên và học viên chuyên ngành An toàn thông tin, Mạng máy tính: Cung cấp tài liệu tham khảo chi tiết về kiến trúc Tường lửa ứng dụng web, phương pháp cấu hình NGINX Reverse Proxy và cách tích hợp ModSecurity với bộ quy tắc OWASP CRS.
  • Kỹ sư phát triển phần mềm và bảo mật hệ thống: Cung cấp quy trình thực tế về cách lập trình, biên dịch một Dynamic Module cho NGINX bằng ngôn ngữ C, cũng như kỹ thuật nạp mô hình học máy thông qua C API vào quy trình xử lý của web server.
  • Nhà nghiên cứu ứng dụng AI trong an ninh mạng: Đóng vai trò là tài liệu đối sánh về phương pháp chuẩn hóa dữ liệu URL, kỹ thuật nhúng từ Word2Vec (CBOW) và cấu trúc mạng Bidirectional-LSTM trong bài toán phát hiện tấn công web (SQLi, XSS).

Câu hỏi thường gặp

1. Tại sao nhóm tác giả không chỉ sử dụng duy nhất ModSecurity mà phải tích hợp thêm mô hình học máy?

ModSecurity hoạt động dựa trên cơ chế so khớp mẫu biểu thức chính quy (regular expressions) và chữ ký tĩnh đã được định nghĩa trong bộ luật (như OWASP CRS). Khi kẻ tấn công sử dụng các kỹ thuật làm mờ (obfuscation), mã hóa ký tự hoặc tạo ra các biến thể payload mới chưa có chữ ký trong cơ sở dữ liệu, ModSecurity sẽ bỏ sót. Mô hình học máy giúp phân tích cấu trúc ngữ cảnh của toàn bộ URL để nhận diện các hành vi bất thường chưa từng biết trước đó.

2. Thuật toán chuẩn hóa dữ liệu xử lý thế nào đối với các từ không có trong tập huấn luyện nhưng lại xuất hiện trong URL thực tế?

Trong thuật toán chuẩn hóa dữ liệu, nhóm tác giả đã định nghĩa nhãn ánh xạ đặc biệt là MixString. Khi một chuỗi ký tự trong URL thực tế không khớp với các từ khóa đã định nghĩa, không phải dạng số (Numbers), không phải chuỗi thuần (PureString), chuỗi Unicode (UniString) hay chuỗi Hex (HexString), nó sẽ được gán thành token MixString để bảo toàn tính toàn vẹn của cấu trúc URL mà không làm gián đoạn mô hình.

3. Mô hình học sâu đề xuất Bidirectional-LSTM có kiến trúc gồm những tầng nào?

Mô hình gồm các tầng tuần tự:

  • InputLayer (chiều dài 556)
  • Embedding Layer (kích thước vector nhúng 300)
  • SpatialDropout1D
  • Bidirectional(LSTM) (256 units)
  • Conv1D (64 filters)
  • Hai nhánh Pooling song song: GlobalAveragePooling1D và GlobalMaxPooling1D
  • Concatenate (kết hợp hai nhánh thành 128 chiều)
  • Dense Layer (2 đầu ra với hàm kích hoạt Softmax).

4. Quy trình biên dịch một mô-đun động (dynamic module) vào máy chủ NGINX được thực hiện như thế nào?

Để tạo và biên dịch một mô-đun động cho NGINX, cần tối thiểu 2 tập tin: tập tin mã nguồn C và tập tin cấu hình config dạng Bourne shell. Quá trình biên dịch thực hiện qua 2 bước lệnh:

  1. Chạy tập tin cấu hình với cờ tương thích: ./configure --with-compat --add-dynamic-module=<đường_dẫn_mô_đun>
  2. Biên dịch mô-đun bằng lệnh: make modules.

5. Những bộ dữ liệu nào đã được nhóm tác giả sử dụng trong quá trình thực nghiệm?

Quá trình huấn luyện và đánh giá mô hình được thực hiện trên 3 bộ dữ liệu chuẩn: CSIC, FWAF và HttpParams. Quá trình kiểm thử trên hệ thống NGINX sử dụng 20% dữ liệu bình thường và bất thường của các bộ dữ liệu này (bao gồm việc kiểm tra chi tiết trên 5000 yêu cầu đầu của tập FWAF bình thường).


Kết luận

Khóa luận tốt nghiệp của tác giả Đoàn Anh Dũng và Lê Thị Mỹ Duyên đã nghiên cứu và phát triển thành công giải pháp kết hợp giữa Tường lửa ứng dụng web ModSecurity và mô hình học sâu Bidirectional-LSTM trên nền tảng NGINX Reverse Proxy. Bằng việc xây dựng thuật toán chuẩn hóa URL linh hoạt và kỹ thuật nhúng từ Word2Vec CBOW, hệ thống đã nâng cao năng lực phát hiện các dạng tấn công web phức tạp, khắc phục điểm yếu phụ thuộc chữ ký tĩnh của các WAF truyền thống. Đề tài đã hiện thực hóa mô hình từ lý thuyết thành mô-đun động viết bằng ngôn ngữ C tích hợp trực tiếp vào NGINX, mang lại giá trị thực tiễn và tài liệu tham khảo kỹ thuật rõ ràng cho lĩnh vực an toàn thông tin ứng dụng web.