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
Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XIII về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR), Nha Trang, ngày 8-9/10/2020
DOI: 10.15625/vap.2020.00202
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
Hoàng Xuân Dậu1, Nguyễn Trọng Hưng2
1Khoa Công nghệ thông tin 1, Học viện Công nghệ Bưu chính Viễn thông
2Khoa Công nghệ và An ninh thông tin, Học viện An ninh nhân dân
TÓM TẮT: Tấn công chèn mã SQL (SQLi) và tấn công XSS từ lâu đã được xem là một trong các mối đe dọa chủ yếu đối với
các ứng dụng web và người dùng web. Các dạng tấn công này có thể dẫn đến nhiều rủi ro cho các ứng dụng web và người dùng
web, bao gồm từ việc vượt qua hệ thống xác thực của ứng dụng web, đánh cắp các thông tin từ cơ sở dữ liệu web và từ trình duyệt
người dùng, đến chiếm quyền điều khiển hệ thống máy chủ. Để đối phó với các dạng tấn công web, nhiều biện pháp và công cụ đã
được nghiên cứu và triển khai để bảo vệ các ứng dụng web và người dùng web. Trong lớp các biện pháp phòng chống tấn công web,
phát hiện tấn công web là một hướng nghiên cứu có nhiều triển vọng. Tuy vậy, một số biện pháp chỉ có khả năng phát hiện duy nhất
một dạng tấn công web, trong khi một số biện pháp khác đòi hỏi cập nhật tập luật phát hiện thường xuyên, hoặc một số biện pháp
lại yêu cầu lớn về tài nguyên tính toán do chúng sử dụng các kỹ thuật phát hiện phức tạp. Bài báo này đề xuất một mô hình phát
hiện tấn công web dựa trên học máy sử dụng web log. Mô hình phát hiện đề xuất được xây dựng sử dụng thuật toán học máy cây
quyết định - một trong các thuật toán học máy có chi phí tài nguyên tính toán tương đối thấp. Đồng thời, mô hình cũng không yêu
cầu phải cập nhật thường xuyên. Các thử nghiệm trên tập dữ liệu có gán nhãn và dữ liệu web log thực cho thấy mô hình có khả
năng phát hiện hiệu quả nhiều dạng tấn công web với độ chính xác chung đạt trên 98 %.
Từ khóa: Phát hiện tấn công web, phát hiện tấn công SQLi, phát hiện tấn công XSS, phát hiện tấn công duyệt đường dẫn,
phát hiện tấn công web dựa trên học máy.
I. GIỚI THIỆU
Các dạng tấn công web, bao gồm SQLi, XSS, CMDi (chèn dòng lệnh hệ điều hành) và duyệt đường dẫn được
cho là các mối đe dọa thường trực và nguy hiểm đối với các website, ứng dụng web và người dùng web [1], [2]. Các
dạng tấn công này rất thông dụng do sự phổ biến của các website, ứng dụng web và sự sẵn có của các công cụ tấn công
web trên mạng Internet [3]. Chúng tôi đặt tên cho nhóm các tấn công web gồm SQLi, XSS, CMDi và duyệt đường dẫn
là “tấn công web thường gặp”. Tấn công web thường gặp có thể gây ra những hậu quả nghiêm trọng cho các website,
ứng dụng web và người dùng web. Chúng có thể cho phép tin tặc (1) vượt qua hệ thống xác thực của ứng dụng web,
(2) thực hiện sửa đổi trái phép nội dung trang web, cơ sở dữ liệu web, (3) trích xuất dữ liệu từ cơ sở dữ liệu web, (4)
đánh cắp thông tin nhạy cảm trên máy chủ web và trình duyệt web của người dùng và thậm chí (5) chiếm quyền điều
khiển các máy chủ web và/hoặc máy chủ cơ sở dữ liệu [1], [2]. Hình 1 minh họa một ví dụ về tấn công SQLi vào một
website, trong đó tin tặc (Attacker) chèn mã độc SQL vào từ khóa tìm kiếm để xóa một bảng của cơ sở dữ liệu của
website.
Hình 1. Một ví dụ về tấn công SQLi vào một website
Do tính chất nguy hiểm của các dạng tấn công web thường gặp, nhiều biện pháp, công cụ đã được nghiên cứu,
phát triển và ứng dụng trong thực tế nhằm phát hiện và ngăn chặn các dạng tấn công này nhằm bảo vệ các website, ứng
dụng web và người dùng web. Tựu chung, có 3 hướng tiếp cận cho phòng chống các dạng tấn công web, bao gồm (1)
kiểm tra tất cả dữ liệu đầu vào, (2) giảm số bề mặt có thể bị tấn công và (3) ứng dụng chiến lược phòng vệ theo chiều
sâu [1], [2]. Cụ thể, hướng tiếp cận (1) yêu cầu kiểm tra kỹ lưỡng tất cả dữ liệu đầu vào của ứng dụng web và chỉ có dữ
liệu hợp lệ mới được chuyển đến khâu xử lý tiếp theo. Theo một cách khác, hướng tiếp cận (2) yêu cầu chia ứng dụng
web thành các thành phần và áp dụng các cơ chế kiểm soát truy cập phù hợp để hạn chế truy cập của người dùng đến
từng thành phần. Trong hướng tiếp cận (3), nhiều biện pháp phòng vệ được áp dụng tạo thành các lớp hỗ trợ nhau để
bảo vệ các ứng dụng web và người dùng web.
Bài báo này đề xuất một 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 thuộc
hướng tiếp cận (3). Chúng tôi sử dụng kỹ thuật học máy để xây dựng mô hình phát hiện, nhờ đó loại bỏ được việc xây
dựng và cập nhật thủ công các bộ lọc dữ liệu, hoặc các tập luật phát hiện, đồng thời tăng tỷ lệ phát hiện đúng và giảm
tỷ lệ cảnh báo sai. Ngoài ra, dữ liệu web log được các máy chủ web sinh ra theo cấu hình ngầm định cho mỗi website
hoạt động được sử dụng là dữ liệu đầu vào cho mô hình phát hiện.
Phần còn lại của bài báo được cấu trúc như sau: Mục II trình bày các nghiên cứu có liên quan; mục III giới thiệu
mô hình phát hiện tấn công web đề xuất, các thử nghiệm và kết quả và mục IV là kết luận của bài báo.
470
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
II. CÁC NGHIÊN CỨU LIÊN QUAN
Như đã đề cập trong Mục I, một số biện pháp và công cụ thuộc 3 hướng tiếp cận đã được đề xuất và ứng dụng
để phòng chống các dạng tấn công web thường gặp. Do giới hạn độ dài của bài báo, chúng tôi chỉ thực hiện khảo sát
một số đề xuất có liên quan gần nhất với hướng nghiên cứu của mình, bao gồm OWASP Core Rule Set (CRS) [4],
CRS [4] là một tập luật do dự án OWASP phát triển để phát hiện nhiều loại tấn công web liệt kê trong Top 10
OWASP với tỷ lệ cảnh báo sai thấp. CRS có thể được sử dụng trong tường lửa ứng dụng web ModSecurity - môđun đi
kèm với máy chủ web Mozilla Apache. ModSecurity được OWASP và cộng đồng an ninh web toàn cầu hỗ trợ. Tuy
nhiên, do CRS gồm một số lượng khá lớn luật, nên nó tương đối cồng kềnh và có thể gặp vấn đề tương thích khi tích
hợp vào các tường lửa ứng dụng web khác, hoặc sử dụng với các máy chủ web khác, như máy chủ web Microsoft
Internet Information Services.
SQL-ID [5] là một hệ thống phát hiện tấn công SQLi dựa trên đặc tả. Đầu tiên, SQL-ID xây dựng một tập luật
đặc tả cấu trúc của các lệnh SQL hợp lệ được sinh bởi ứng dụng web và gửi cho máy chủ cơ sở dữ liệu để thực hiện.
Sau đó, SQL-ID thực hiện giám sát, tiền xử lý và phân loại các câu truy vấn SQL được gửi đến dựa trên tập luật đặc tả
đã xây dựng. Chỉ những câu lệnh SQL được phân loại là “hợp lệ” mới được gửi đến máy chủ cơ sở dữ liệu để thực
hiện, còn các câu lệnh SQL không hợp lệ sẽ bị chặn và ghi log. Các thử nghiệm cho thấy, SQL-ID đạt được 0 % cảnh
báo sai và có thể được sử dụng để bảo vệ đồng thời nhiều website do hệ thống này được triển khai như một máy chủ
trung gian nằm giữa máy chủ web và máy chủ cơ sở dữ liệu. Mặc dù vậy, việc xây dựng thủ công tập luật đặc tả cấu
trúc các câu lệnh SQL hợp lệ phải thực hiện riêng rẽ cho từng website và tiêu tốn nhiều thời gian, đặc biệt với các
website, ứng dụng web có quy mô lớn.
bóng” và so sánh trang bóng với trang thực trước khi gửi trang thực cho máy khách. Trang bóng được tự động tạo song
hành với trang thực từ phản hồi của máy chủ web, nhưng sử dụng dữ liệu đầu vào sạch (không có mã script) có độ dài
bằng với dữ liệu thực. Các thử nghiệm cho thấy XSS-GUARD có khả năng ngăn chặn nhiều dạng XSS do OWASP liệt
kê. Hơn nữa, phương pháp này không đòi hỏi tập luật có kích thước lớn và cập nhật thường xuyên. Tuy nhiên, XSS-
GUARD làm tăng đáng kể tải lên máy chủ web do phải liên tục sinh và so sánh các trang bóng với các trang thực trên
mỗi yêu cầu từ người dùng web.
Network) để xây dựng các mô hình phát hiện tấn công web. Các thử nghiệm trên bộ dữ liệu CSIC 2010 [9] cho thấy
phương pháp đề xuất đạt được độ chính xác chung trên 98 %. Hơn nữa, phương pháp này có thể loại bỏ được các phần
việc cần thực hiện thủ công và tiêu tốn nhiều thời gian bao gồm việc lựa chọn và trích xuất các đặc trưng cho huấn
luyện và phát hiện. Với cách tiếp cận khá tương tự, Pan và cộng sự [8] đề xuất sử dụng công cụ Robust Software
Modelling Tool (RSMT) để giám sát và trích xuất các thông tin thực thi của một ứng dụng và sau đó sử dụng các thông
tin thu thập được để huấn luyện mạng học sâu stacked de-noising autoencoder để xây dựng mô hình phát hiện. Các thử
nghiệm cho thấy phương pháp đề xuất có thể phát hiện nhiều dạng tấn công web với độ đo F1 trung bình trên 90 %.
Từ các khảo sát trên, có thể rút ra một số nhận xét như sau:
OWASP Core Rule Set (CRS) [4] có thể phát hiện hiệu quả các dạng tấn công web, tuy nhiên CRS có kích
thước lớn và đòi hỏi được cập nhật thường xuyên. Ngoài ra, CRS gặp phải vấn đề tương thích khi được triển
khai trên các nền tảng máy chủ web khác với Mozilla Apache.
vấn đề với việc xây dựng và cập nhật tập luật thủ công, hoặc gặp vấn đề giảm hiệu năng của máy chủ web.
Liang và cộng sự [7] và Pan và cộng sự [8] đều sử dụng mạng học sâu để xây dựng mô hình phát hiện tấn
công web. Đây là hướng đi mới có nhiều triển vọng, tuy nhiên các kỹ thuật học sâu nhìn chung đòi hỏi tài
nguyên tính toán lớn và có thể không phù hợp cho phát hiện tấn công web theo thời gian thực. Hơn nữa, hiệu
năng phát hiện của các đề xuất này chỉ cao hơn một chút (với Liang và cộng sự [7]) và thậm chí còn thấp hơn
(với Pan và cộng sự [8]) so với hiệu năng phát hiện dựa trên các phương pháp học máy truyền thống. Ngoài
ra, việc sử dụng công cụ RSMT (Pan và cộng sự [8]) để giám sát máy chủ có thể làm suy giảm nghiêm trọng
hiệu năng hoạt động của máy chủ.
Trong bài báo này, chúng tôi đề xuất một mô hình phát hiện các dạng tấn công web thường gặp dựa trên học
máy sử dụng web log với các ưu điểm sau so với các nghiên cứu đã có: (1) Mô hình đề xuất có khả năng phát hiện 4
dạng tấn công web phổ biến, bao gồm SQLi, XSS, CMDi và duyệt đường dẫn; (2) thuật toán học máy cây quyết định
được sử dụng để xây dựng mô hình phát hiện có chi phí tính toán tương đối thấp nhưng vẫn đạt được hiệu năng phát
hiện cao; (3) quá trình lựa chọn, trích xuất các đặc trưng và huấn luyện mô hình có thể được thực hiện tự động; (4) mô
hình phát hiện đề xuất không yêu cầu phải cập nhật thường xuyên và (5) dữ liệu web log cho mỗi website được sử
dụng là đầu vào của mô hình phát hiện thường có sẵn theo cấu hình ngầm định trên các máy chủ web. Điều này có
nghĩa là việc thu thập dữ liệu sẽ tương đối đơn giản và giúp cho quá trình triển khai thực tế thuận lợi hơn.
Hoàng Xuân Dậu, Nguyễn Trọng Hưng
471
III. MÔ HÌNH PHÁT HIỆN TẤN CÔNG WEB THƯỜNG GẶP
A. Mô hình phát hiện tấn công web
Mô hình phát hiện tấn công web đề xuất được triển khai trong 2 giai đoạn: (1) Giai đoạn huấn luyện và (2) giai
1. Thu thập dữ liệu huấn luyện, bao gồm các URI (Uniform Resource Indicator) bình thường và các URI tấn công;
2. Dữ liệu huấn luyện được tiền xử lý để chọn và trích xuất các đặc trưng. Sau tiền xử lý, mỗi URI được chuyển
đổi thành 1 véctơ và tập dữ liệu huấn luyện được chuyển đổi thành một ma trận huấn luyện gồm M×(N+1) phần tử, trong
đó, M là tổng số URI trong tập huấn luyện và N là số đặc trưng. Cột cuối của ma trận huấn luyện lưu nhãn của URI.
3. Dữ liệu huấn luyện dưới dạng ma trận huấn luyện được đưa vào bước huấn luyện để xây dựng bộ phân loại,
hoặc mô hình sử dụng cho giai đoạn phát hiện.
1. Các URI được tách ra từ dữ liệu web log được sử dụng làm đầu vào cho quá trình phát hiện;
2. Mỗi URI được tiền xử lý theo thủ tục giống như khi thực hiện với URI huấn luyện. Kết quả của tiền xử lý là
véctơ của URI sử dụng cho bước tiếp theo;
3. Véctơ của URI được phân loại sử dụng Bộ phân loại đã xây dựng trong giai đoạn huấn luyện. Kết quả của bước
này là trạng thái của URI: Bình thường hoặc tấn công.
Hình 2. Mô hình phát hiện tấn công web: Giai đoạn huấn luyện
Hình 3. Mô hình phát hiện tấn công web: Giai đoạn phát hiện
B. Thử nghiệm trên bộ dữ liệu HTTP Param Dataset
Mục này trình bày về tập dữ liệu HTTP Param Dataset [10] dùng cho thử nghiệm, các vấn đề thử nghiệm, gồm
tiền xử lý, huấn luyện, các độ đo thử nghiệm, các kết quả và một số nhận xét, đánh giá.
Bộ dữ liệu này gồm 31.067 chuỗi truy vấn URI của các yêu cầu web, bao gồm độ dài và nhãn của truy vấn. Có
2 loại nhãn truy vấn là Norm (Bình thường) và Amon (Tấn công). Nhãn Anom lại gồm 4 loại tấn công cụ thể: SQLi,
XSS, CMDi và duyệt đường dẫn. Bộ dữ liệu được chia ra thành 2 phần:
Tập huấn luyện gồm 20.000 truy vấn được sử dụng cho huấn luyện xây dựng mô hình phát hiện;
Tập kiểm thử gồm 11.067 truy vấn được sử dụng để đánh giá hiệu năng của mô hình phát hiện.
2. Tiền xử lý
Tiền xử lý thực hiện việc tách và véctơ hóa các đặc trưng của các truy vấn URI. Khâu này gồm 2 nhiệm vụ:
Tách các đặc trưng của truy vấn URI sử dụng kỹ thuật n-gram. Kỹ thuật n-gram được lựa chọn do đây là
phương pháp đơn giản và thực thi nhanh. Chúng tôi lựa chọn 3-gram để tách các đặc trưng của URI;
472
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
Véctơ hóa các đặc trưng của URI sử dụng phương pháp IF-IDF (Term Frequency-Inverse Document
Frequency). Với mỗi 3-gram, giá trị tf-idf được tính toán như sau:
(1)
(2)
tf-idf(t, d, D) = tf(t, d) x idf(t, D)
(3)
trong đó, tf(t, d) là tần suất của 3-gram t trong URI d; f(t, d) là số lần 3-gram t xuất hiện trong URI d; max{f(w,d): w∈
d} là số lần xuất hiện lớn nhất của một 3-gram bất kỳ trong URI d; D là tập tất cả các URI và N là tổng số lượng các
URI. Do số lượng các đặc trưng URI (số lượng 3-gram) có thể rất lớn, nên phương pháp PCA (Principle Component
Analysis) được sử dụng để giảm số đặc trưng về 256 – lựa chọn theo thực nghiệm.
3. Huấn luyện
Bước huấn luyện sử dụng thuật toán học máy cây quyết định CART hỗ trợ bởi thư viện Python Sklearn để xây
dựng mô hình phát hiện. Lý do thuật toán học máy cây quyết định được lựa chọn là do đây là thuật toán thực thi nhanh
với chi phí tính toán thấp, thích hợp cho các hệ thống phát hiện tấn công theo thời gian thực. Kết quả của bước huấn
luyện là Bộ phân loại hay Mô hình phát hiện sử dụng cho giai đoạn phát hiện.
4. Độ đo đánh giá
Độ đo đánh giá được sử dụng là độ chính xác phát hiện chung ACC được tính theo công thức sau:
ACC = Số truy vấn được phát hiện đúng/Tổng số truy vấn kiểm thử * 100 %
(4)
Độ đo ACC được tính toán cho từng dạng tấn công web, cho các truy vấn URI bình thường và tính chung cho
tất cả các truy vấn kiểm thử.
5. Phát hiện và kết quả
Trong giai đoạn phát hiện, tập dữ liệu kiểm thử được sử dụng để kiểm tra hiệu năng phát hiện của mô hình đã
xây dựng trong giai đoạn huấn luyện. Mỗi truy vấn URI trong tập kiểm thử được tiền xử lý sử dụng thủ tục giống như
quá trình huấn luyện. Sau đó, mỗi véctơ của truy vấn URI được đưa vào phân loại và kết quả có thể bình thường, hoặc
tấn công, kèm theo dạng tấn công cụ thể. Bảng 1 cung cấp độ chính xác phát hiện sử dụng Tập kiểm thử.
Bảng 1. Độ chính xác phát hiện sử dụng Tập kiểm thử
Độ chính xác
ACC (%)
Độ chính xác của Liang và Độ chính xác của Pan và
Nhãn phát hiện
cộng sự [7] (%)
cộng sự [8] (%)
URI bình thường
Tấn công SQLi
98,60
99,34
85,88
73,33
97,94
98,56
Tấn công XSS
Tấn công CMDi
Tấn công duyệt đường dẫn
Độ chính xác chung
98,42
91,40
6. Nhận xét
Mô hình phát hiện tấn công web đề xuất đạt được độ chính xác phát hiện chung khá cao, 98,56 % trên tập dữ
liệu kiểm thử. Kết quả này cao hơn một chút so với độ chính xác 98,42 % của Liang và cộng sự [7] và cao hơn
đáng kể so với độ chính xác 91,40 % của Pan và cộng sự [8], trong khi các đề xuất này sử dụng các kỹ thuật
học sâu với yêu cầu tài nguyên tính toán lớn.
Độ chính xác phát hiện tấn công SQLi đạt được rất cao (99,34 %), theo sau là độ chính xác phát hiện truy vấn
URI bình thường và tấn công duyệt đường dẫn. Độ chính xác phát hiện tấn công XSS và CMDi chưa cao, chỉ
đạt lần lượt 85,88 % và 73,33 %. Điều này là do dữ liệu huấn luyện cho các dạng tấn công XSS và CMDi
chưa đầy đủ để có thể xây dựng một mô hình phát hiện hiệu quả.
C. Thử nghiệm trên web log thực
Trong mục này, chúng tôi cung cấp một số kết quả thử nghiệm trên web log thực thu thập trên các máy chủ web
đang vận hành. Nhìn chung, các máy chủ web phổ biến như Mozilla Apache, Microsoft IIS và Ng ngix đều có thể tạo
log cho mỗi website mà chúng vận hành theo các yêu cầu từ người dùng. Hầu hết các web log ở dạng văn bản thuần và
mỗi dòng là một bản ghi log. Mặc dù có nhiều định dạng log được sử dụng, định dạng W3C Extended log file format
Hoàng Xuân Dậu, Nguyễn Trọng Hưng
473
[11] được sử dụng rộng rãi nhất và được hầu hết máy chủ web hỗ trợ. Hình 4 minh họa một phần file web log sử dụng
định dạng W3C Extended log file format.
Từ file web log, chúng tôi tách các URI truy cập là sự kết hợp của các trường cs-uri-stem và cs-uri-query trong
mỗi bản ghi log. Sau đó, truy vấn URI được đưa vào quá trình phát hiện như biểu diễn trên Hình 3. Các thử nghiệm
trên web log thực xác nhận mô hình đề xuất có khả năng phát hiện chính xác và hiệu quả các dạng tấn công web
thường gặp. Bảng 2 cung cấp một số truy vấn tấn công và bình thường được phát hiện bởi mô hình đề xuất sử dụng
web log thực.
Bảng 2. Một số truy vấn tấn công được phát hiện trong web log thực
Nhãn phát hiện
Tấn công SQLi
Truy vấn URI thực tế
fpw=(select%20convert(int%2cCHAR(65)))
type=vh01i'><script>alert(1)</script>ooq5g
fpw=WEB-INF/web.xml%3f
Tấn công XSS
Tấn công CMDi
Tấn công duyệt đường dẫn
Bình thường
type=../../../../../../../../../../../etc/passwd%00
tabid=471&language=en-US
Tấn công SQLi
1' where 2145=2145;select sleep(5)#d
"<img id=xss src="" javascript:alert('xss');"">"
"& ping -n 30 127.0.0.1 &"
Tấn công XSS
Tấn công CMDi
Tấn công duyệt đường dẫn
txtSearchNews=.../.\.../.\.../.\.../.\.../.\.../.\.../.\.../.\.../.\.../.\windows/win.ini
IV. KẾT LUẬN
Bài báo này đề xuất một mô hình phát hiện tấn công web dựa trên học máy có giám sát sử dụng web log. Mô
hình đề xuất có khả năng phát hiện 4 dạng tấn công web thường gặp nguy hiểm nhất, bao gồm tấn công SQLi, XSS,
CMDi và duyệt đường dẫn. Các thử nghiệm trên tập dữ liệu có gán nhãn và dữ liệu web log thực khẳng định mô hình
đề xuất đạt được độ chính xác phát hiện chung là 98,56 % và mô hình có khả năng phát hiện hiệu quả các dạng tấn
công web thường gặp. Mô hình đề xuất được huấn luyện sử dụng thuật toán cây quyết định có chi phí tính toán thấp
nhưng vẫn đạt được hiệu quả phát hiện cao. Quá trình huấn luyện để xây dựng mô hình có thể được thực hiện tự động.
Trong tương lai, chúng tôi sẽ mở rộng mô hình cho phép phát hiện thêm nhiều dạng tấn công web, cũng như
nâng cao tỷ lệ phát hiện đúng cho một số dạng tấn công web đặc thù như XSS và CMDi.
TÀI LIỆU THAM KHẢO
[2] Abhishek Kumar Baranwal, “Approaches to detect SQL injection and XSS in web applications”, EECE 571B,
Term Survey Paper, University of British Columbia, Canada, April 2012.
[3] Website Attack Tools, https://sourcedefense.com/glossary/website-attack-tools/, accessed June 2020.
[4] OWASP
ModSecurity
Core
Rule
Set,
https://www.owasp.org/index.php/Category:
OWASP_ModSecurity_Core_Rule_Set_Project, accessed June 2020.
474
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
[5] Kemalis, K. and T. Tzouramanis. “SQL-IDS: A Specification-based Approach for SQL injection Detection”.
SAC’08. Fortaleza, Ceará, Brazil, ACM, 2008.
[6] P. Bisht, and V.N. Venkatakrishnan, “XSS-GUARD: Precise dynamic prevention of Cross-Site Scripting Attacks,”
In Proceeding of 5th Conference on Detection of Intrusions and Malware & Vulnerability Assessment, LNCS
5137, pp. 23-43, 2008.
[7] Jingxi Liang, Wen Zhao and Wei Ye. “Anomaly-Based Web Attack Detection: A Deep Learning Approach”.
ICNCC 2017, Kunming, China, December 8-10, 2017.
[8] Yao Pan, Fangzhou Sun, Zhongwei Teng, Jules White, Douglas C. Schmidt, Jacob Staples and Lee Krause.
“Detecting web attacks with end-to-end deep learning”. Journal of Internet Services and Applications (2019)
10:16, SpringerOpen, 2019.
DETECTING COMMON WEB ATTACKS BASED ON
MACHINE LEARNING USING WEB LOG
Hoang Xuan Dau, Nguyen Trong Hung
ABSTRACT: SQL injection (SQLi) and Cross-site Scripting (XSS) attacks have long been considered major threats to web-
based applications and their users. These types of web attacks can cause serious damage to web applications and web users,
ranging from bypassing the authentication system, stealing information from database and users, to even taking control of the server
system. To cope with web attacks, many measures have been researched and applied to protect web applications and users. Among
them, the detection of web attacks is a promising approach in the defensive layers for web applications. However, some measures
can only detect a single type of web attacks, while others require frequent updates to the detection rule sets, or require extensive
computational power because of using complex detection methods. This paper proposes a web attack detection model based on
machine learning using web log. The detection model is built using the inexpensive decision tree algorithm and it does not require
frequent update. Our experiments on a labelled dataset and real web logs show that the proposed model is capable of detecting
several types of web attacks effectively with overall detection accuracy rate of over 98 %.
Bạn đang xem tài liệu "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", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
phat_hien_tan_cong_web_thuong_gap_dua_tren_hoc_may_su_dung_w.pdf

