Nghiên cứu Phát hiện Tấn công Web bằng Web Log và Ảnh Màn hình

Nghiên cứu giải pháp phát hiện tấn công web hiệu quả. Phân tích web log kết hợp nội dung ảnh màn hình trang web. Tìm hiểu cách phòng ngừa và bảo mật website.

Chuyên ngành

Hệ thống thông tin

Người đăng

Ẩn danh

Thể loại

Luận án tiến sĩ

2024

126
1
0

Phí lưu trữ

35 Point

Tóm tắt

I. Tổng Quan Về Các Phương Pháp Phát Hiện Tấn Công Web Phổ Biến

Trong bối cảnh an ninh mạng hiện đại, việc phát hiện tấn công web đã trở thành một nhiệm vụ cốt lõi để bảo vệ tài sản số. Các ứng dụng web, từ website thông tin đến các cổng dịch vụ phức tạp, là mục tiêu hàng đầu của tin tặc. Theo luận án của NCS Nguyễn Trọng Hưng, hai hướng tiếp cận chính trong lĩnh vực này là phát hiện dựa trên dấu hiệu (chữ ký) và phát hiện dựa trên bất thường. Hướng tiếp cận dựa trên chữ ký, thường được tích hợp trong các Web Application Firewall (WAF) hay Intrusion Detection System (IDS), hoạt động bằng cách so khớp lưu lượng truy cập với một cơ sở dữ liệu các mẫu tấn công đã biết. Phương pháp này cho độ chính xác cao đối với các cuộc tấn công quen thuộc nhưng lại bất lực trước các biến thể mới hoặc tấn công zero-day. Ngược lại, phương pháp phát hiện dựa trên bất thường xây dựng một mô hình hành vi "bình thường" của hệ thống và cảnh báo bất kỳ sai lệch nào so với mô hình đó. Đây là hướng đi đầy hứa hẹn để đối phó với các mối đe dọa mới, đặc biệt khi ứng dụng các kỹ thuật học máy và học sâu. Luận án nhấn mạnh rằng "ưu điểm của phát hiện dựa trên bất thường là nó cho phép phát hiện các cuộc tấntochrome tấn công mới do không yêu cầu có trước các thông tin về các cuộc tấn công". Tuy nhiên, thách thức lớn nhất của phương pháp này là tỷ lệ cảnh báo sai còn tương đối cao, đòi hỏi các mô hình phải được tinh chỉnh liên tục để nâng cao hiệu quả.

1.1. So sánh hai hướng tiếp cận Dựa trên chữ ký và bất thường

Phát hiện dựa trên chữ ký là kỹ thuật truyền thống trong giám sát an ninh mạng. Cơ chế hoạt động của nó tương tự như phần mềm diệt virus: sử dụng một bộ quy tắc (rule-set) hoặc chữ ký của các loại mã độc (malware) và các chuỗi tấn công đã biết, ví dụ như các mẫu tấn công SQL Injection hoặc tấn công XSS (Cross-Site Scripting). Khi một yêu cầu truy cập khớp với một chữ ký trong cơ sở dữ liệu, hệ thống sẽ đưa ra cảnh báo hoặc chặn ngay lập tức. Ưu điểm của phương pháp này là tốc độ xử lý nhanh và tỷ lệ dương tính giả thấp. Tuy nhiên, nhược điểm chí mạng là không thể nhận diện các cuộc tấn công chưa từng được biết đến. Ngược lại, phát hiện dựa trên bất thường không dựa vào kiến thức có sẵn về các cuộc tấn công. Thay vào đó, nó học các mẫu hành vi hợp lệ từ dữ liệu lịch sử và xác định bất kỳ hoạt động nào đi chệch khỏi "đường cơ sở" này. Kỹ thuật này có khả năng phát hiện các lỗ hổng bảo mật zero-day, nhưng phải đối mặt với thách thức trong việc xác định chính xác ngưỡng bất thường để tránh gây ra quá nhiều cảnh báo sai, làm ảnh hưởng đến quá trình phản ứng sự cố.

1.2. Vai trò của việc giám sát an ninh mạng trong bối cảnh mới

Sự bùng nổ của các ứng dụng web và dịch vụ trực tuyến đặt ra yêu cầu ngày càng cao cho hoạt động giám sát an ninh mạng. Việc giám sát không chỉ dừng lại ở tầng mạng mà phải đi sâu vào tầng ứng dụng. An ninh ứng dụng web trở thành một lĩnh vực chuyên biệt, đòi hỏi các giải pháp có khả năng phân tích sâu nội dung các gói tin HTTP/HTTPS. Các công cụ truyền thống như tường lửa mạng không đủ khả năng để nhận diện các cuộc tấn công tinh vi nhắm vào logic của ứng dụng. Theo thống kê từ Akamai được trích dẫn trong luận án, số lượng các cuộc tấn công vào ứng dụng web và API đã tăng gấp ba lần chỉ trong một năm. Điều này cho thấy tầm quan trọng của việc triển khai các giải pháp chuyên dụng như WAF, IDS và đặc biệt là các công cụ SIEM (Security Information and Event Management) để tổng hợp và tương quan hóa dữ liệu từ nhiều nguồn khác nhau, giúp các chuyên gia an ninh có cái nhìn toàn cảnh và đưa ra quyết định phản ứng sự cố kịp thời.

II. Phân Tích Các Thách Thức Khi Phát Hiện Tấn Công Ứng Dụng Web

Việc phát hiện tấn công web đối mặt với nhiều thách thức cố hữu, xuất phát từ bản chất đa dạng và luôn biến đổi của các mối đe dọa. Một trong những khó khăn lớn nhất là sự tinh vi của các kỹ thuật tấn công hiện đại. Tin tặc liên tục phát triển các phương thức lẩn tránh, mã hóa payload, hoặc sử dụng các kỹ thuật tấn công "low-and-slow" để qua mặt các hệ thống giám sát truyền thống. Luận án chỉ ra rằng các hệ thống dựa trên chữ ký "không phát hiện được những cuộc tấn công mới do những tấn công này chưa được mô tả bởi các quy tắc, tập luật, chữ ký đã có". Bên cạnh đó, khối lượng dữ liệu log khổng lồ từ các máy chủ web (web server) cũng là một rào cản. Việc xử lý hàng triệu, thậm chí hàng tỷ bản ghi nhật ký hệ thống mỗi ngày đòi hỏi tài nguyên tính toán lớn và các thuật toán hiệu quả. Một thách thức khác là cân bằng giữa tỷ lệ phát hiện (True Positive Rate) và tỷ lệ cảnh báo sai (False Positive Rate). Một hệ thống quá nhạy cảm sẽ tạo ra một "cơn bão" cảnh báo, gây mệt mỏi cho đội ngũ phân tích và làm lu mờ các mối đe dọa thực sự. Ngược lại, một hệ thống kém nhạy sẽ bỏ lọt các cuộc tấn công nguy hiểm, dẫn đến hậu quả nghiêm trọng về mặt dữ liệu và uy tín.

2.1. Hạn chế của hệ thống phát hiện xâm nhập IDS dựa trên chữ ký

Các hệ thống Intrusion Detection System (IDS) truyền thống và phần lớn các Web Application Firewall (WAF) đều hoạt động dựa trên cơ chế so khớp mẫu. Mặc dù hiệu quả với các dấu hiệu tấn công đã biết, chúng lại bộc lộ nhiều điểm yếu. Thứ nhất, cơ sở dữ liệu chữ ký cần được cập nhật liên tục, tạo ra một cuộc chạy đua không ngừng với tin tặc. Bất kỳ sự chậm trễ nào trong việc cập nhật đều tạo ra một cửa sổ cơ hội cho kẻ tấn công khai thác các lỗ hổng bảo mật mới. Thứ hai, tin tặc có thể dễ dàng thay đổi một vài ký tự trong payload tấn công để tạo ra một biến thể mới không khớp với bất kỳ chữ ký nào hiện có. Ví dụ, một chuỗi tấn công SQL Injection có thể được mã hóa bằng nhiều cách khác nhau (URL encoding, Base64) để vượt qua bộ lọc. Cuối cùng, việc xây dựng và duy trì một bộ quy tắc toàn diện là công việc phức tạp, tốn nhiều công sức của chuyên gia, đặc biệt là với các ứng dụng web tùy chỉnh có logic hoạt động riêng biệt.

2.2. Vấn đề tỷ lệ cảnh báo sai trong an ninh ứng dụng web

Tỷ lệ cảnh báo sai là một trong những bài toán nan giải nhất trong lĩnh vực an ninh ứng dụng web. Đối với các hệ thống phát hiện dựa trên bất thường, việc xác định đâu là hành vi bình thường và đâu là bất thường thực sự rất khó khăn, đặc biệt với các trang web động có nội dung và lưu lượng truy cập thay đổi liên tục. Một hành vi truy cập hợp lệ nhưng hiếm gặp có thể bị nhận nhầm là một cuộc tấn công. Điều này không chỉ gây lãng phí thời gian và nguồn lực của đội ngũ phản ứng sự cố mà còn có thể dẫn đến việc chặn nhầm người dùng hợp pháp, ảnh hưởng đến trải nghiệm người dùng và hoạt động kinh doanh. Luận án của NCS Nguyễn Trọng Hưng cũng thừa nhận rằng "nhược điểm chính của phát hiện tấn công dựa trên bất thường là tỷ lệ cảnh báo sai... còn tương đối cao". Do đó, việc nghiên cứu các mô hình học máy và học sâu tiên tiến, có khả năng học hỏi và thích ứng tốt hơn, là hướng đi cần thiết để giảm thiểu vấn đề này và tăng cường độ tin cậy của hệ thống giám sát.

III. Phương Pháp Phát Hiện Tấn Công Web Dựa Trên Phân Tích Log Server

Một trong những đóng góp cốt lõi của luận án là đề xuất mô hình phát hiện tấn công web dựa trên học máy sử dụng dữ liệu từ web log. Web log, hay nhật ký hệ thống, là nguồn thông tin vô giá, ghi lại mọi yêu cầu truy cập đến máy chủ. Bằng cách phân tích log server một cách khoa học, có thể trích xuất được những đặc trưng quan trọng để phân biệt giữa lưu lượng truy cập bình thường và các hành vi tấn công. Mô hình được đề xuất tập trung vào việc phân tích chuỗi truy vấn URI (query_string), vì đây là nơi tin tặc thường chèn các payload độc hại cho các cuộc tấn công SQL Injection, tấn công XSS, duyệt đường dẫn (Path Traversal) và chèn lệnh (Command Injection). Thay vì dựa vào các quy tắc cứng nhắc, mô hình này sử dụng các thuật toán học máy có giám sát như Rừng ngẫu nhiên (Random Forest), Cây quyết định (Decision Tree), Naïve Bayes và SVM. Các thuật toán này học các mẫu phức tạp từ một tập dữ liệu đã được gán nhãn, từ đó có khả năng nhận diện các dấu hiệu tấn công tinh vi. Ưu điểm của phương pháp này là khả năng tự động hóa cao và hiệu suất xử lý nhanh, phù hợp cho việc giám sát một lượng log khổng lồ trong thực tế, giúp quá trình log management trở nên hiệu quả hơn.

3.1. Quy trình thu thập và tiền xử lý nhật ký hệ thống web log

Quy trình phân tích log server bắt đầu bằng việc thu thập và chuẩn hóa dữ liệu. Các máy chủ web khác nhau (Apache, IIS, Nginx) có định dạng log riêng. Do đó, bước đầu tiên là phải phân tách (parse) các dòng log để trích xuất các trường thông tin quan trọng như địa chỉ IP độc hại (nếu có), phương thức HTTP, URI, HTTP status codes, và thông tin user-agent. Luận án tập trung vào trường URI, đặc biệt là phần ?query_string. Dữ liệu này sau đó sẽ trải qua giai đoạn tiền xử lý, bao gồm việc giải mã URL (URL decoding), chuyển đổi về chữ thường, và loại bỏ các nhiễu không cần thiết. Quá trình này đảm bảo rằng dữ liệu đầu vào cho mô hình học máy là đồng nhất và sạch sẽ, giúp mô hình học được các đặc trưng một cách chính xác. Đây là bước nền tảng, quyết định lớn đến hiệu quả của toàn bộ hệ thống log management và phát hiện tấn công.

3.2. Ứng dụng học máy để nhận diện dấu hiệu tấn công từ URI

Sau khi tiền xử lý, dữ liệu URI được chuyển thành dạng vector số học mà các thuật toán học máy có thể hiểu được. Luận án đề xuất sử dụng các đặc trưng ký tự trong URI làm đầu vào. Các thuật toán như Rừng ngẫu nhiên và SVM sau đó được huấn luyện trên một tập dữ liệu lớn bao gồm cả các mẫu truy vấn bình thường và các mẫu chứa dấu hiệu tấn công của SQLi, XSS, CMDi, và duyệt đường dẫn. Trong giai đoạn hoạt động, mô hình sẽ phân tích từng URI mới và đưa ra dự đoán liệu nó có chứa mã độc hay không. Phương pháp này có độ chính xác cao hơn so với các bộ lọc dựa trên biểu thức chính quy (regex) truyền thống vì nó có thể học được các mối quan hệ ngữ cảnh phức tạp giữa các ký tự và từ khóa. Kết quả thực nghiệm trong luận án cho thấy "mô hình đề xuất cho độ chính xác cao, tỷ lệ cảnh báo sai thấp, thời gian xử lý nhanh", chứng minh tính khả thi khi triển khai trong môi trường thực tế.

IV. Giải Pháp Phát Hiện Tấn Công Giao Diện Web Dùng Ảnh Màn Hình

Tấn công thay đổi giao diện (Defacement) là một hình thức tấn công đặc biệt, không nhằm mục đích đánh cắp dữ liệu mà chủ yếu để phá hoại hình ảnh, truyền bá thông điệp chính trị hoặc thể hiện năng lực của tin tặc. Các phương pháp phát hiện truyền thống dựa trên so sánh mã nguồn HTML hoặc checksum thường không hiệu quả với các trang web động. Để giải quyết vấn đề này, luận án đã đề xuất một mô hình phát hiện tấn công web kiểu thay đổi giao diện dựa trên học sâu, kết hợp hai loại đặc trưng: văn bản trích xuất từ trang web và hình ảnh chụp màn hình của trang web đó. Ý tưởng cốt lõi là một cuộc tấn công defacement không chỉ làm thay đổi nội dung văn bản (thường chứa các từ khóa đặc trưng của tin tặc) mà còn thay đổi cả cấu trúc và hình ảnh trực quan của trang web một cách đột ngột. Bằng cách phân tích đồng thời cả hai khía cạnh này, mô hình có thể đạt được độ chính xác vượt trội. Đây là một hướng tiếp cận mới mẻ, đặc biệt hữu ích trong việc thu thập bằng chứng số cho các cuộc điều tra số sau này.

4.1. Kết hợp đặc trưng văn bản và hình ảnh để tăng độ chính xác

Mô hình đề xuất sử dụng hai nhánh xử lý song song. Nhánh thứ nhất phân tích nội dung văn bản thuần túy của trang web. Văn bản này thường chứa các từ ngữ bất thường, các thông điệp của tin tặc mà không xuất hiện trong trạng thái hoạt động bình thường. Nhánh thứ hai phân tích ảnh chụp màn hình của trang web, tập trung vào các đặc trưng thị giác như màu sắc, bố cục, logo, và các yếu tố đồ họa. Một trang web bị tấn công thay đổi giao diện thường có sự khác biệt rõ rệt về mặt hình ảnh so với phiên bản gốc. Việc kết hợp kết quả từ cả hai nhánh xử lý giúp giảm thiểu cảnh báo sai. Ví dụ, một thay đổi nhỏ về văn bản trên trang tin tức có thể là bình thường, nhưng nếu đi kèm với sự thay đổi đột ngột về logo và màu sắc nền, khả năng cao đó là một cuộc tấn công. Sự kết hợp này tạo ra một cơ chế phát hiện tấn công web mạnh mẽ và toàn diện hơn.

4.2. Mô hình BiLSTM và EfficientNet trong thu thập bằng chứng số

Để hiện thực hóa ý tưởng trên, luận án đã sử dụng các kiến trúc học sâu tiên tiến. Đối với việc xử lý đặc trưng văn bản, mô hình BiLSTM (Bidirectional Long Short-Term Memory) được lựa chọn. BiLSTM có khả năng nắm bắt ngữ cảnh từ cả hai chiều (từ trước ra sau và từ sau ra trước) trong một chuỗi văn bản, giúp nhận diện các mẫu ngôn ngữ bất thường một cách hiệu quả. Đối với việc xử lý hình ảnh, mạng EfficientNet được sử dụng. Đây là một kiến trúc mạng nơ-ron tích chập (CNN) hiện đại, nổi bật với hiệu suất cao và yêu cầu tài nguyên tính toán thấp hơn so với nhiều mô hình khác. Kết quả đầu ra từ hai mô hình này sau đó được kết hợp để đưa ra quyết định cuối cùng. Việc áp dụng các mô hình này không chỉ giúp tăng độ chính xác trong việc phát hiện mà còn cung cấp các bằng chứng rõ ràng (văn bản và hình ảnh) cho quá trình thu thập bằng chứng sốđiều tra số sau sự cố.

V. Kết Quả Thực Nghiệm Và Hiệu Quả Của Các Mô Hình Đề Xuất

Hiệu quả của các giải pháp nghiên cứu không chỉ nằm trên lý thuyết mà phải được chứng minh qua thực nghiệm. Luận án của NCS Nguyễn Trọng Hưng đã tiến hành cài đặt, thử nghiệm và đánh giá chi tiết cả hai mô hình phát hiện tấn công web đã đề xuất. Các thử nghiệm được thực hiện trên cả các bộ dữ liệu công khai và bộ dữ liệu thu thập thực tế, đảm bảo tính khách quan và khả năng áp dụng. Đối với mô hình phát hiện tấn công dựa trên web log, kết quả cho thấy các thuật toán học máy, đặc biệt là Rừng ngẫu nhiên, đạt được độ chính xác rất cao trong việc phân loại đồng thời nhiều loại tấn công như SQLi, XSS, CMDi và duyệt đường dẫn. Tỷ lệ cảnh báo sai được giữ ở mức thấp, và thời gian xử lý mỗi yêu cầu chỉ mất vài mili giây, hoàn toàn đáp ứng được yêu cầu của các hệ thống thời gian thực. Đối với mô hình phát hiện tấn công thay đổi giao diện, việc kết hợp đặc trưng văn bản và hình ảnh đã chứng tỏ sự vượt trội so với các phương pháp chỉ sử dụng một loại đặc trưng. Mô hình kết hợp đạt được độ chính xác và độ đo F1 cao, giảm thiểu đáng kể các trường hợp dương tính giả thường gặp ở các trang web động.

5.1. Đánh giá độ chính xác khi phát hiện tấn công SQLi và CMDi

Trong các kịch bản thử nghiệm, mô hình dựa trên phân tích log server đã thể hiện khả năng vượt trội trong việc phát hiện các cuộc tấn công SQL Injection và Command Injection (CMDi). Đây là hai trong số những loại tấn công nguy hiểm nhất, có thể dẫn đến việc chiếm toàn quyền kiểm soát máy chủ. Các thuật toán học máy đã học được các mẫu cú pháp tinh vi và các từ khóa đặc trưng thường xuất hiện trong payload của các cuộc tấn công này. Ngay cả khi tin tặc sử dụng các kỹ thuật mã hóa hoặc làm rối mã, các đặc trưng ở cấp độ ký tự vẫn giúp mô hình nhận diện được các bất thường. Kết quả thực nghiệm cho thấy tỷ lệ phát hiện (Detection Rate) đối với các loại tấn công này luôn ở mức trên 98%, một con số ấn tượng, khẳng định hiệu quả của việc áp dụng học máy vào an ninh ứng dụng web.

5.2. So sánh hiệu suất với các nghiên cứu trước đó về an ninh web

Một phần quan trọng của việc đánh giá là so sánh kết quả với các công trình đã được công bố trước đó. Luận án đã thực hiện so sánh hiệu suất của cả hai mô hình đề xuất với các nghiên cứu tiêu biểu trong cùng lĩnh vực. Đối với việc phát hiện tấn công thay đổi giao diện, mô hình kết hợp văn bản và hình ảnh cho thấy sự cải thiện rõ rệt về độ chính xác so với các phương pháp chỉ dựa trên phân tích mã HTML hay sử dụng các kỹ thuật thống kê truyền thống. Tương tự, mô hình phát hiện tấn công từ web log cũng cho thấy hiệu suất cạnh tranh, thậm chí vượt trội hơn một số giải pháp dựa trên học sâu phức tạp nhưng lại có ưu điểm về tốc độ và yêu cầu tài nguyên thấp hơn. Những kết quả này không chỉ khẳng định đóng góp khoa học của luận án mà còn mở ra hướng ứng dụng thực tiễn cho các tổ chức muốn nâng cao khả năng giám sát an ninh mạng của mình một cách hiệu quả và tiết kiệm chi phí.

VI. Tương Lai Của Việc Phát Hiện Tấn Công Web Xu Hướng Mới

Lĩnh vực phát hiện tấn công web đang không ngừng phát triển, được thúc đẩy bởi sự tiến bộ của trí tuệ nhân tạo và sự gia tăng của các mối đe dọa. Hướng đi trong tương lai sẽ tập trung vào việc xây dựng các hệ thống phòng thủ thông minh, tự động và có khả năng thích ứng cao. Các mô hình học máy và học sâu như đã trình bày trong luận án chỉ là bước khởi đầu. Xu hướng tiếp theo là phát triển các hệ thống có khả năng học không giám sát hoặc bán giám sát, giảm sự phụ thuộc vào dữ liệu gán nhãn thủ công vốn rất tốn kém. Các kỹ thuật như học tăng cường (Reinforcement Learning) cũng có thể được áp dụng để hệ thống tự động tìm ra các chính sách phòng thủ tối ưu thông qua quá trình thử và sai. Hơn nữa, việc tích hợp sâu hơn giữa các lớp phòng thủ, từ tầng mạng đến tầng ứng dụng, sẽ tạo ra một hệ sinh thái an ninh toàn diện. Phân tích hành vi người dùng (User and Entity Behavior Analytics - UEBA) cũng sẽ đóng vai trò quan trọng, giúp phát hiện các mối đe dọa từ bên trong hoặc các tài khoản bị chiếm đoạt mà các phương pháp phân tích payload truyền thống có thể bỏ lỡ.

6.1. Hướng tích hợp với tường lửa ứng dụng web WAF và SIEM

Các mô hình phát hiện tấn công dựa trên học máy sẽ phát huy tối đa hiệu quả khi được tích hợp chặt chẽ vào hệ sinh thái an ninh hiện có. Thay vì hoạt động như một hệ thống độc lập, chúng có thể đóng vai trò như một bộ não thông minh cho các Web Application Firewall (WAF) thế hệ mới. Các cảnh báo từ mô hình học máy có thể được sử dụng để tự động tạo ra các quy tắc chặn tạm thời trên WAF, ngăn chặn các cuộc tấn công ngay khi chúng được phát hiện. Đồng thời, mọi kết quả phân tích và cảnh báo nên được đẩy về hệ thống công cụ SIEM trung tâm. Tại đây, chúng sẽ được tương quan với dữ liệu từ các nguồn khác (log hệ điều hành, log tường lửa mạng, thông tin về các địa chỉ IP độc hại), giúp các nhà phân tích an ninh có một bức tranh đầy đủ và chính xác hơn về một sự cố, từ đó đẩy nhanh quá trình điều tra số.

6.2. Triển vọng của học sâu trong việc tự động hóa phản ứng sự cố

Tương lai của an ninh ứng dụng web không chỉ dừng lại ở việc phát hiện mà còn hướng tới tự động hóa phản ứng sự cố (Automated Incident Response). Các mô hình học sâu không chỉ có khả năng xác định một cuộc tấn công mà còn có thể phân loại mức độ nghiêm trọng, xác định véc-tơ tấn công và đề xuất các hành động khắc phục. Ví dụ, khi phát hiện một cuộc tấn công Brute Force vào trang đăng nhập, hệ thống có thể tự động tạm thời khóa địa chỉ IP tấn công, thông báo cho quản trị viên và yêu cầu người dùng bị ảnh hưởng đổi mật khẩu. Khi phát hiện một tệp mã độc được tải lên, hệ thống có thể tự động cách ly tệp đó và quét toàn bộ máy chủ để tìm các dấu vết lây nhiễm khác. Việc tự động hóa này giúp giảm thời gian phản ứng từ vài giờ xuống còn vài giây, hạn chế tối đa thiệt hại mà một cuộc tấn công có thể gây ra.

18/09/2025

Trích đoạn nội dung tài liệu

Chương 1. Tổng quan về phát hiện tấn công web giới thiệu khái quát về web và dịch vụ web, các lỗ hổng bảo mật web theo OWASP, các dạng tấn công web thường gặp, một số giải pháp và công cụ phát hiện tấn công web. Tiếp theo, chương này giới thiệu khái quát về học máy, học sâu và mô tả một số giải thuật học máy có giám sát và học sâu sử dụng trong các mô hình phát hiện tấn công web được đề xuất trong chương 2 và chương 3. Phần cuối của chương chỉ ra hai vấn đề sẽ được giải quyết trong luận án.

Phát hiện tấn công web dựa trên học máy sử dụng web log giới thiệu khái quát về web log, một số đề xuất phát hiện tấn công web sử dụng học máy, đánh giá ưu nhược điểm của các đề xuất. Phần cuối của chương này thực hiện việc xây dựng, cài đặt, thử nghiệm và đánh giá mô hình phát hiện tấn công web thường gặp dựa trên học máy sử dụng web log. Phát hiện tấn công thay đổi giao diện trang web giới thiệu khái quát về tấn công thay đổi giao diện, các phương pháp phát hiện tấn công thay đổi giao diện, so sánh các phương pháp phát hiện thay đổi giao diện sử dụng đặc trưng ảnh chụp màn hình trang web. Phần cuối của chương thực hiện việc xây dựng, cài đặt, thử nghiệm và đánh giá mô hình phát hiện tấn công thay đổi giao diện trang web dựa trên học sâu sử dụng kết hợp đặc trưng ảnh chụp màn hình và đặc trưng nội dung văn bản của trang web.

Cuối cùng là phần Kết luận của luận án. TỔNG QUAN VỀ PHÁT HIỆN TẤN CÔNG WEB Chương này trình bày khái quát về web và dịch vụ web, các dạng tấn công web thường gặp, một số giải pháp và kỹ thuật phát hiện và tổng quan về một số giải thuật học máy và học sâu cùng các độ đo sử dụng cho các đề xuất trong chương 2 và chương 3 của luận án. Phần tiếp theo trong chương này là trình bày các hướng nghiên cứu, ưu và nhược điểm từ đó đưu ra các vấn đề cần giải quyết trong luận án. Khái quát về web và dịch vụ web 1.

Các định nghĩa Dịch vụ web (Web service): Tổ chức World Wide Web Consortium (W3C) định nghĩa Dịch vụ web là hệ thống phần mềm cho phép các máy khác nhau tương tác với nhau thông qua mạng. Các dịch vụ web đạt được nhiệm vụ này với sự trợ giúp của các tiêu chuẩn mở, bao gồm XML, SOAP, WSDL và UDDI [29]. Tuy nhiên, theo một nghĩa rộng hơn Dịch vụ web là hệ thống dịch vụ mạng dựa trên giao thức HTTP, cung cấp nội dung trên nền web. Ứng dụng web (Web application) là một phần mềm ứng dụng chạy trên nền web [30].

Ứng dụng web cũng được vận hành dựa trên giao thức HTTP theo mô hình khách chủ (Client/Sever). Một ứng dụng web có thể gồm các thành phần: Máy khách web/trình duyệt web (Web client/web browser), Máy chủ web (HTTP/web server), URL/URI (Uniform Resource Identifier), Web session và cookie, Bộ diễn dịch và thực hiện các server script, Các server script (CGI – Common Gateway Interface), Máy chủ cơ sở dữ liệu và Hạ tầng mạng TCP/IP kết nối giữa máy khách và máy chủ web [31]. Website là tập hợp của các trang web được cài đặt và chạy (host) trên máy chủ web. Như vậy, website là một phần của ứng dụng web.

Trang web (Web page) là một phần của một website cung cấp một đầu mục nội dung hay một tính năng cụ thể của website. Ngôn ngữ thường dùng để tạo các trang web là HTML. Trong nội dung luận án này, nghiên cứu sinh tập trung nghiên cứu các dạng tấn công cơ bản lên các ứng dụng web và các website. Giao thức HTTP Giao thức truyền siêu văn bản (HTTP – Hyper-Text Transfer Protocol) là giao thức thuộc tầng ứng dụng thuộc bộ giao thức TCP/IP được sử dụng cho truyền siêu văn bản (Hyper-Text).

HTTP là giao thức nền tảng trong vận hành dịch vụ web và các ứng dụng web. Ngoài HTTP, HTTPS (Secure HTTP) còn được sử dụng cho các 8 ứng dụng web có yêu cầu đảm bảo an toàn thông tin truyền giữa máy khách (Client) và máy chủ (Server). Cổng dịch vụ chuẩn của HTTP và HTTPS tương ứng là 80 và 443. Giao thức HTTP có 3 đặc điểm cơ bản, bao gồm không hướng kết nối, độc lập với thông tin truyền và không trạng thái.

Giao thức HTTP hỗ trợ một số phương thức (method) để máy khách có thể gửi yêu cầu lên máy chủ. Các phương thức bao gồm: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS và TRACE. Phương thức GET được sử dụng để truy vấn thông tin từ máy chủ sử dụng một địa chỉ web. Các yêu cầu sử dụng phương thức GET chỉ nên truy vấn dữ liệu và không nên có ảnh hưởng (thay đổi) đến dữ liệu.

Phương thức HEAD tương tự như phương thức GET, nhưng chỉ có dòng trạng thái và phần tiêu đề được chuyển từ máy chủ đến máy khách. Phương thức POST được sử dụng để gửi dữ liệu đến máy chủ, chẳng hạn thông tin khách hàng, file tải lên,… được gửi lên máy chủ sử dụng HTML form. Phương thức PUT được sử dụng để thay thế tất cả các biểu diễn hiện tại của tài nguyên đích bằng nội dung tải lên. Phương thức DELETE được sử dụng để xóa tất cả các biểu diễn hiện tại của tài nguyên đích cho bởi một địa chỉ web.

Phương thức CONNECT được sử dụng để thiết lập đường hầm tới máy chủ được xác định bởi một địa chỉ web nhất định. Phương thức OPTIONS được sử dụng để mô tả các tùy chọn truyền thông cho tài nguyên đích. Phương thức TRACE được sử dụng để thực hiện một phép kiểm tra vòng lặp lại (loop-back) theo đường dẫn đến tài nguyên đích. Kiến trúc ứng dụng web và các thành phần Hình 1.

1 biểu diễn kiến trúc chuẩn của hệ thống ứng dụng web (hay ngắn gọn là ứng dụng web), trong đó mô tả các thành phần của một ứng dụng web và giao tiếp giữa chúng. Theo đó, các thành phần của một ứng dụng web gồm Web Browser (Trình duyệt web), Web Server (Máy chủ web), Application Server (Máy chủ ứng dụng), Data (Kho chứa dữ liệu – thường là cơ sở dữ liệu), File System (Hệ thống file trên máy chủ) và External System (Các hệ thống bên ngoài). Web Browser tạo và gửi yêu cầu về trang web (Page Request) đến Web Server. Nếu đó là yêu cầu trang web tĩnh, Web Server sẽ đọc nội dung trang từ File System và gửi trang web cho Web Browser.

Nếu đó là yêu cầu trang web động, Web Server sẽ chuyển yêu cầu cho Application 9 Server xử lý. Application Server sẽ dịch và thực hiện mã script trong trang web để tạo kết quả. Application Server có thể cần truy nhập Data, File System, hoặc External System để xử lý yêu cầu. Kết quả xử lý yêu cầu được chuyển lại cho Web Server để tạo trang web và gửi cho Web Browser.

Kiến trúc chuẩn của ứng dụng web [31] Một ứng dụng web có thể gồm các thành phần: Máy khách web/trình duyệt web (Web client/web browser), Máy chủ web (HTTP/web server), URL/URI, Web session và cookie, Bộ diễn dịch và thực hiện các server script, Các server script (CGI – Common Gateway Interface) và Máy chủ cơ sở dữ liệu [31]. - Trình duyệt web: Trình duyệt web là bộ phần mềm chạy trên máy khách có chức năng tạo yêu cầu, gửi yêu cầu và hiển thị phản hồi/kết quả trả về từ máy chủ web. Trình duyệt web có khả năng hiển thị nhiều loại dữ liệu của trang web: văn bản, hình ảnh, âm thanh, video,. Trình duyệt cũng hỗ trợ khả năng lập trình bằng các ngôn ngữ script (như Javascript), xử lý các ngôn ngữ HTML, XML, CSS,.

Một số trình duyệt thông dụng bao gồm: Microsoft Internet Explorer, Google Chrome, Mozilla Firefox, Opera, Apple Safari,. [31] - Máy chủ web: Máy chủ web tiếp nhận yêu cầu từ trình duyệt web, xử lý yêu cầu và trả về đáp ứng. Các đáp ứng thường là các trang web. Nếu là yêu cầu truy nhập các file tĩnh, máy chủ web truy nhập hệ thống file cục bộ, đọc nội dung file và gửi kết quả cho trình duyệt.

Nếu là yêu cầu truy nhập các file script, máy chủ web chuyển các script cho bộ xử lý script. Script có thể bao gồm các lệnh truy nhập cơ sở dữ liệu để xử lý dữ liệu. Kết quả thực hiện script được chuyển lại cho máy chủ web để tạo thành đáp ứng và gửi cho trình duyệt [31]. Có nhiều loại máy chủ web được triển khai sử dụng trên thực tế, trong đó các máy chủ web thông dụng nhất bao gồm: Mozilla Apache web server, Microsoft 10 Internet Information Services (IIS), nginx (NGINX, Inc), Google web services, IBM Websphere và Oracle web services.

- URL và URI: URL (Uniform Resource Locator) còn gọi là địa chỉ web, là một chuỗi ký tự cho phép tham chiếu đến một tài nguyên. Dạng thông dụng của URL: scheme://domain:port/path?query_string#fragment_id, trong đó: + scheme: chỉ giao thức truy nhập (http, https, ftp,.) + domain: tên miền, ví dụ www.com + port: số hiệu cổng dịch vụ; với cổng chuẩn (http 80 hoặc https 443) thì không cần chỉ ra số hiệu cổng + path: đường dẫn đến tên file/trang + ?query_string: chuỗi truy vấn, gồm một hoặc một số cặp tên biến=giá trị. Ký tự và (&) được dùng để ngăn cách các cặp + fragment_id: một tên liên kết định vị đoạn trong trang. URI (Uniform Resource Identifier) là một chuỗi ký tự dùng để nhận dạng một địa chỉ web hoặc một tên.

URI có thể là URL hoặc URN (Uniform Resource Name), trong đó URN được dùng để nhận dạng tên của tài nguyên, còn URL được dùng để tìm địa chỉ, hoặc vị trí của tài nguyên [31]. Các thành phần của URI - Web session và cookie: Web session (phiên làm việc web) là một kỹ thuật cho phép tạo ra ứng dụng web có trạng thái (stateful) vận hành trên giao thức HTTP không trạng thái (stateless). Máy chủ web tạo ra và lưu một chuỗi định danh (ID) cho mỗi phiên (Session) theo yêu cầu của máy khách. Phiên cho phép máy chủ web nhận dạng người dùng và xâu chuỗi các yêu cầu HTTP của mỗi người dùng.

Thời gian hoạt động của mỗi phiên tùy thuộc vào cấu hình máy chủ web. Ví dụ, sau đăng nhập thành công, máy chủ web tạo một phiên làm việc cho người dùng và không yêu cầu thông tin đăng nhập với các yêu cầu truy nhập tiếp theo cho đến khi kết thúc phiên làm việc. 11 Cookie còn gọi là HTTP cookie, hay Browser cookie là một mẩu thông tin do website gửi xuống và được lưu trên trình duyệt khi người dùng thăm website. Khi người dùng thăm website trong tương lai, website có thể đọc lại thông tin trong cookie để biết các hoạt động trước đó của người dùng.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ