Tổng quan về luận án

Sự chuyển dịch mang tính cấu trúc của hạ tầng công nghệ thông tin toàn cầu từ mô hình phần mềm đóng gói cục bộ sang kiến trúc ứng dụng Web phân tán (Web-based Applications) và kiến trúc hướng sự kiện (Event-Driven Architecture - EDA) đã định hình lại bức tranh vận hành của các hệ thống số hiện đại. Mặc dù đem lại khả năng truy cập không giới hạn, khả năng mở rộng linh hoạt và tính tương thích đa nền tảng, các hệ thống Web phân tán đương đại phải đối mặt với các thách thức an ninh mạng và rủi ro vi phạm phi chức năng ngày càng nghiêm trọng. Báo cáo An ninh Internet của Symantec ghi nhận các vụ tấn công nhắm vào tầng ứng dụng Web chiếm tới 56% tổng số các sự cố an ninh toàn cầu. Trước thực trạng đó, luận án tiến sĩ kỹ thuật phần mềm với đề tài "Một số phương pháp đảm bảo an ninh và ràng buộc thời gian thực thi cho các ứng dụng Web" của nghiên cứu sinh Nguyễn Hạnh Phúc (người hướng dẫn khoa học: PGS. TS. Trương Ninh Thuận, Trường Đại học Công nghệ – Đại học Quốc gia Hà Nội) được thực hiện như một công trình tiên phong, giải quyết đồng thời hai trục bài toán cốt lõi: bảo đảm tính sẵn sàng, toàn vẹn của ứng dụng Web trước các cuộc tấn công tinh vi (DDoS, XSS) và kiểm chứng hình thức các ràng buộc thời gian thực thi phi chức năng trong kiến trúc hướng sự kiện phức tạp.

Khoảng trống nghiên cứu (Research Gap) trung tâm được luận án định vị nằm ở sự thiếu hụt các cơ chế tự động hóa có khả năng phát hiện sớm bất thường trong luồng dữ liệu thời gian thực quy mô lớn, tính kém hiệu quả của các giải pháp sinh ca kiểm thử thâm nhập tự động đối với lỗ hổng Cross-Site Scripting (XSS), và sự vắng bóng của các mô hình toán học kiểm chứng ràng buộc thời gian động (runtime verification) cho các sự kiện phân tán trong EDA. Luận án thiết lập ba câu hỏi nghiên cứu và giả thuyết khoa học chính:

  • Câu hỏi nghiên cứu 1 ($RQ_1$): Làm thế nào để phân tích luồng nhật ký truy cập phân tán theo thời gian thực nhằm phát hiện chính xác dấu hiệu bất thường của các cuộc tấn công DoS/DDoS tầng ứng dụng trước khi tài nguyên hệ thống bị cạn kiệt? Giả thuyết 1 ($H_1$): Mô hình tính điểm bất thường đa tiêu chí trên luồng dữ liệu phân tán (triển khai trên nền tảng Apache Spark và Kubernetes) cho phép nhận diện và cảnh báo sớm các địa chỉ IP độc hại trong các cửa sổ thời gian trượt với độ trễ thấp và độ chính xác vượt trội so với cơ chế kiểm tra ngưỡng đơn biến truyền thống.
  • Câu hỏi nghiên cứu 2 ($RQ_2$): Bằng cách nào tối ưu hóa quá trình sinh đường dẫn và ca kiểm thử tự động nhằm phát hiện lỗ hổng XSS mà không rơi vào bẫy bùng nổ không gian trạng thái (state space explosion)? Giả thuyết 2 ($H_2$): Việc mô hình hóa ứng dụng Web thành tiến trình quyết định Markov (Markov Decision Process - MDP) kết hợp thuật toán học tăng cường Q-learning với ma trận phần thưởng cải tiến sẽ tối ưu hóa tốc độ hội tụ và độ bao phủ đường dẫn chứa lỗ hổng bảo mật.
  • Câu hỏi nghiên cứu 3 ($RQ_3$): Cơ chế nào cho phép giám sát và kiểm chứng tính đúng đắn về mặt thời gian của các tiến trình xử lý sự kiện bất đồng bộ trong kiến trúc EDA tại thời điểm thực thi? Giả thuyết 3 ($H_3$): Khung thuật toán kiểm chứng dựa trên quan hệ khoảng thời gian của Allen (Allen's Interval Algebra) tích hợp bộ giám sát thời gian thực có thể phát hiện chính xác mọi vi phạm ràng buộc thời gian giữa các sự kiện mà không làm suy giảm hiệu năng xử lý của hệ thống.

Phạm vi nghiên cứu của luận án bao quát từ các hệ thống thương mại điện tử thực tế có lưu lượng truy cập lớn (triển khai tại nền tảng Shopbase) cho đến các mô hình mô phỏng hệ thống giao thông thông minh (Intelligent Transportation System - ITS). Về mặt tác động định lượng, nghiên cứu cung cấp một hệ sinh thái giải pháp đồng bộ từ lý thuyết giải thuật đến công cụ thực thi tự động (framework jFAT), giải quyết bài toán kiểm thử an ninh và kiểm chứng thời gian thực với chi phí tính toán được tối ưu hóa rõ rệt.

Literature Review và Positioning

Khảo sát tổng quan y văn cho thấy các nỗ lực bảo vệ ứng dụng Web hiện nay phân hóa thành ba dòng nghiên cứu chính:

Dòng nghiên cứu thứ nhất tập trung vào phát hiện và phòng chống tấn công từ chối dịch vụ (DoS/DDoS). Các công trình cổ điển thường dựa trên việc cấu hình tường lửa, thiết lập giới hạn tốc độ (rate-limiting) hoặc phân tích gói tin mạng ở tầng giao vận. Tuy nhiên, khi các cuộc tấn công dịch chuyển lên tầng ứng dụng (Layer 7) như HTTP Flood hay Slowloris, các biện pháp này bộc lộ nhiều điểm yếu về tỷ lệ dương tính giả (false positive) cao và độ trễ phản ứng. Zhao (2014) [107] đã đề xuất hệ thống phát hiện DDoS sử dụng mạng nơ-ron kết hợp cụm Apache Hadoop và HBase để xử lý lưu lượng lớn dựa trên mức sử dụng CPU và kết nối TCP. Berral và cộng sự (2014) [14] phát triển khung học máy phân tán dựa trên thuật toán tổng tích lũy (CUSUM) và Naive Bayes nhằm nhận diện mẫu lưu lượng bất thường. Meitei (2020) [66] ứng dụng mạng nơ-ron nhân tạo và cây quyết định để lọc lưu lượng DNS khuếch đại, trong khi Marta Catillo và cộng sự (2020) [19] áp dụng cơ chế đo lường ngưỡng yêu cầu lặp lại trên máy chủ Web. Alashhab và cộng sự (2022) [4] mở rộng khảo sát các kỹ thuật học máy chống tấn công DoS tốc độ thấp (Low-rate DDoS) trên mạng điều khiển bằng phần mềm (SDN). Mặc dù các nghiên cứu quốc tế này đã ứng dụng học máy và dữ liệu lớn, phần lớn vẫn xử lý theo lô (batch processing) hoặc chưa tối ưu hóa cho môi trường điều phối container hóa phân tán quy mô lớn.

Dòng nghiên cứu thứ hai liên quan đến kiểm thử bảo mật và phát hiện lỗ hổng Cross-Site Scripting (XSS). Theo các nghiên cứu bảo mật chuẩn tắc [40, 41, 103], XSS là một "lỗ hổng liên quan đến lập trình xảy ra khi dữ liệu đầu vào của người dùng không được làm sạch đúng cách", cho phép kẻ tấn công thực thi mã độc JavaScript trên trình duyệt của nạn nhân. Các giải pháp kiểm thử truyền thống như kiểm thử tĩnh (SAST) thường gây ra tỷ lệ cảnh báo giả cao, trong khi kiểm thử động (DAST) hoặc kiểm thử mờ (Fuzz Testing) [37, 109] gặp khó khăn nghiêm trọng khi sinh đường dẫn kiểm thử do không gian trạng thái DOM (Document Object Model) quá lớn và sự phụ thuộc phức tạp giữa các trường nhập liệu. Andre Brandao và cộng sự (2020) [16] phân tích tệp nhật ký để phát hiện xâm nhập (LIDS) dựa trên tập dữ liệu KDD Cup 1999, song vẫn thiếu khả năng tự động khám phá và tạo ca kiểm thử thâm nhập chủ động (active penetration testing) có định hướng tối ưu.

Dòng nghiên cứu thứ ba tập trung vào kiểm chứng mô hình phần mềm và hệ thống thời gian thực. Trong kiến trúc hướng sự kiện (EDA) [67, 90], các thành phần giao tiếp hoàn toàn bất đồng bộ thông qua Event Bus/Message Broker. Việc kiểm chứng tĩnh bằng phương pháp kiểm tra mô hình hình thức (Model Checking) [22, 78] thường bất khả thi đối với các hệ thống phân tán phức tạp do bùng nổ trạng thái tổ hợp. Các nghiên cứu trước đây chưa cung cấp được một mô hình giám sát thời gian thực (runtime monitoring) gọn nhẹ, có khả năng ánh xạ trực tiếp các đặc tả quan hệ thời gian giữa các luồng sự kiện phân tán vào các thuật toán kiểm tra trực tiếp khi hệ thống đang vận hành.

                    ┌────────────────────────────────────────────────────────┐
                    │      Literature Landscape & Research Positioning       │
                    └────────────────────────────────────────────────────────┘
                                                 │
         ┌───────────────────────────────────────┼───────────────────────────────────────┐
         ▼                                       ▼                                       ▼
┌─────────────────────────────────┐   ┌─────────────────────────────────┐   ┌─────────────────────────────────┐
│ Stream 1: DDoS Detection Layer 7│   │ Stream 2: Automated XSS Testing │   │ Stream 3: EDA Formal Verification│
│ • Hadoop/HBase (Zhao, 2014)     │   │ • Fuzzing/DAST (Takanen, 2018)  │   │ • Formal Model Checking (Baier) │
│ • ML/CUSUM (Berral, 2014)       │   │ • Log Intrusion (Brandao, 2020) │   │ • Timed Automata (Alur/Dill)    │
│ • SDN LDDoS (Alashhab, 2022)    │   │ • Static Analysis (SAST)        │   │ • Event Processors Tracking     │
└─────────────────────────────────┘   └─────────────────────────────────┘   └─────────────────────────────────┘
         │                                       │                                       │
         ▼                                       ▼                                       ▼
┌─────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│                               Dissertation's Theoretical & Empirical Nexus                              │
│ • Real-time Log Stream Scoring via Spark & Kubernetes (Shopbase Empirical Study)                        │
│ • jFAT Framework + MDP/Q-learning (α=1.0, γ=0.9) Optimized Reward Matrix for XSS Path Generation       │
│ • Runtime Temporal Verification via Allen's Interval Algebra (7 Formal Algorithms on Distributed EDA)   │
└─────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Luận án của NCS. Nguyễn Hạnh Phúc đã định vị chính xác điểm giao thoa giữa ba dòng nghiên cứu này, tạo ra bước đột phá phương pháp luận: chuyển đổi từ phát hiện thụ động sang phòng thủ chủ động theo thời gian thực; tích hợp trí tuệ nhân tạo (học tăng cường) vào tối ưu hóa sinh đường dẫn kiểm thử thâm nhập; và mở rộng lý thuyết đại số khoảng thời gian của Allen thành bộ thuật toán kiểm chứng thời gian thực cho kiến trúc EDA.

Đóng góp lý thuyết và khung phân tích

Đóng góp cho lý thuyết

Luận án tạo ra ba đóng góp quan trọng làm phong phú thêm cơ sở lý thuyết của ngành Kỹ thuật phần mềm và An toàn thông tin:

Thứ nhất, nghiên cứu đóng góp vào Lý thuyết Học tăng cường (Reinforcement Learning) và Tiến trình Quyết định Markov (MDP) [Sutton & Barto, 2018; Watkins & Dayan, 1992] trong bài toán tự động hóa kiểm thử phần mềm. Luận án đã hình thức hóa không gian ứng dụng Web đang kiểm thử (AUT) thành một không gian trạng thái $S$, tập hành động $A$, và xây dựng hàm phần thưởng $R$ cải tiến. Thay vì sử dụng phần thưởng ngẫu nhiên hay hàm khoảng cách thuần túy, ma trận phần thưởng được tái thiết kế dựa trên xác suất hiện diện của các điểm nhạy cảm với lỗ hổng XSS trong cây DOM. Thuật toán tối ưu hóa giá trị trạng thái - hành động $Q(s, a)$ giúp tác nhân hội tụ nhanh chóng vào các đường dẫn thâm nhập nguy hiểm nhất.

Thứ hai, nghiên cứu mở rộng Lý thuyết Đại số Khoảng thời gian của Allen (Allen's Interval Temporal Logic, 1983) vào bài toán kiểm chứng thời gian thực thi (Runtime Verification) của các hệ thống hướng sự kiện phân tán. Luận án đã hình thức hóa toán học 7 quan hệ thời gian cơ bản (Before, Meets, Overlaps, Starts, During, Finishes, Equals) thành các mệnh đề điều kiện logic và chuyển hóa chúng thành các thuật toán tiền điều kiện/hậu điều kiện có thể kiểm tra trực tiếp trên các luồng thời gian thực tế ($[t_{start}, t_{end}]$) của sự kiện.

Thứ ba, công trình đóng góp vào Lý thuyết Đảm bảo Chất lượng Phần mềm (Software Quality Assurance Theory) theo chuẩn ISO/IEC 9126 / ISO/IEC 25010, cụ thể hóa các thuộc tính trừu tượng về Tính sẵn sàng (Availability), Tính toàn vẹn (Integrity), và Độ tin cậy thời gian thực (Real-time Reliability) thành các chỉ số kỹ thuật có thể đo lường và kiểm soát liên tục thông qua phân tích luồng dữ liệu lớn.

Khung phân tích độc đáo

Khung phân tích của luận án tích hợp một cách đa tầng giữa ba trụ cột: Xử lý luồng dữ liệu lớn (Stream Computing), Tác tử thông minh thích nghi (Adaptive Intelligent Agents), và Kiểm chứng hình thức động (Formal Dynamic Verification).

          ┌───────────────────────────────────────────────────────────────────────┐
          │               Tri-Pillar Comprehensive Analytical Model               │
          └───────────────────────────────────────────────────────────────────────┘
                                              │
         ┌────────────────────────────────────┼────────────────────────────────────┐
         ▼                                    ▼                                    ▼
┌───────────────────────────────┐  ┌────────────────────────────────────┐  ┌───────────────────────────────┐
│     Pillar 1: Stream Mining   │  │   Pillar 2: Reinforcement Testing  │  │ Pillar 3: Formal Verification │
│ • Log Collector (OpenResty)   │  │ • AUT as MDP Environment (S, A, R) │  │ • Event Producer & Event Bus  │
│ • Stream Pipeline (Kafka)     │  │ • Q-learning Path Generator        │  │ • Allen's Temporal Logic Core │
│ • Distributed Engine (Spark)  │  │ • Test Case Synthesis Engine       │  │ • Real-time Constraint Monitor│
│ • Orchestration (Kubernetes)  │  │ • Framework jFAT (Selenium/TestNG) │  │ • Violation Alert System      │
└───────────────────────────────┘  └────────────────────────────────────┘  └───────────────────────────────┘
  1. Trụ cột Phân tích Luồng (Stream Mining Engine): Dữ liệu nhật ký truy cập từ Web Server (OpenResty) được truyền trực tiếp vào Apache Kafka theo cơ chế Topic/Partition, sau đó được tiêu thụ song song bởi các worker node trên cụm Apache Spark dưới sự quản lý tài nguyên của Kubernetes. Thuật toán tính điểm bất thường hoạt động trên các lô dữ liệu vi mô (micro-batches) để phát hiện và ngăn chặn hành vi DoS/DDoS.
  2. Trụ cột Kiểm thử Tăng cường (Reinforcement Penetration Testing Engine): Ứng dụng Web mục tiêu được trừu tượng hóa bằng Page Object Model (POM). Tác tử Q-learning tương tác với giao diện Web thông qua thư viện Selenium, thực hiện chuỗi hành động $a_t \in A(s_t)$, nhận phản hồi và tối đa hóa phần thưởng để sinh ra các kịch bản kiểm thử thâm nhập tự động trong khung kiểm thử jFAT.
  3. Trụ cột Kiểm chứng Thời gian thực (Temporal Runtime Verification Engine): Các sự kiện bất đồng bộ phát sinh từ Event Producer đi qua Event Bus được bộ giám sát thời gian thực đánh chặn, trích xuất tem thời gian $(t_{start}, t_{end})$, và đối soát với hệ thống đặc tả ràng buộc thời gian thông qua 7 thuật toán kiểm chứng hình thức.

Điều kiện biên (Boundary Conditions): Khung phân tích được xác lập trong điều kiện mạng IP đồng bộ về mặt thời gian (sử dụng giao thức NTP cho các nút mạng), các ứng dụng Web tuân thủ chuẩn giao thức HTTP/HTTPS, và cấu trúc DOM có thể phân tích được thông qua cây cú pháp chuẩn.

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

Thiết kế nghiên cứu

Luận án áp dụng thế giới quan khoa học thực chứng kết hợp với phương pháp nghiên cứu kỹ thuật thực nghiệm (Design Science & Empirical Software Engineering Research). Thiết kế nghiên cứu mang tính đa tầng (Multi-level Design), bao gồm:

  • Tầng hình thức hóa toán học: Xây dựng mô hình MDP cho bài toán sinh đường dẫn và mô hình hóa đại số khoảng thời gian cho quan hệ sự kiện EDA.
  • Tầng kiến trúc hệ thống: Hiện thực hóa các thuật toán thành các thành phần phần mềm phân tán trên cụm máy chủ điện toán đám mây.
  • Tầng đánh giá thực nghiệm (Empirical Validation): Kiểm thử và đánh giá hiệu năng giải thuật trên hệ thống thương mại điện tử thực tế và môi trường giả lập quy mô lớn.

Quy trình nghiên cứu rigorous

Quy trình nghiên cứu được thực hiện qua các giai đoạn kiểm chuẩn nghiêm ngặt:

┌─────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│                                 Rigorous Research & Validation Protocol                                 │
└─────────────────────────────────────────────────────────────────────────────────────────────────────────┘
  [Phase 1: Log Stream Analysis]        [Phase 2: Reinforcement Testing]     [Phase 3: Runtime Verification]
                │                                       │                                    │
  ┌─────────────▼─────────────┐           ┌─────────────▼─────────────┐        ┌─────────────▼─────────────┐
  │ Ingestion: Kafka Streaming│           │ DOM Graph Model Parsing   │        │ Event Specification Engine│
  │ Micro-batch Spark Engine  │           │ MDP Matrix Formulation    │        │ Temporal Relation Logic   │
  │ Multi-criteria Scoring    │           │ Q-learning Path Synthesis │        │ 7 Verification Algorithms │
  │ Threshold & IP Blacklist  │           │ jFAT Test Suite Execution │        │ ITS Case Study Simulation │
  └─────────────┬─────────────┘           └─────────────┬─────────────┘        └─────────────┬─────────────┘
                │                                       │                                    │
                └───────────────────────────────────────┼────────────────────────────────────┘
                                                        │
                                          ┌─────────────▼─────────────┐
                                          │ Triangulation & Cross-Eval│
                                          │ Real-world System Testing │
                                          └───────────────────────────┘
  1. Quy trình thu thập và tiền xử lý dữ liệu log: Log truy cập từ máy chủ Web OpenResty của nền tảng Shopbase được đẩy liên tục vào Apache Kafka. Các executor của Spark chịu trách nhiệm tiền xử lý phân tán, loại bỏ nhiễu, trích xuất địa chỉ IP, URI, tần suất truy cập, phương thức HTTP, mã phản hồi và phân bổ về driver node để tổng hợp tính toán.
  2. Quy trình sinh ca kiểm thử XSS tự động:
    • Phân tích cấu trúc ứng dụng Web thành đồ thị có hướng $G = (V, E)$, trong đó $V$ là tập các trang/trạng thái và $E$ là tập các tương tác/liên kết.
    • Khởi tạo ma trận trọng số và ma trận $Q$.
    • Thực thi thuật toán Q-learning để sinh đường dẫn kiểm thử tối ưu.
    • Tự động sinh ca kiểm thử (Test Cases) tương ứng tích hợp dữ liệu tấn công (payloads).
    • Thực thi kiểm thử tự động thông qua công cụ jFAT tích hợp Selenium WebDriver và TestNG.
  3. Quy trình kiểm chứng sự kiện EDA:
    • Thu thập đặc tả ràng buộc thời gian giữa các sự kiện trong hệ thống.
    • Đánh chặn các sự kiện thực tế trong quá trình vận hành, ghi nhận bộ thời gian bắt đầu và kết thúc $(t_s(e), t_e(e))$.
    • Đưa dữ liệu qua bộ 7 thuật toán kiểm chứng thời gian thực để phát hiện các vi phạm (violations) so với đặc tả ban đầu.

Data và phân tích

Trong bài toán phát hiện DoS/DDoS, tấn công DoS được định nghĩa rõ: "ngăn chặn người dùng hợp pháp truy cập vào tài nguyên trên mạng máy tính bằng cách làm cạn kiệt các nguồn tài nguyên và dẫn đến từ chối truy cập". Để phát hiện nguy cơ, luận án thiết lập công thức chấm điểm bất thường $Score(IP)$ cho từng địa chỉ IP trong cửa sổ thời gian trượt $\Delta t$:

$$Score(IP) = w_1 \cdot \frac{Freq(IP)}{Threshold_{freq}} + w_2 \cdot \frac{ErrorRate(IP)}{Threshold_{err}} + w_3 \cdot Diversity(URI)^{-1}$$

Trong đó $w_1, w_2, w_3$ là các trọng số chuẩn hóa, $Freq(IP)$ là tần suất gửi yêu cầu, $ErrorRate(IP)$ là tỷ lệ lỗi (mã 4xx, 5xx), và $Diversity(URI)$ là độ đa dạng của tài nguyên được yêu cầu. Địa chỉ IP có điểm số vượt ngưỡng quy định sẽ lập tức bị cách ly và cảnh báo tới quản trị viên.

Trong thuật toán Q-learning phục vụ sinh đường dẫn kiểm thử XSS, quy tắc cập nhật hàm giá trị trạng thái - hành động tuân thủ phương trình Bellman:

$$Q(s_t, a_t) \leftarrow Q(s_t, a_t) + \alpha \left[ R_{t+1} + \gamma \max_{a} Q(s_{t+1}, a) - Q(s_t, a_t) \right]$$

Luận án thiết lập các tham số thực nghiệm:

  • Tốc độ học (Learning rate): $\alpha = 1.0$, cho phép tác tử cập nhật ngay lập tức các tri thức mới về cấu trúc giao diện Web.
  • Hệ số chiết khấu (Discount factor): $\gamma = 0.9$, định hướng tác tử tối đa hóa phần thưởng tích lũy toàn cục trong cả tập (episode) thay vì chỉ ưu tiên các phần thưởng cục bộ trước mắt.
Tham số / Thuật toán Giá trị thiết lập Mục đích kỹ thuật
Tốc độ học $\alpha$ $1.0$ Học tức thì cấu trúc chuyển trạng thái của ứng dụng Web
Hệ số chiết khấu $\gamma$ $0.9$ Ưu tiên tối đa hóa phần thưởng tích lũy toàn chuỗi hành động
Framework tự động hóa jFAT (Java + Selenium + TestNG) Tự động hóa kiểm thử giao diện theo mô hình POM
Nền tảng luồng dữ liệu Apache Kafka + Apache Spark Xử lý song song luồng tệp nhật ký hàng triệu sự kiện
Môi trường điều phối Kubernetes Cluster Cân bằng tải và tự động mở rộng (auto-scaling) cho Executor

Trong bài toán kiểm chứng EDA, luận án hình thức hóa 7 thuật toán tương ứng với 7 quan hệ thời gian của hai sự kiện $evt_i = [s_i, e_i]$ và $evt_j = [s_j, e_j]$:

  1. $evt_i \text{ before } evt_j$: Kiểm chứng điều kiện $e_i < s_j$ với độ trễ $\Delta t = s_j - e_i \ge \epsilon_{min}$.
  2. $evt_i \text{ meets } evt_j$: Kiểm chứng điều kiện $e_i = s_j$ (hoặc $|e_i - s_j| \le \delta$ với $\delta$ là sai số dung sai mạng).
  3. $evt_i \text{ overlaps } evt_j$: Kiểm chứng điều kiện $(s_i < s_j) \land (s_j < e_i) \land (e_i < e_j)$.
  4. $evt_i \text{ starts } evt_j$: Kiểm chứng điều kiện $(s_i = s_j) \land (e_i < e_j)$.
  5. $evt_i \text{ during } evt_j$: Kiểm chứng điều kiện $(s_i > s_j) \land (e_i < e_j)$.
  6. $evt_i \text{ finishes } evt_j$: Kiểm chứng điều kiện $(s_i > s_j) \land (e_i = e_j)$.
  7. $evt_i \text{ equal } evt_j$: Kiểm chứng điều kiện $(s_i = s_j) \land (e_i = e_j)$.

Phát hiện đột phá và implications

Những phát hiện then chốt

Quá trình thực nghiệm nghiêm ngặt của luận án đã đem lại 4 phát hiện khoa học mang tính đột phá:

  1. Hiệu năng vượt trội của mô hình phát hiện DDoS phân tán dựa trên luồng: Kết quả triển khai trên hệ thống thương mại điện tử thực tế Shopbase cho thấy kiến trúc phân tán kết hợp Apache Spark và Kubernetes có khả năng xử lý liên tục hàng trăm nghìn bản ghi log mỗi giây. Hệ thống phát hiện chính xác 100% các cuộc tấn công HTTP Flood mô phỏng trong các lô dữ liệu vi mô mà không gây tắc nghẽn tài nguyên máy chủ Web, giảm thiểu thời gian phát hiện từ mức vài phút (của phương pháp phân tích log truyền thống) xuống dưới mức mili-giây theo thời gian thực.
  2. Sự tối ưu hóa vượt bậc của Q-learning trong sinh đường dẫn kiểm thử XSS: Thuật toán Q-learning với ma trận phần thưởng cải tiến đạt tốc độ hội tụ nhanh hơn rõ rệt so với các giải pháp kiểm thử mờ ngẫu nhiên (Random Fuzzing). Tác tử học có khả năng bỏ qua các đường dẫn không chứa form nhập liệu hoặc trường tương tác, tập trung 100% tài nguyên kiểm thử vào các điểm nhạy cảm có khả năng bị tiêm mã độc (Reflected XSS, Stored XSS, DOM-based XSS), giúp giảm số lượng ca kiểm thử dư thừa tới hơn 40% trong khi vẫn bảo toàn độ bao phủ lỗ hổng.
  3. Khả năng cảnh báo vi phạm thời gian thực thi trong EDA mà không cần dừng hệ thống: Phương pháp kiểm chứng dựa trên đặc tả khoảng thời gian đã chứng minh tính hiệu quả vượt bậc khi áp dụng vào case study Hệ thống giám sát giao thông thông minh (ITS). Bộ giám sát thời gian thực đã phát hiện chính xác các vi phạm trễ hạn (deadline violations) và sai lệch thứ tự sự kiện (như tín hiệu đèn giao thông không khớp với sự kiện cảm biến xe vượt qua giao lộ) tại thời điểm hệ thống đang vận hành mà không tạo ra overhead đáng kể lên Event Bus. Luận án khẳng định giải pháp này đã "kết hợp đặc tả giới hạn thời gian và trình giám sát thời gian thực để phát hiện khi các sự kiện xảy ra bên ngoài khoảng thời gian được chỉ định của chúng", giải quyết triệt để bài toán kiểm chứng động trong môi trường bất đồng bộ.
  4. Phát hiện hiện tượng trôi dạt phân phối truy cập (Access Drift): Trong các đợt khuyến mãi quy mô lớn tại nền tảng Shopbase, lưu lượng người dùng thật tăng đột biến có các đặc trưng hành vi tương tự như tấn công DoS phân tán. Việc áp dụng công thức tính điểm đa tiêu chí (kết hợp tần suất, mã lỗi và độ đa dạng URL) đã chứng minh khả năng phân biệt chính xác giữa lưu lượng "Flash Crowd" hợp pháp và các luồng botnet DDoS tinh vi, giảm thiểu tối đa hiện tượng chặn nhầm khách hàng hợp lệ.

Implications đa chiều

  • Về mặt Lý thuyết: Công trình cung cấp một cách tiếp cận mẫu mực trong việc kết hợp giữa trí tuệ nhân tạo (học tăng cường), tính toán phân tán (dữ liệu lớn) và phương pháp hình thức (kiểm chứng thời gian thực), làm cầu nối vững chắc giữa lý thuyết độ phức tạp tính toán và kỹ thuật phần mềm ứng dụng.
  • Về mặt Phương pháp luận: Cung cấp khung phương pháp kiểm thử thâm nhập tự động jFAT hoàn chỉnh, cho phép tái sử dụng và mở rộng cho nhiều dạng lỗ hổng bảo mật Web khác như SQL Injection, CSRF hay Command Injection.
  • Về mặt Thực tiễn Công nghiệp: Giải pháp phân tích log trên Spark/Kubernetes có thể tích hợp trực tiếp vào quy trình DevSecOps của các doanh nghiệp cung cấp dịch vụ SaaS, sàn thương mại điện tử, cổng thanh toán tài chính để xây dựng hệ thống phòng thủ tự động với chi phí bản quyền bằng không (nhờ tận dụng 100% công nghệ mã nguồn mở).
  • Về mặt Chính sách và Tiêu chuẩn: Kết quả nghiên cứu đóng góp cơ sở khoa học quan trọng cho việc xây dựng các tiêu chuẩn kỹ thuật quốc gia về đánh giá an toàn thông tin và kiểm định chất lượng các hệ thống phần mềm công vụ trọng yếu hoạt động trên nền tảng Web.

Limitations và Future Research

Mặc dù đạt được những kết quả xuất sắc, luận án cũng thẳng thắn thừa nhận các giới hạn nghiên cứu (Boundary Conditions & Limitations):

  1. Sự phụ thuộc vào cơ chế đồng bộ thời gian: Phương pháp kiểm chứng thời gian thực trong kiến trúc EDA giả định rằng các nút phát sinh sự kiện được đồng bộ thời gian hoàn hảo thông qua NTP. Trong môi trường mạng phân tán xuyên lục địa có độ trễ lớn và chênh lệch xung nhịp (clock drift), tính chính xác của các thuật toán kiểm chứng quan hệ thời gian có thể bị ảnh hưởng.
  2. Phạm vi kiểm thử tự động của tác tử Q-learning: Khung kiểm thử jFAT hiện tại tập trung tối ưu hóa cho các ứng dụng Web truyền thống và ứng dụng đơn trang (SPA) có thể mô hình hóa được qua cấu trúc DOM chuẩn; chưa bao quát toàn diện các ứng dụng Web sử dụng Canvas phức tạp hoặc các thành phần đồ họa WebGL tương tác bậc cao.
  3. Tính thích ứng của ma trận trọng số phát hiện DDoS: Các hệ số trọng số $w_1, w_2, w_3$ trong công thức tính điểm bất thường IP hiện vẫn dựa trên cấu hình thực nghiệm của chuyên gia hệ thống, chưa được tự động hóa tinh chỉnh liên tục bằng các mô hình học sâu trực tuyến (Online Deep Learning).

Chương trình nghiên cứu 10 năm tiếp theo (Future Research Agenda):

  • Hướng 1: Tích hợp mạng nơ-ron học sâu sâu tăng cường (Deep Q-Networks - DQN) và các mô hình ngôn ngữ lớn (LLMs) vào tác tử kiểm thử để tự động sinh các payload tấn công XSS đa dạng có khả năng vượt qua các hệ thống tường lửa WAF hiện đại.
  • Hướng 2: Mở rộng 7 thuật toán kiểm chứng của Allen sang đại số thời gian mờ (Fuzzy Temporal Algebra) nhằm xử lý độ bất định và sai số trễ mạng trong các hệ thống IoT và điện toán biên (Edge Computing).
  • Hướng 3: Tự động hóa quá trình sinh mã sửa lỗi (Automated Program Repair) cho các lỗ hổng XSS và lỗi vi phạm ràng buộc thời gian ngay sau khi được phát hiện trong chu trình CI/CD.
  • Hướng 4: Mở rộng mô hình phân tích log sang kiến trúc Zero-Trust kết hợp công nghệ eBPF để giám sát sâu các luồng dữ liệu ở mức nhân hệ điều hành (kernel-level).

Tác động và ảnh hưởng

Luận án của NCS. Nguyễn Hạnh Phúc mang lại tác động học thuật và kinh tế - xã hội rõ rệt:

  • Tác động Học thuật: Các thuật toán đề xuất mở ra hướng nghiên cứu mới về kiểm định chất lượng phần mềm thông minh, ước tính thu hút sự quan tâm và trích dẫn rộng rãi từ các tạp chí hàng đầu thuộc danh mục ISI/Scopus (Q1/Q2) trong các lĩnh vực IEEE Transactions on Software Engineering, ACM Transactions on Software Engineering and Methodology, và Computers & Security.
  • Chuyển đổi Công nghiệp: Việc thử nghiệm thành công tại nền tảng thương mại điện tử Shopbase chứng minh tính ứng dụng thực tiễn cao, giúp doanh nghiệp tiết kiệm hàng trăm nghìn USD chi phí bản quyền các công cụ giám sát độc quyền đắt đỏ, đồng thời bảo vệ hạ tầng dịch vụ liên tục 24/7 trước các đợt tấn công từ chối dịch vụ quy mô lớn.
  • Lợi ích Xã hội: Góp phần nâng cao năng lực bảo vệ dữ liệu cá nhân của người dùng trên không gian mạng, giảm thiểu nguy cơ đánh cắp danh tính qua lỗ hổng XSS và bảo đảm tính thông suốt của các dịch vụ số công ích phục vụ người dân.

Đối tượng hưởng lợi

  • Nghiên cứu sinh và Giảng viên ngành Kỹ thuật phần mềm: Tiếp cận mô hình toán học hoàn chỉnh về kiểm chứng thời gian thực và phương pháp luận ứng dụng AI trong kiểm thử tự động.
  • Kỹ sư An toàn thông tin và Đội ngũ DevSecOps: Sở hữu kiến trúc tham chiếu và mã nguồn công cụ jFAT để tích hợp trực tiếp vào quy trình kiểm thử tự động hóa và đường ống phân tích log phân tán.
  • Doanh nghiệp Phát triển Phần mềm và Thương mại điện tử: Ứng dụng ngay các thuật toán tối ưu để bảo vệ hạ tầng Web, tối ưu hóa chi phí vận hành máy chủ và bảo vệ quyền lợi của khách hàng.
  • Cơ quan Quản lý Nhà nước về Chuyển đổi số: Có tài liệu tham chiếu tin cậy để thẩm định, đánh giá mức độ an toàn và độ tin cậy của các hệ sinh thái phần mềm thời gian thực cấp quốc gia.

Câu hỏi chuyên sâu

1. Đóng góp lý thuyết độc đáo nhất của luận án là gì và nó đã mở rộng lý thuyết nào? Trả lời: Đóng góp độc đáo nhất là việc hình thức hóa và mở rộng Lý thuyết Đại số Khoảng thời gian của James F. Allen (1983) thành bộ 7 thuật toán kiểm chứng hình thức tại thời điểm thực thi (Runtime Verification) dành riêng cho kiến trúc hướng sự kiện bất đồng bộ (EDA). Luận án đã chuyển hóa các tiên đề logic khoảng thời gian trừu tượng thành các điều kiện biên toán học có thể tính toán tức thì dựa trên dấu vết thực thi sự kiện.

2. Đột phá về phương pháp luận của luận án khi so sánh với các công trình quốc tế tiêu biểu? Trả lời: So với công trình của Zhao (2014) [Hadoop/HBase] và Berral (2014) [CUSUM/Naive Bayes], luận án tạo bước đột phá khi kết hợp Apache Spark Streaming và Kubernetes để xử lý luồng log theo thời gian thực với độ trễ thấp hơn và khả năng tự động co giãn tài nguyên linh hoạt. So với các kỹ thuật kiểm thử mờ truyền thống của Takanen (2018), khung jFAT ứng dụng Q-learning với ma trận phần thưởng cải tiến đã định hướng tác tử tập trung trực tiếp vào các nút DOM nhạy cảm, giảm 40% ca kiểm thử dư thừa.

3. Phát hiện bất ngờ nhất trong quá trình thực nghiệm là gì và dữ liệu nào chứng minh điều đó? Trả lời: Phát hiện bất ngờ nhất là hiện tượng "Flash Crowd" trong các chiến dịch thương mại điện tử thực tế có các đặc tính lưu lượng dễ bị các thuật toán truyền thống phân loại nhầm là tấn công DDoS phân tán. Bằng việc phối hợp đa chỉ số (tần suất, mã lỗi phản hồi và entropy của URI truy cập), công thức chấm điểm của luận án đã tách biệt thành công 100% lưu lượng mua sắm thực với các kịch bản tấn công giả lập.

4. Luận án có cung cấp quy trình tái lập thực nghiệm (Replication Protocol) hay không? Trả lời: Có. Luận án trình bày chi tiết kiến trúc khung kiểm thử jFAT, cấu hình cụm máy chủ phân tán (Kafka, Spark, Kubernetes), đặc tả toán học của 7 thuật toán kiểm chứng, cũng như các kịch bản kiểm thử mẫu (TC08, kế hoạch kiểm thử trang chủ), đảm bảo các nhà nghiên cứu độc lập có thể tái lập và mở rộng thực nghiệm một cách chính xác.

5. Chương trình nghị sự nghiên cứu 10 năm tới được phác thảo như thế nào? Trả lời: Chương trình 10 năm tập trung vào 4 trọng tâm: (1) Kết hợp Deep Reinforcement Learning (DQN) và LLMs trong sinh payload kiểm thử tự động; (2) Mở rộng kiểm chứng sang đại số thời gian mờ cho IoT/Edge Computing; (3) Tự động hóa sửa lỗi phần mềm (Automated Program Repair); và (4) Giám sát an ninh cấp nhân hệ điều hành dựa trên công nghệ eBPF.

Kết luận

Luận án tiến sĩ của NCS. Nguyễn Hạnh Phúc là một công trình khoa học công phu, mẫu mực, giải quyết trọn vẹn những thách thức cấp bách của kỹ thuật phần mềm hiện đại. Tổng hợp các đóng góp cốt lõi của công trình:

  1. Đề xuất và hiện thực hóa thành công phương pháp phân tích nhật ký truy cập theo thời gian thực trên nền tảng Apache Spark và Kubernetes, phát hiện và ngăn chặn hiệu quả các cuộc tấn công DoS/DDoS tầng ứng dụng trên hệ thống thực tế Shopbase.
  2. Phát triển thuật toán tối ưu hóa sinh đường dẫn kiểm thử lỗ hổng XSS dựa trên tiến trình quyết định Markov và thuật toán học tăng cường Q-learning với ma trận phần thưởng cải tiến ($\alpha = 1.0, \gamma = 0.9$).
  3. Xây dựng thành công khung kiểm thử tự động jFAT tích hợp Java, Selenium, và TestNG theo mô hình Page Object Model (POM), nâng cao năng suất và độ chính xác của kiểm thử thâm nhập ứng dụng Web.
  4. Hình thức hóa toán học và phát triển bộ 7 thuật toán kiểm chứng ràng buộc thời gian cho các sự kiện phân tán trong kiến trúc hướng sự kiện (EDA) tại thời điểm thực thi dựa trên đại số khoảng thời gian của Allen.
  5. Chứng minh tính khả thi và hiệu năng giải thuật thông qua các thực nghiệm quy mô lớn trên hệ sinh thái thương mại điện tử thực tế và hệ thống giám sát giao thông thông minh (ITS).
  6. Mở ra ba nhánh nghiên cứu học thuật liên ngành mới: Ứng dụng AI trong tự động hóa đảm bảo chất lượng phần mềm (AI for SE), Kiểm chứng hình thức động cho hệ thống phân tán bất đồng bộ, và Kiến trúc bảo mật đám mây thích ứng theo thời gian thực.

Công trình không chỉ khẳng định vị thế học thuật vững chắc của tác giả và cơ sở đào tạo (Đại học Quốc gia Hà Nội) trên trường quốc tế mà còn tạo ra di sản kỹ thuật có giá trị ứng dụng lâu dài cho ngành công nghiệp phần mềm và an toàn thông tin toàn cầu.