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

Sự phát triển mạnh mẽ của mạng Internet đã mở rộng khả năng kết nối toàn cầu, làm thay đổi phương thức làm việc, học tập, giao tiếp và giao dịch trực tuyến. Hầu hết các dịch vụ phổ biến như thương mại điện tử, truyền thông, thanh toán số và giáo dục đều được vận hành thông qua các ứng dụng web. Do đặc thù lưu trữ khối lượng lớn dữ liệu nhạy cảm của người dùng cá nhân và doanh nghiệp, ứ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.

Báo cáo an toàn thông tin ghi nhận các cuộc tấn công mạng đang gia tăng cả về tần suất lẫn mức độ tinh vi, từ các lỗ hổng zero-day cho đến các biến thể mã độc liên tục biến đổi. Để vượt qua các hệ thống phòng thủ như tường lửa ứng dụng web (WAF), tin tặc liên tục thay đổi cấu trúc payload, định dạng và các tham số truyền vào trong các truy vấn HTTP. Các phương pháp phát hiện xâm nhập truyền thống dựa trên luật (rule-based) hoặc kiểm tra chữ ký gói tin không còn đủ khả năng phát hiện các dạng tấn công mới và phức tạp.

Việc ứng dụng học máy (Machine Learning) và học sâu (Deep Learning) vào an ninh mạng đã đạt được nhiều kết quả khả quan (như các nghiên cứu của Hacer Karacan hay Waleed Bin Shahid đạt độ chính xác trên 99%). Tuy nhiên, phần lớn các mô hình học máy truyền thống phụ thuộc vào việc học có giám sát trên tập dữ liệu tĩnh và chủ yếu tập trung vào một loại tấn công riêng biệt. Trước bối cảnh đó, học tăng cường (Reinforcement Learning - RL) nổi lên như một hướng tiếp cận tiềm năng nhờ khả năng học từ tương tác thông qua thử và sai (trial-and-error), tự động cập nhật chiến lược hành động dựa trên cơ chế phản hồi điểm thưởng và có tiềm năng phát hiện được các cuộc tấn công chưa từng thấy (zero-day).

Khóa luận xác định 4 mục tiêu nghiên cứu cụ thể:

  1. Tìm hiểu các phương pháp học tăng cường.
  2. Xây dựng một mô hình để phát hiện tấn công web sử dụng học tăng cường.
  3. Đưa ra mô hình học tăng cường nhằm phát hiện những cuộc tấn công đã có và có thể phát hiện những cuộc tấn công mới.
  4. Đánh giá kết quả của mô hình đề xuất với các mô hình học máy khác.

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

  • Đối tượng nghiên cứu: Các phương pháp học máy; các mô hình học tăng cường (Q-Learning, Deep Q-Network, Double Deep Q-Network); các bộ dữ liệu nhật ký web HTTP CSIC 2010, FWAP (FWAF), HttpParams và ECML/PKDD 2007; các dạng tấn công ứng dụng web phổ biến.
  • Phạm vi nghiên cứu: Nghiên cứu kỹ thuật biểu diễn và chuẩn hóa các truy vấn HTTP (URL/Payload) thành dữ liệu số mà mô hình máy học có thể xử lý; xây dựng và huấn luyện mô hình học sâu tăng cường DDQN; thực nghiệm đánh giá mô hình trên 3 bộ dữ liệu HTTP CSIC 2010, FWAP và HttpParams.

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

Khung lý thuyết về các dạng tấn công ứng dụng web

Tác giả hệ thống hóa các dạng tấn công web phổ biến cùng dấu hiệu nhận biết đặc trưng:

  • SQL Injection (SQLi): Lợi dụng lỗ hổng xử lý dữ liệu đầu vào để chèn các câu lệnh SQL độc hại vào cơ sở dữ liệu. Dấu hiệu nhận biết là các ký tự đặc biệt (#, --, %00, ', ") hoặc các từ khóa truy vấn (union, select, drop, insert, and, or, order by, waitfor delay).
  • Local File Inclusion (LFI): Đọc hoặc thực thi các tệp tin cục bộ trên máy chủ do ứng dụng không kiểm tra chuỗi đường dẫn. Dấu hiệu thường chứa các từ khóa truy cập tệp hệ thống như etc, passwd, htpasswd, system, usr.
  • Remote File Inclusion (RFI): Khai thác cơ chế tải tệp từ xa để thực thi mã độc từ máy chủ bên ngoài. Dấu hiệu nhận biết là sự xuất hiện của các giao thức và đường dẫn URL bên ngoài như http, https, ftp, file.
  • OS Command Injection: Khai thác lỗ hổng cho phép thực thi lệnh hệ điều hành máy chủ. Dấu hiệu nhận biết gồm các ký tự nối lệnh (&&, ||) và các lệnh Unix/Linux phổ biến (pwd, ls, where, cd, ssh, echo, whoami, useradd, chown, ping, sudo, shutdown).
  • Open Redirect: Ứng dụng điều hướng người dùng đến miền độc hại bên ngoài mà không kiểm tra độ an toàn. Dấu hiệu là các tham số chuyển hướng như redirect_to, checkout_url, domain_name.
  • Carriage Return and Line Feed (CRLF): Chèn các ký tự xuống dòng (%0d, %0a) vào HTTP header nhằm tách phản hồi HTTP hoặc thực thi mã độc.
  • Cross-Site Scripting (XSS): Chèn các đoạn mã JavaScript độc hại để thực thi trên trình duyệt người dùng nhằm đánh cắp cookie, mật khẩu. Dấu hiệu chứa các thẻ và hàm như script, onerror, onmouseover, onload, alert, document, cookie, location.
  • Path Traversal: Sử dụng chuỗi điều hướng thư mục ./, ../ lặp lại nhiều lần để truy cập các tệp nằm ngoài thư mục gốc của web server.

Lý thuyết học tăng cường và các mô hình áp dụng

Mô hình học tăng cường hoạt động dựa trên sự tương tác giữa hai thành phần chính: Môi trường (Environment) và Tác nhân (Agent). Tại trạng thái $S_t$, tác nhân thực hiện hành động $A_t$ theo chính sách (Policy). Môi trường phản hồi bằng phần thưởng $R_t$ và chuyển sang trạng thái kế tiếp $S_{t+1}$. Mục tiêu là tối ưu hóa tổng phần thưởng tích lũy.

Q(S_t, A_t) = Q(S_t, A_t) + alpha * [R_t + gamma * max Q(S_{t+1}, a) - Q(S_t, A_t)]
  • Q-Learning: Thuật toán học tăng cường không mô hình (model-free) sử dụng bảng giá trị $Q(s, a)$ để lưu trữ và cập nhật chất lượng của từng cặp trạng thái - hành động. Khi không gian trạng thái lớn, bảng Q gặp hạn chế về bộ nhớ và tính toán.
  • Deep Q-Network (DQN): Khắc phục nhược điểm của Q-Learning bằng cách sử dụng mạng nơ-ron sâu (DNN/CNN) làm bộ xấp xỉ hàm giá trị $Q(s, a)$.
  • Double Deep Q-Network (DDQN): Biến thể nâng cao của DQN nhằm giải quyết hiện tượng ước lượng giá trị quá cao (overestimation). DDQN tách biệt việc chọn hành động tốt nhất (sử dụng Main Network) và việc ước lượng giá trị của hành động đó (sử dụng Target Network).
  • Chiến lược $\epsilon$-greedy: Cân bằng giữa khám phá (exploration - chọn hành động ngẫu nhiên với xác suất $\epsilon$) và khai thác (exploitation - chọn hành động có giá trị Q lớn nhất với xác suất $1 - \epsilon$). Ban đầu $\epsilon = 1$ và giảm dần trong quá trình huấn luyện.
Q_{target} = R_t + gamma * Q_{target_net}(S_{t+1}, argmax_a Q_{main_net}(S_{t+1}, a))

Nguồn dữ liệu nghiên cứu

Khóa luận sử dụng 4 bộ dữ liệu tiêu chuẩn về an ninh mạng:

  1. HTTP CSIC 2010: Được phát triển tại Viện An ninh Thông tin thuộc Hội đồng Nghiên cứu Quốc gia Tây Ban Nha (CSIC), thu thập từ tháng 8/2009 đến tháng 3/2010. Chứa hàng nghìn yêu cầu HTTP gồm lưu lượng bình thường và các dạng tấn công (SQLi, XSS, CRLF, tràn bộ đệm, lộ tệp tin).
  2. HttpParams: Phát triển bởi Morzeux, gắn nhãn các tham số bình thường và bất thường liên quan đến SQLi, XSS, Command Injection.
  3. FWAF (FWAP): Phát triển bởi cộng đồng FSECURITY nhằm nghiên cứu phát hiện truy vấn web độc hại cho tường lửa máy học.
  4. ECML/PKDD 2007: Dữ liệu chuẩn từ hội nghị ECML/PKDD phục vụ bài toán phân loại tấn công web (SQLi, XSS, RFI).

Thiết kế và triển khai mô hình

Mô hình phát hiện tấn công web đề xuất được xây dựng qua quy trình khép kín gồm ba giai đoạn: Xử lý dữ liệu, Thiết lập môi trường học tăng cường và Huấn luyện mô hình DDQN.

[HTTP Request Thô] 
[Tiền xử lý: Lọc bỏ Header, Giữ URL/Payload]
[Phân tách Token & Ánh xạ Định dạng]
  - State S_t (52 chiều)                           - Main Network (chọn A_t qua e-greedy)
  - Reward R_t (1 nếu đúng, 0 nếu sai)             - Target Network (tính Q_target)

Quy trình tiền xử lý và trích xuất đặc trưng số

  1. Loại bỏ HTTP Header: Do phần tiêu đề thường có cấu trúc lặp lại và không mang nhiều dấu hiệu tấn công, việc loại bỏ header giúp giảm kích thước dữ liệu và loại bỏ trùng lặp. Mô hình chỉ giữ lại thành phần URL và dữ liệu payload (GET/POST).
  2. Phân tách chuỗi (Tokenization): Payload sau khi làm sạch được phân tách thành các token dựa trên các ký tự phân cách (punctuations) và khoảng trắng.
  3. Ánh xạ từ khóa và kiểu dữ liệu: Các token sau phân tách được đối chiếu và phân nhóm theo bảng ánh xạ:
Nhóm dữ liệu Mô tả chi tiết
Number Chuỗi ký tự chỉ chứa chữ số [0-9]
Pure String Chuỗi ký tự chỉ chứa chữ cái [a-z], [A-Z] và dấu -
Unicode String Ký tự Unicode có giá trị mã thập phân lớn hơn 127
Hex String Chuỗi hệ hexa [a-f], [A-F], [0-9]
Punctuations Ký tự đặc biệt: ./ \ - * & | + ? ; = , ' " ( ) < > * ! $ # ^ { } % ~ @ \ [ ] :`
Mix String Chuỗi hỗn hợp không thuộc các phân loại trên
Nhóm từ khóa tấn công Nhóm từ khóa đặc trưng cho SQLi, HTML, OS Command, JavaScript, LFI, RFI, CRLF, RestrictedFile
  1. Vector hóa dữ liệu với 52 thuộc tính: Thuật toán chuẩn hóa quét qua từng token, ưu tiên nhận diện các mẫu dấu hiệu tấn công trước, sau đó tính tần suất xuất hiện của 52 thuộc tính đặc trưng (gồm 37 ký tự đặc biệt và 15 nhóm định dạng/từ khóa).
  2. Chuẩn hóa giá trị: Dữ liệu sau khi đếm được lưu vào ma trận. Nếu giá trị của một ô vượt quá 255, ô đó được gán ngưỡng cắt là 255. Sau đó, toàn bộ ma trận được chia cho 255 để chuẩn hóa về đoạn số thực $[0, 1]$.

Thiết kế hệ thống học tăng cường (DDQN)

  • Thiết kế Môi trường (Environment):
    • Môi trường tiếp nhận tập dữ liệu vector 52 chiều.
    • Cung cấp trạng thái hiện tại $S_t$ cho tác nhân.
    • Nhận hành động dự đoán $A_t$ từ tác nhân ($A_t = 1$: Tấn công, $A_t = 0$: Bình thường).
    • So khớp $A_t$ với nhãn thực tế: nếu dự đoán đúng, phần thưởng $R_t = 1$; nếu sai, phần thưởng $R_t = 0$.
    • Trả về phần thưởng $R_t$ và trạng thái kế tiếp $S_{t+1}$.
  • Thiết kế Tác nhân (Agent):
    • Sử dụng mạng nơ-ron sâu Main Network để tính toán vector giá trị $Q(S_t, {a})$.
    • Áp dụng chiến lược $\epsilon$-greedy để chọn hành động $A_t$.
    • Sử dụng Target Network để tính toán giá trị mục tiêu $Q_{target}$ theo phương trình Bellman: $Q(S, a) = R_t + \gamma \cdot Q_{target}(S_{t+1}, \arg\max_{a'} Q_{main}(S_{t+1}, a'))$
    • Sử dụng hàm mất mát sai số toàn phương trung bình (Mean Squared Error - MSE) giữa giá trị Q dự đoán của Main Network và giá trị $Q_{target}$ để cập nhật trọng số mạng.
  • Tạo Mini-batch: Dữ liệu huấn luyện được xáo trộn ngẫu nhiên và chia thành các mini-batch kích thước $n$ mẫu để đưa vào mô hình theo từng bước thời gian.

Cấu hình môi trường thực nghiệm

  • Hệ điều hành & Phần cứng: Máy chủ Ubuntu 22.02 LTS, 128 GB RAM, vi xử lý Intel Xeon CPU E5-2660 @ 2.00GHz (12 nhân).
  • Phần mềm & Ngôn ngữ: Python 3, nền tảng Conda, Jupyter Notebook, Visual Studio Code.
  • Phân chia dữ liệu: Tỷ lệ 80% cho tập huấn luyện (Train) và 20% cho tập kiểm tra (Test) được chia ngẫu nhiên từ dữ liệu hợp nhất của 3 tập CSIC 2010, FWAF và HttpParams.

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

Chương 1. Tổng quan đề tài

Chương mở đầu phân tích sự bùng nổ của ứng dụng web đi kèm những nguy cơ bảo mật nghiêm trọng. Tác giả trình bày lý do chọn đề tài dựa trên sự cấp thiết của việc bảo vệ dữ liệu nhạy cảm trước các kỹ thuật tấn công ngày càng biến hóa. Đề tài xác định rõ 4 mục tiêu nghiên cứu, đối tượng và phạm vi tiếp cận, đồng thời nhấn mạnh tính mới của việc áp dụng học sâu tăng cường (DDQN) để nâng cao khả năng phát hiện đa dạng các loại tấn công web và khả năng thích ứng trên nhiều tập dữ liệu khác nhau.

Chương 2. Cơ sở lý thuyết và các nghiên cứu liên quan

Tác giả trình bày chi tiết nền tảng lý thuyết về 8 dạng tấn công web thường gặp: SQL Injection, Local File Inclusion (LFI), Remote File Inclusion (RFI), Command Injection, Open Redirect, CRLF, XSS và Path Traversal kèm các minh họa payload thực tế. Tiếp đó, chương giới thiệu bản chất của học máy và học tăng cường thông qua mô hình tương tác Agent - Environment, bài toán kinh điển Cart-Pole và bot cờ vua (Stockfish, AlphaZero). Tác giả phân tích thuật toán Q-Learning, cấu trúc DQN, thuật toán DDQN và chiến thuật $\epsilon$-greedy. Chương cũng điểm qua 4 bộ dữ liệu nghiên cứu (CSIC 2010, HttpParams, FWAF, ECML) cùng các công trình liên quan nổi bật như mô hình MORL phát hiện XSS của Francesco Caturano và mô hình kết hợp GA - RL của Iram Tariq.

Chương 3. Thiết kế hệ thống

Chương 3 mô tả kiến trúc mô hình đề xuất gồm 3 khối chức năng: Chuẩn bị dữ liệu, Định nghĩa dữ liệu và Mô hình học tăng cường. Tác giả trình bày chi tiết thuật toán tiền xử lý: bóc tách HTTP request, loại bỏ header, trích xuất URL/Payload, phân tách token và ánh xạ định dạng. Trọng tâm của chương là danh mục 52 thuộc tính đặc trưng đại diện cho dấu hiệu tấn công web và thuật toán chuyển đổi dữ liệu thô sang dạng số (Data Normalization Algorithm). Tiếp theo, tác giả định nghĩa không gian trạng thái, không gian hành động, cơ chế phản hồi phần thưởng nhị phân ($R \in {0, 1}$) của môi trường và cơ chế cập nhật phương trình Bellman cho mạng DDQN.

Chương 4. Hiện thực mô hình và thực nghiệm

Chương 4 trình bày cấu hình máy chủ thực nghiệm (Ubuntu 22.02 LTS, 128 GB RAM, CPU Intel Xeon E5-2660), môi trường phát triển (Python 3, Conda, VS Code) và các bước hiện thực mã nguồn với hàm phân tích dữ liệu parse_data_from_request(). Tác giả thống kê số lượng mẫu sau khi làm sạch trên 3 bộ dữ liệu CSIC 2010, FWAF và HttpParams, đồng thời thiết lập tỷ lệ phân chia 80% Train và 20% Test. Chương mô tả cấu trúc mạng nơ-ron xấp xỉ hàm Q, các kịch bản thực nghiệm so sánh mô hình đề xuất với các mô hình học sâu khác về độ chính xác và thời gian dự đoán.

Chương 5. Kết luận và hướng phát triển

Chương tổng kết toàn bộ kết quả đạt được của khóa luận: xây dựng thành công quy trình tiền xử lý dữ liệu web thô thành vector 52 đặc trưng số, thiết kế và hiện thực hoàn chỉnh mô hình DDQN phát hiện tấn công web. Cuối cùng, tác giả nêu ra các định hướng nghiên cứu tiếp theo nhằm tối ưu hóa thuật toán và nâng cao khả năng ứng dụng thực tế trong các hệ thống phòng thủ mạng thời gian thực.


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

Kết quả kỹ thuật và xử lý dữ liệu

Khóa luận đã xử lý và làm sạch thành công 3 bộ dữ liệu payload web chuẩn, loại bỏ các yêu cầu trùng lặp và gán nhãn không chính xác. Kết quả phân bố dữ liệu sau tiền xử lý được tổng hợp như sau:

Bộ dữ liệu Số lượng Request bình thường Số lượng Request bất thường (Tấn công)
HTTP CSIC 2010 Đã loại bỏ trùng lặp và làm sạch Gồm SQLi, XSS, CRLF, Buffer Overflow, File Disclosure
FWAF Dữ liệu truy vấn bình thường Dữ liệu tấn công XSS, SQLi từ Internet
HttpParams Dữ liệu tham số bình thường Dữ liệu tấn công SQLi, XSS, Command Injection

Quy trình chuẩn hóa dữ liệu đã chuyển đổi toàn bộ các payload phức tạp sang ma trận số cố định 52 chiều, giúp giảm thiểu không gian tính toán nhưng vẫn giữ trọn vẹn dấu hiệu của 8 dạng tấn công phổ biến.

Danh mục 52 thuộc tính đặc trưng:
- 37 Ký tự đặc biệt: ., /, \, -, *, &, |, +, ?, ;, =, ,, ', ", (, ), <, >, !, $, #, ^, {, }, %, ~, @, `, [, ], :, và các ký hiệu nối lệnh.
- 15 Nhóm định dạng và từ khóa: NullChar, SQL, HTML, JavaScript, OS Command, Number, Pure String, Hex String, Unicode String, Mix String, RFI, LFI, CRLF, RestrictedFile.

Đóng góp của nghiên cứu

  • Đề xuất hướng tiếp cận mới: Áp dụng thành công mô hình học sâu tăng cường DDQN vào bài toán phát hiện tấn công ứng dụng web thay vì chỉ sử dụng các kỹ thuật học máy truyền thống hoặc học có giám sát tĩnh.
  • Xây dựng bộ trích xuất đặc trưng toàn diện: Thiết kế bộ 52 thuộc tính đặc trưng đại diện và thuật toán chuẩn hóa parse_data_from_request() có khả năng bao quát đồng thời nhiều loại tấn công web khác nhau (SQLi, XSS, LFI, RFI, Command Injection, CRLF, Path Traversal, Open Redirect) trên cùng một mô hình xử lý.
  • Tính khái quát hóa cao: Mô hình không bị phụ thuộc vào một tập dữ liệu cố định duy nhất mà có thể huấn luyện và kiểm thử linh hoạt trên nhiều nguồn dữ liệu khác nhau (CSIC 2010, FWAF, HttpParams).

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

Hạn chế

  • Quá trình huấn luyện và đánh giá thực nghiệm hiện tại được thực hiện hoàn toàn trên các bộ dữ liệu tĩnh (offline datasets).
  • Thời gian xử lý và trích xuất 52 thuộc tính trên các luồng dữ liệu mạng thời gian thực (real-time stream) với tải lượng lớn cần tiếp tục được tối ưu hóa để đảm bảo độ trễ thấp nhất.

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

  • Mở rộng tập đặc trưng: Nghiên cứu và cập nhật thêm các thuộc tính nhận diện mới để đối phó với các biến thể payload mã hóa phức tạp hơn.
  • Tối ưu hóa siêu tham số mô hình: Thử nghiệm các cấu trúc mạng nơ-ron sâu khác nhau làm hàm xấp xỉ Q nhằm rút ngắn thời gian huấn luyện và tăng tốc độ dự đoán.
  • Triển khai ứng dụng thực tế: Tích hợp mô hình vào các hệ thống tường lửa ứng dụng web (WAF) hoặc hệ thống phát hiện/ngăn ngừa xâm nhập (IDS/IPS) thực tế để kiểm thử khả năng phòng thủ trực tiếp trước lưu lượng mạng thời gian thực.

Giá trị tham khảo

Tài liệu khóa luận mang lại giá trị tham khảo hữu ích cho:

  • 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 hệ thống hóa về các kỹ thuật tấn công ứng dụng web phổ biến (SQLi, XSS, LFI, RFI, Command Injection, CRLF, Path Traversal) kèm dấu hiệu phân tích payload chi tiết.
  • Người nghiên cứu ứng dụng Trí tuệ nhân tạo trong An ninh mạng: Cung cấp phương pháp luận rõ ràng về cách chuyển đổi bài toán phân loại an toàn thông tin thành bài toán học tăng cường (thiết kế State, Action, Reward, Policy), đặc biệt là kỹ thuật áp dụng thuật toán Double Deep Q-Network (DDQN) để tránh hiện tượng overestimation.
  • Kỹ sư phát triển hệ thống WAF/IDS: Bản mô tả thuật toán chuẩn hóa dữ liệu 52 thuộc tính (parse_data_from_request()) và bảng ánh xạ từ khóa tấn công là nguồn tài liệu thiết kế có thể ứng dụng trực tiếp vào khâu tiền xử lý gói tin trong các module phân tích lưu lượng web.

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

1. Khóa luận sử dụng những bộ dữ liệu nào để huấn luyện và kiểm thử mô hình?

Tác giả sử dụng kết hợp 3 bộ dữ liệu chính gồm HTTP CSIC 2010 (phát triển bởi Viện An ninh Thông tin CSIC Tây Ban Nha), FWAF (phát triển bởi cộng đồng FSECURITY) và HttpParams (phát triển bởi Morzeux), cùng tài liệu tham khảo từ bộ dữ liệu ECML/PKDD 2007. Dữ liệu được chia theo tỷ lệ 80% cho tập huấn luyện và 20% cho tập kiểm tra.

2. Không gian trạng thái (State) và hành động (Action) trong mô hình học tăng cường được định nghĩa như thế nào?

  • Trạng thái ($S_t$): Là một vector 52 chiều biểu diễn tần suất xuất hiện của 52 thuộc tính đặc trưng (gồm ký tự đặc biệt, nhóm định dạng và các từ khóa tấn công) được trích xuất từ URL/Payload của HTTP request và chuẩn hóa về đoạn $[0, 1]$.
  • Hành động ($A_t$): Là phân loại nhị phân do tác nhân đưa ra: $A_t = 1$ đại diện cho hành động phát hiện yêu cầu có chứa tấn công web, và $A_t = 0$ đại diện cho yêu cầu bình thường (không có tấn công).

3. Cơ chế tính điểm thưởng (Reward) của môi trường được quy định cụ thể ra sao?

Sau khi tác nhân gửi hành động $A_t$ cho trạng thái $S_t$, môi trường sẽ đối chiếu $A_t$ với nhãn thực tế của bản ghi dữ liệu. Nếu hành động $A_t$ trùng khớp với nhãn thực tế (dự đoán đúng), môi trường trả về phần thưởng $R_t = 1$. Ngược lại, nếu không trùng khớp (dự đoán sai), phần thưởng nhận được là $R_t = 0$.

4. Vì sao tác giả lựa chọn thuật toán Double Deep Q-Network (DDQN) thay vì Q-Learning hay DQN truyền thống?

Q-Learning truyền thống bị giới hạn khi không gian trạng thái lớn do phải lưu trữ toàn bộ bảng giá trị Q. Trong khi đó, DQN giải quyết được bài toán không gian lớn bằng mạng nơ-ron nhưng dễ gặp hiện tượng ước lượng quá cao (overestimation) giá trị Q. Thuật toán DDQN khắc phục triệt để nhược điểm này bằng cách sử dụng hai mạng nơ-ron riêng biệt: Main Network để chọn hành động tốt nhất và Target Network để đánh giá giá trị của hành động đó.

5. Quy trình chuyển đổi một HTTP request thô thành dạng số diễn ra qua những bước nào?

Quy trình gồm 3 bước chính:

  1. Loại bỏ toàn bộ phần Header của HTTP request, chỉ giữ lại chuỗi URL và Payload.
  2. Phân tách chuỗi payload thành các token nhỏ dựa vào khoảng trắng và ký tự đặc biệt, sau đó ánh xạ token vào các nhóm từ khóa (SQL, HTML, OS Command,...) hoặc kiểu ký tự (Number, Pure String, Hex,...).
  3. Đếm tần suất xuất hiện của 52 thuộc tính đại diện, giới hạn giá trị tối đa mỗi thuộc tính là 255 và chia cho 255 để đưa về vector số thực trong đoạn $[0, 1]$.

Kết luận

Khóa luận tốt nghiệp của tác giả Nguyễn Thị Hải Hà đã nghiên cứu và triển khai thành công mô hình phát hiện tấn công ứng dụng web dựa trên học sâu tăng cường (DDQN). Nghiên cứu đã xây dựng hoàn chỉnh quy trình trích xuất và chuẩn hóa 52 đặc trưng từ các yêu cầu HTTP thô, đồng thời thiết lập môi trường học tăng cường cho phép tác nhân tự động tối ưu hóa quyết định phát hiện tấn công thông qua cơ chế phản hồi điểm thưởng. Thử nghiệm trên các bộ dữ liệu tiêu chuẩn (HTTP CSIC 2010, FWAF, HttpParams) chứng minh tính khả thi của việc ứng dụng DDQN trong bảo mật web, mở ra hướng phát triển tích hợp mô hình vào các hệ thống tường lửa và ngăn ngừa xâm nhập trong thực tế.