Chương 1: Tổng quan dé tài Trong chuong dau tién, tac giả giới thiệu tổng quan về đề tài cũng như lý do chọn đề tài để nghiên cứu và những mục tiêu thực hiện nghiên cứu. - _ Chương 2: Cơ sở lý thuyết và các nghiên cứu liên quan Tại chương thứ hai, tác giả giới thiệu những lý thuyết được nghiên cứu trong quá trình thực hiện và những bài báo khoa học được sử dụng để tham khảo và nghiên cứu. -_ Chương 3: Thiết kế hệ thống Trong chương này, tác giả sẽ mô tả về mô hình được đề xuất. Bao gồm tổng quan mô hình đề xuất, các luồng hoạt động của mô hình và phương pháp tiền xử lý dữ liệu đưa vào mô hình, định nghĩa các thành phần trong mô hình học tăng cường được dé xuất.
- _ Chương 4: Hiện thực mô hình và thực nghiệm Trong chương thứ tư, tác giả sẽ trình bày chỉ tiết các bước dé hiện thực hệ thống đã được đề xuất. Tiếp theo sẽ là hiện thực các kịch bản thực nghiệm với mô hình bằng ngôn ngữ Python. Cuối cùng là đưa ra kết quả và nhận xét chung cho các kịch bản thực nghiệm đã đề ra. - _ Chương 5: Kết luận và hướng phát triển Ở chương cuối, nhóm tác giả hệ thống lại những gì đã làm được trong khoá luận này, đồng thời đưa ra những mục tiêu và các hướng phát triển dé có thể cải thiện kết quả, tăng thêm tính khả quan của đề tài khi áp dụng vào thực tiễn.
CƠ SỞ LÝ THUYET VA CÁC NGHIÊN CỨU LIEN QUAN 2. Các tin công web thường gặp Tân công mạng hay còn gọi là chiến tranh trên không gian mạng. Có thê hiểu tấn công mang là hình thức tan công xâm nhập vào một hệ thống mạng máy tính, cơ sở dữ liệu, hạ tầng mạng, website, thiết bị của một cá nhân hoặc một tổ chức thông qua mạng internet với những mục đích bất hợp pháp. Đề có thể ngăn chặn các cuộc tan công mạng, ta cần tìm hiéu và phân tích các cuộc tan công thường gap, từ đó có thé tìm ra dấu hiệu của cuộc tan công và thực hiện ngăn chặn chúng.
Tấn công SQL Injection Tần công SQL Injection là loại tấn công mà attacker có thé tận dụng các lỗ hồng và các lỗi logic trong source code đề chèn các câu truy vấn nguy hiểm nhằm khai thác thông tin từ server hoặc database.1: Minh họa tan công SQL Injection Dau hiệu của tan công SQL injection thông thường sẽ thêm những ký tự đặc biệt như #, --, %00, ‘, “. hoặc các từ union, and, or, order by,. vào sau input hay URL của trang web. Những ký tự này kết hợp với dữ liệu được đưa vào sẽ được máy chủ chuyền thành một câu truy vấn trong cơ sở dữ liệu và thực thi nó.
Tấn công Local File Inclusion Local File Inclusion là kỹ thuật tan công cho phép kẻ tan công đọc hoặc thực thi file trên ứng dụng web. Điều này có thể rất nguy hiểm vì nếu máy chủ web bị định cấu hình sai và chạy với đặc quyền cao, kẻ tan công có thé có quyền truy cập vào thông tin nhạy cảm. Nếu kẻ tấn công có thể đặt mã trên máy chủ web thông qua các phương tiện khác, thì chúng có thể thực thi các lệnh tùy ý. Local File Inclusion (LFI) 1.
Hacker identifies web 2. Hacker modifies URL application with insufficient string using “./“ directive filtering or validation of to ensure Directory (Path) browser input from users. Traversal is possible.php HACKER SERVER filename.php https: //example. Hacker backdoor uploads 4.
Request is improperly malicious .php file to host server validated and hacker is and attempts to locate script permitted to run malicious using same method as Step 2. script on host application.2: Minh họa tan công Local File Inclusion Kẻ tấn công sẽ thực hiện tấn công bằng cách thêm những từ khóa sau vào URL của trang web là: etc, htpasswd, passwd. Tấn công Remote File Inclusion Khi các ứng dụng web cho phép người dùng nhập dữ liệu, chang han như URL, giá trị tham số, v. và chuyển những thông tin trên nhờ cơ chế “includeFile” ma không được làm sạch đúng cách, kẻ tan công có thé lợi dụng lỗ hong Remote File Inclusion trong các ứng dụng web để tải lên các tệp hoặc tập lệnh độc hại bên ngoài, từ đó thao túng ứng dụng web thực thi các tệp từ xa bằng các tập lệnh độc hại.
Remote File Inclusion (RFI) 1. Hacker identifies web 2. Hacker modifies URL application with insufficient string using “./“ directive filtering or validation of to ensure Directory (Path) browser input from users. Traversal is possible.
https: //axezBifEcees/?page=£++4fBBx.txt https: //example.exe J HACKER SERVER 3. Hacker uploads malicious .php file to hacker-controlled server © and attempts to locate script using same method as step 2.php file is located and host server executes remote server-side code from hacker-controlled server.php oo HACKER SERVER filename.php --> https://hacksite. php https: //example.com/?page=https://hacksite.3: Minh họa tắn công Remote File Inclusion Dấu hiệu nhận biết tan công RFI thường thấy trong payload của request sẽ xuất hiện các đường dẫn URL tới web server khác. Tấn công Command Injection Lỗ hồng Command Injection là loại lỗ hổng mà kẻ tắn công có thé lợi dụng dé thực thi các lệnh tùy ý trên hệ điều hành máy chủ (OS), từ đó thu thập thông tin bí mật hoặc lấy quyền truy cập vào hệ thống.
ad UPLOAD/ DOWNLOAD. DATA $(curl https://web-attacker.sh | sh) > SERVER ACCESS & EDIT USER —> SECURITY LEVELS ‘ADMIN APPLICATION T1 ACCESS ACCESS LOCAL ” NETWORK SENSITIVE ACCESS DATA ey Hinh 2.4: Minh hoa tan céng Command Injection Kẻ tan công lợi dung lỗ hồng nay dé thực thi những câu lệnh dé thực hiện tấn công. Sau đây là những câu lệnh thường được sử dụng dé kẻ tan công có thé lẫy được nhiều thông tin VỀ server: pwd, Is, where, cd, ssh, ||, &&, echo, whoami. Tấn công Open Redirect Lỗ héng Open Redirect phát sinh khi một ứng dụng kết hợp dit liệu do người dùng kiểm soát vào mục tiêu chuyển hướng theo cách không an toàn.
Kẻ tan công có thể tạo một URL trong ứng dụng gây ra chuyền hướng đến một miền bên ngoài tùy ý. Hành vi này có thể được tận dụng để tạo điều kiện cho các cuộc tấn công lừa đảo chống lại người dùng ứng dụng. Khả năng sử dụng URL ứng dụng xác thực, nhắm mục tiêu đúng tên miền và có chứng chỉ SSL hợp lệ (nếu SSL được sử dung), tạo độ tin cậy cho cuộc tan công lừa đảo vì nhiều người dùng, ngay cả hi họ xác minh các tính năng này, sẽ không nhận thấy chuyển hướng tiếp theo tới một miền khác.com” is giving free movie tickets at : www.com/2url-www.abcin Grab them fast. Example’s Login !! uxemame C—— Password 302 Found !! Opens up the URL asit seems to be the genuine one.5: Minh họa tắn công Open Redirect Những từ khóa thường thấy trong tấn công Open redirect: redirect to, checkout_url, domain_name,.
Tấn công Carriage Return and Line Feed (CRLF) Tổ hợp ký tự xuống dòng của header HTTP và nội dung trang web HTML được gọi là CRLF. Máy chủ web sử dung CRLF dé hiểu khi nào tiêu đề HTTP mới bắt đầu và một tiêu đề khác kết thúc. CRLF cũng có thể cho ứng dụng web hoặc người dùng biết rằng một dòng mới bắt đầu trong một tệp hoặc trong một khối văn bản. Các ký tự CRLF là một thông báo HTTP/1.1 tiêu chuẩn, do đó, nó được sử dụng bởi bất kỳ loại máy chủ web nào, bao gồm Apache, Microsoft IIS và tất cả các loại máy chủ khác.
Trong một cuộc tan công bằng lỗ hong chèn CRLF, kẻ tan công chèn cả ký tự xuống vào input của người dùng dé lừa máy chủ, ứng dụng web hoặc người dùng nghĩ rằng một đối tượng đã kết thúc và một đối tượng khác đã bắt đầu. Do đó, các chuỗi CRLF không phải là các ký tự độc hại, tuy nhiên chúng có thé được sử dụng 10 cho mục đích xấu, dé phân tách phản hồi HTTP, v. Trong các ứng dụng web, việc tiêm CRLF có thể có tác động nghiêm trọng, tùy thuộc vào ứng dụng thực hiện với các mục đơn lẻ. Các tác động có thé tir tiết lộ thông tin đến thực thi mã, 16 hồng bảo mật ứng dụng web tác động trực tiếp.
Trên thực tế, một cuộc tấn công tiêm CRLF có thể gây ra hậu quả rất nghiêm trọng đối với ứng dụng web, mặc dù nó chưa bao giờ được liệt kê trong danh sách Top 10 của OWASP. Tan công Cross Site Scripting (XSS) Tan công XSS dựa vào lỗ hong XSS dé thực hiện tan công. Với lỗ héng XSS, attacker sẽ thao túng trang web gửi đoạn mã JavaScript độc hại tới người dùng. Doan mã JavaScript đó sẽ thực thi trên browser của người ding và đánh cắp các thông tin của người dùng như cookie, password và các thông tin nhạy cảm khác.
Thông thường, kẻ tan công sẽ sử dụng XSS và các kỹ thuật lừa đảo khác dé đánh lừa người dùng thực thi đoạn mã JavaScript nhằm đánh cắp thông tin. 11 #4 https://insecure-website.com/comment?message=<script src=https:/levil-user.js><!script> (&Password 3] @ Sensitive data) 4 + (G Wire transfer) `) (@ Mother's maiden name Hình 2.7: Minh họa tan công XSS Những từ khóa phô biến thường thấy trong tan công XSS là: script, onerror, onmouseover, onload, &\#X41, alert, <>. Tấn công Path traversal Đây là một dang tan công thường được sử dung với mục dich là truy cập các thư mục, đường dẫn không công khai trên Internet được lưu trữ tại thư mục gốc của Web. Bằng cách thao túng biến tham chiếu đến file “./” và các biến thể của nó để truy cập các tệp và thư mục tùy ý được lưu trữ trên hệ thống tệp bao gồm mã nguồn ứng dụng hoặc cầu hình và các tệp hệ thống quan trọng.
12 x x¬ < › œ_ Iloadlmage?filename=gift.etcipasswd| 0:root: /root: bin/bash +1:đaemon: /usr/sbin: /bin/sh pin: /bin/sh dev: /bản/sh sync: /bin: /bin/syne 60:ganes : /usr/ganes: /bin/sh 12:man: /var/cache/nan: /bin/sh :X:7:7:1p:/var/spoe1/1p4: /bin/sh 8:8:mail: /var/mail: /bin/sh 9:news: /var/spool/news: /bin/sh icp: /var/spool/wucp: /bin/sh roxy: /bin: /bin/sh we 3 :www-data: /var/wew: bin/sh TL» tạ Hình 2.8: Minh họa tan công Path traversal Những ký tự thường được sử dụng trong tan công Path traversal là. kẻ tấn công sé lặp lại những ký tự này nhiêu lần đề thực hiện tan công. Máy học - Học tăng cường 2. Giới thiệu về học tăng cường Hoc tăng cường (RL) là một nhánh của Máy học (ML) được định nghĩa bằng cách lập chiến lược khi có một cơ chế đánh giá từng hành động (cơ chế đó có thé không biết trước nhưng ta được phép thử.
Mục tiêu cuối cùng của việc học tăng cường là ta sẽ lập được một chiến lược các hành động dé có thé đạt được tối đa số điểm thưởng. Học tăng cường có thể được xem là một cách hiện thực hoá thí nghiệm Pavlov dưới dạng kỹ thuật số, là một đại diện trực tiếp của khái niệm củng cố được sử dụng cho việc học. Học tăng cường được áp dụng trong nhiều tình huống trong cuộc sống.