Với sự phát triển nhanh chóng và mạnh mẽ của trí tuệ nhân tạo AT, việc tạo ra các công cụ để thực hiện khai thác hệ thống một cách tự động ngày càng trở nên rộng rãi khi ta có thể khaith
Trang 1VÕ DUY NHẤT - 20521711
KHÓA LUẬN TỐT NGHIỆP
NGHIÊN CỨU PHƯƠNG PHÁP TỰ ĐỘNG HÓA
KHAI THÁC XÂM NHẬP HỆ THỐNG MẠNG DỰA
TRÊN HỌC TĂNG CƯỜNG PHÂN CẤP
A STUDY ON AUTOMATED NETWORK EXPLOITATION
USING HIERARCHICAL REINFORCEMENT LEARNING
CU NHAN NGANH AN TOAN THONG TIN
GIANG VIEN HUGNG DAN:
ThS Phan Thé DuyThS Bui Thanh Binh
TP.Hồ Chí Minh - 2024
Trang 2LỜI CẢM ƠN
Để hoàn thành khóa luận tốt nghiệp này, tôi xin gửi lời cảm ơn đến Ban giám
hiệu Trường Dai học Công nghệ Thông tin — Dai học Quốc Gia Thành Phố Hồ Chí Minh vì đã tạo điều kiện học tập, nghiên cứu tốt nhất Cảm ơn quý thầy
cô giảng dạy tại trường nói chung và Khoa Mạng máy tính & Truyền thông nói
riêng vì đã truyền đạt những kiến thức chuyên môn bổ ích, những kinh nghiệm
thực tế quý báu mà tôi đã học hỏi được trong suốt quá trình học tập, rèn luyện
tại trường.
Toi xin gửi lời tri ân và biết ơn đến thay Phan Thế Duy và thầy Bùi ThanhBình đã trực tiếp quan tâm, đồng hành và hướng dẫn tận tình trong suốt quá
trình tìm hiểu và thực hiện đề tài.
Tôi xin gửi lời cam ơn đến gia đình và những người bạn thân thiết đã luônđồng hành, động viên và đóng góp ý kiến trong quá trình thực hiện nghiên cứu
Trang 3MUC LUC
MỤC LUC eee ii
DANH MỤC CÁC KÝ HIỆU, CÁC CHU VIET TAT v
DANH MỤC CÁC HÌNH VẼ vi
DANH MỤC CAC BANG BIẾU vii
TOM TAT ĐỀ TÀI 1
CHƯƠNG 1 TONG QUAN 3 11 Giới thiệu vấn dé 2.0 en 3 1.2 Giới thiệu những nghiên cứu liên quan 4
1.2.1 Công trình nghiên cứu Automating Privilege Escalation with Deep Reinforcement Learning [ð] 4
1.2.2 Công trình nghiên cứu Automating post-exploitation with deep reinforcement learning {10} 5
1.2.3 Công trình nghiên cứu An Intelligent Penetration Testing Method Using Human Feedback [9} 7
1.2.4 Công trình nghiên cứu Raiju: Reinforcement Learning-Guided Post-Exploitation for Automating Security Assess-ment of Network Systems [l3] 8
1.3 Nhận định về các nghiên cứu liên quan 8
131 Uudiem so 2.0.0 ee ee 8 1.3.2 Hanché 0 000 000000000000 08 4% 10 1.4 Dinh hướng phát triển từ các nghiên cứu liên quan 10
1.5 Mục tiêu, đối tượng, và phạm vi nghiên cứu 12
1.5.1 Mục tiêu nghiên đỨu Ặ Ặ Q Q Q S 12
Trang 42.1.3 Kiểm thử xâm nhập tự động 16
2.2 Học máy (Machine Learning) 0 17
2.3 Học sâu (Deep Learning) .0000 19
2.3.1 Khái nệm 2 eee 19
2.3.2 Deep Learning hoạt động như thế nado? 19
2.4 Học tăng cường (Reinforcement Learning) 21
2.4.1 Quy trình quyết định Markov (Markov Decision Process
-MDDG” #Zá@>` | / 21
2.4.2 Tổng quan mô hình học tăng cường 22
2.43 Q-Learning ‹ Q Q Q Q Q Q 23
2.4.4 Mô hình học tăng cường sâu 24
2.5 Các thuật toán Deep Reinforcement Learning 26
2.5.1 Value-based và Policy-based 26 2.5.2 Actor và Critic 2 ee 27
2.5.3 Thuật toán Advantage Actor Critic (A2C) 29 2.5.4 Thuật toán Proximal Policy Optimization (PPO) 312.6 Mô hình hoc tăng cường sâu phân cap - 41
CHƯƠNG 3 MÔ HÌNH HỌC TĂNG CƯỜNG SÂU PHÂN CẤP
CHO QUÁ TRÌNH TỰ ĐỘNG HÓA HẬU KHAI THÁC XÂM NHẬP 43
Trang 53.3
lv
Dinh nghĩa 2 lớp tác nhân Upper-level Agent va Lower-level Agent
của tác nhân hoc tăng cường sâu phân cấp (HDRL Agent) 44
3.2.1 Upper-level Agent 0.0004 44 3.2.2 Lower-level Ag@n va 48
Mô hình học tăng cường sâu phân cấp trong tự động hóa hậu
4.1.1 Tổng quan môi trường thinghiém 54
4.1.2 Ý tưởng cho việc tăng tốc quá trình huấn luyện 55 4.13 Chi tiết quá trình huấn luyện 57 4.2 Két quathinghiém 2.0.0 0005 62
4.2.1 Kết quả khai thác của công cụ 62
4.2.2 Tổng quan quá trình huấn luyện 64
4.2.3 Thời gian huấn luyện của hai thuận toán HA2C và HPPO 64
4.2.4 Kết quả thực nghiệm trên các môi trường đánh giá (testing) 67 4.2.5 Kết luận việc so sánh giữa hai thuật toán HA2C và HPPO
từ kết quả của quá trình thực nghiệm 73
CHƯƠNG 5 KẾT LUẬN 75
5.1.1 Kết quả đạt được Ặ.Ặ Ốc 765.1.2 Hạn chế Q Q Q Q 0000 ee 76
5.1.3 Khó khăn và thách thức 77
TAI LIEU THAM KHAO 79
Trang 6DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIET TAT
5S Không gian các trạng thái mà tác tử
St Trang thái môi trường tại lượt t
A Tap các hành động tác tử
at Hành động tại lượt thứ t
P Hàm chuyển
R Hàm phần thưởng
T Chính sách của Mô hình học tăng cường
Ww Trọng số cho phan thưởng
+ Chiết khấu cho phần thưởng
vr Chính sách tối đa hóa kì vọng
Q Hàm giá trị cho trạng thái - hành động
Trang 7DANH MỤC CÁC HÌNH VE
Hình 1.1 Mô hình tổng quát của công trình [l0]
Hình 1.2 Kết qủa huấn luyện của mô hình [I0]
Hình 1.3 Mô hình triển khai của công trình [9] _
Hình 1.4 So sánh tỉ lệ tan công thành công của các thuật toán trong
công trình nghiên cứu [13] Ặ.Ặ
Hình 1.5 So sánh số lượng steps thực hiện của các thuật toán trong
công trình nghiên cứu [13]
Hình 2.1 Hậu khai thác xâm nhập (Post-exploitation) nằm ở giai
đoạn 6 của quá trình PT co
Hình 2.2 Mô tả cách thức hoạt động của Deep Learning
Hình 23 Kiến trúc củaMDP Ặ co
Hình 2.4 Mô hình học tăng cường
Hình 25 Ví dụ về bảng lưu trữ của Q-learning
Hình 2.6 Tổng quan kiến trúc của mô hình DQN Hình 2.7 Tổng quan quy trình huấn luyện của mô hình DQN
Hình 2.8 Công thức cập nhật chính sách
Hình 2.9 Công thức cập nhật thông số trong Critic network
Hình 2.10 Hình anh mô tả phương pháp Actor-Citric
Hình 2.11 Biểu đồ biểu diễn một điểm (tại một thời gian) của hàm
Hình 2.12 Biểu đồ hiển thị mục tiêu thay thế cập nhập chính sách
Hình 2.13 Ví dụ về HRDL model
Hình 3.1 Tac nhân học tăng cường sâu phân cấp Hình 3.2 Mô hình thực nghiệm đề xuất
Trang 8Hình 4.1 Hình ảnh tao mới một session khai thác thành công trên
Hình 4.2 Hình ảnh khai thác leo thang đặc quyền thành công của
Hình 4.3 Hình ảnh khai thác leo thang đặc quyền thành công trên
Trang 9DANH MUC CAC BANG BIEU
Bảng 1.1 Hướng phat triển so với những nghiên cứu liên quan 11
Bang 3.1 Bảng danh sách các module theo từng loại action 49
Bảng 4.1 Bảng môi trường huấn luyện (training) 57
Bang 4.2 Bang môi trường đánh giá (testing) 58
Bang 4.3 Bảng danh sách các module theo từng loại action 66
Bảng 4.4 Bảng so sánh kết quả của các thuật toán HA2C và HPPO trên 2000 episode đối với reward (+30, -l) 69
Bảng 4.5 Bảng so sánh kết quả của các thuật toán HA2C và HPPO trên 2000 episode đối với reward (+1,-1) 69
Bảng 4.6 Bảng so sánh kết quả của các thuật toán HA2C và HPPO trên 4000 episode đối với reward (+30, -l) 70
Bảng 4.7 Bang so sánh kết quả của các thuật toán HA2C và HPPO trên 4000 episode đối với reward (+1,-1) 70
Bảng 4.8 Bảng so sánh kết quả của các thuật toán HA2C và HPPO trên 8000 episode đối với reward (+30, -l) 71
Bảng 4.9 Bảng so sánh kết quả của các thuật toán HA2C và HPPO trên 8000 episode đối với reward (+1,-1) 71 Bảng 4.10 Bảng so sánh kết quả của các thuật toán trên 4000 thao tác 72 Bảng 4.11 Bảng so sánh kết quả của các thuật toán trên 200 thao tác 73
Trang 10TÓM TẮT ĐỀ TÀI
Kiểm thử thâm nhập (Penetration Testing - Pentest - PT) là một phương pháp hiệu quả để đánh giá tính bảo mật của một hệ thống mạng bằng cách môphỏng các cuộc tấn công của hacker từ những lổ hổng và điểm yếu trong hệ
thống mạng Quá trình PT thường chủ yếu được thực hiện bởi các chuyên gia có
kinh nghiệm, chính vì vậy nên việc phát triển các công cụ PT tự động để giảmbớt áp lực thiếu hụt nhân lực là điều cấp thiết Với sự phát triển nhanh chóng
và mạnh mẽ của trí tuệ nhân tạo (AT), việc tạo ra các công cụ để thực hiện khai thác hệ thống một cách tự động ngày càng trở nên rộng rãi khi ta có thể khaithác một cách tự động và có thể tự vạch ra các chiến lược tấn công tương đốichính xác mà không cần đòi hỏi quá nhiều công sức cũng như trình độ hiểu biết
về các kỹ thuật tấn công Trong quá trình PT hệ thống mang có rất nhiều giai
đoạn khác nhau, trong đó giai đoạn PT hậu khai thác (Post-Exploitation) là
một giai đoạn rất quan trọng bởi vì nó giúp đánh giá được mức độ an toàn của
hệ thống mạng bên trong nếu hệ thống bị kẻ tấn công xâm nhập thành công
vào một số máy chủ hoặc thậm chí là những rủi ro bắt nguồn từ chính nội bộbên trong Như đã đề cập ở trên, việc ứng dụng trí tuệ nhân tạo giúp tự độnghóa quá trình hậu khai thác là một hướng đi hỗ trợ đắc lực đảm bảo tính bảomật của hệ thống mạng Trong số đó, học tăng cường sâu (Deep ReinforcementLearning - DRL) là một phân nhánh của trí tuệ nhân tạo dưới sự kết hợp của
Reinforcement Learning và Deep Learning là một cách tiếp cận đầy hứa hẹn.
Tuy nhiên, vấn đề nan giải là độ phức tạp cao của các kịch bản PT trong quá
trình hậu khai thác cùng với không gian hành động rộng lớn làm giảm đi hiệu
suất của quá trình hậu khai thác Vì vậy trong khóa luận này, tôi đề xuất môhình hoc tăng cường sâu phân cấp (Hierarchical Deep Reinforcement Learning -
HDRL) để khắc phục các van đề nan giải trên Mô hình được thiết kế dưới dang
Trang 11cấu trúc phân cấp chứa hai lớp tác nhân, hai tác nhân này được triển khai bằng
các thuật toán của DRL nhằm phân tách các hành động của quá trình hậu khaithác ở mức độ leo thang đặc quyền (privilege escalation), thu thập thông tin
(gather information) và tấn công lan rộng (lateral movement) từ đó giúp tăng
cao khả năng đánh giá mức độ bảo mật của hệ thống mạng
Trang 12CHƯƠNG 1 TONG QUAN
Chương này giới thiệu về van đề va các nghiên cứu liên quan Đồng thời,
trong chương này tôi cũng trình bày phạm vi và cấu trúc của Khóa luận.
1.1 Giới thiệu vẫn đề
Với sự chú trọng ngày càng tăng về an ninh mạng, nhiều công nghệ đánh giá
đã được đề xuất bởi nhiều cá nhãn, tổ chức có uy tín trong những năm gan đây Trong số đó, kiểm thử thâm nhập (Penetration Testing - Pentest - PT) đượccông nhận rộng rãi là cách tốt nhất để đánh giá tính bảo mật của hệ thống
mang [17] PT chủ yếu mô phỏng các phương thức tấn công của tin tặc độc hai
để đánh giá điểm yếu, lỗi kỹ thuật hoặc lỗ hồng (Vulnerability) của đối tượng
đánh giá Quá trình PT hệ thống mạng, đặc biệt là trong quá trình hậu khai
thác xâm nhập hiện nay thường được hiện thủ công bởi các chuyên gia có kỹ
thuật cao Những đặc điểm như vậy cản trở việc ứng dụng PT trên quy mô lớn
và cần phải nghiên cứu các công cụ PT tự động để đáp ứng nhu cầu thị trường
và giảm bớt áp lực thiếu hụt nhân tài Các công cu PT tự động hoàn thiện và
được sử dụng rộng rãi hiện có trong quá trình hậu khai thác, chang hạn như
Metasploit [11], PowerShell Empire [14] và PowerSploit [15], đã hỗ trợ đắc lực
cho quá trình khai thác và giúp cải thiện đáng kể hiệu quả của PT Tuy nhiên, những công cụ này luôn cần sự chỉ huy của các chuyên gia kiểm thử giàu kinh nghiệm và thiếu khả năng ra quyết định thông minh để tự động hóa toàn bộquy trình Với sự phát triển của học máy (Machine Learning) các chuyên gia đã
bắt đầu khám phá các công nghệ bảo vệ an ninh tự động dựa trên học máy vàxuất hiện các phương pháp PT tự động dựa trên hoc tăng cường (ReinforcementLearning - RL) Những phương pháp này như một quy trình quyết định tuần tự
Trang 13lấy trạng thái của đối tượng thử nghiệm làm đầu vào, hành động PT làm đầu
ra và kết quả thực hiện của hành động làm phần thưởng Thông qua sự tươngtác giữa tác nhân và môi trường, huấn luyện tác nhân hội tụ đến chiến lược tối
ưu và sau đó hiện thực hóa PT của môi trường mạng Những phương pháp này
gần với quy trình thực tế được thực hiện bởi chuyên gia, thực tế và thông minh
hơn Họ đã mong đợi để nhận ra sự tự động hóa hoàn toàn của quy trình PT,
vì vậy họ có nhiều triển vọng nghiên cứu hơn Trong những nghiên cứu những
năm gần đây, học tăng cường sâu (Deep Reinforcement Learning - DRL) dưới
sự kết hợp giữa Reinforcement Learning và Deep Learning được các chuyên gia
quan tâm và đạt được những kết quả tích cực trong quá trình hậu khai thácxâm nhập Tuy nhiên khi sử dụng học tăng cường sâu, vấn đề nan giải là độ
phức tạp cao của các kịch bản PT trong quá trình hậu khai thác cùng với không
gian hành động rộng lớn làm giảm đi hiệu suất của quá trình hậu khai thác Chính vì thế tôi đề xuất mô hình học tăng cường sâu phân cấp (Hierarchical
Deep Reinforcement Learning - HDRL) để khắc phục van đề nan giải trên Mô
hình HDRL phân tách các hành động PT của quá trình hậu khai thác và xử lý
nó bởi 2 lớp tác nhân, giúp tác nhân chỉ can xử lý các không gian hành động
trạng thái cụ thể hơn, nâng cao hiệu quả của quá trình PT hậu khai thác xâmnhập.
1.2 Giới thiệu những nghiên cứu liên quan
Trong quá trình thực hiện khóa luận, tôi đã tìm hiểu được một số công trình
nghiên cứu liên quan như sau:
1.2.1 Công trành nghién cứu Automating Privilege Escalation with
Deep Reinforcement Learning [5]
Công trình nghiên cứu [5] sử dụng các thuật toán A2C kết hợp với công cuPowerShell Empire [14] với mục tiêu leo thang đặc quyền (privilege escalation)
Trang 14trên một máy chạy hệ điều hành Windows 7 Kết quả thu lại được đánh giá theotiêu chí số lượng thao tác thực hiện đến khi leo thang đặc quyền thành công
trên một máy Windows 7 với số lượng các lỗ hồng khác nhau Các tác giả thực
hiện thống kê với các agent đươc liệt kê như sau:
e Oracle agent: là agent có toàn bộ hiểu biết về môi trường bao gồm các lỗ
hổng tồn tại trên đó
e Expert agent (optimal policy): là agent với chính sách được chuyên gia định
nghĩa tức là sẽ định trước thao tac sẽ thực hiện có được các thông tin từ
môi trường.
e Deterministic RL: là agent sẽ lựa chon các thao tác có tỉ lệ thành công cao
nhất tức là có chính sách đã được định nghĩa sẵn.
e Stochastic RL: là agent sẽ lựa chọn các hành động dựa trên kết qua trả về
từ policy network và cũng là mô hình được huấn luyện dựa trên học tăngcường sâu (Deep Reinforcement Learning) và sẽ được tính bằng trung bìnhcác thao tác thực hiện qua nhiều lần testing
e Random agent: là agent sẽ lựa chọn các hành động một cách ngẫu nhiên.
1.2.2 Công trành nghiên cứu Automating post-exploitation with deep
reinforcement learning [10]
Công trình nghiên cứu [10] sử dung các thuật toán Deep Reinforcement
learn-ing gồm A2C, Q-Learnlearn-ing, and SARSA kết hợp với công cụ PowerShell Empire
[14] nhằm mục đích tự động hoá việc tấn công lan rộng (lateral movement) trên
một Windows domain network với mục tiêu lan rộng đến khi chiếm được domain
controller.
Kết quả thu lại được của công trình được đánh giá theo tiêu chí số lượng thao
tác thực hiện (step) để đạt được mục tiêu của từng thuật toán kể trên trong một
khoảng thời gian giới hạn là 1 tiếng trên một Windows domain network khác
Trang 15Environment
Action : Action1
Exp: if success + Compromised Computers = 2
+ + Compromised Computer
Hình 1.1: Mô hành tổng quát của công trinh [10]
và có so sánh với hai phương pháp khác là Random (chọn ngẫu nhiên các thao
tác) và Brute Force (chạy tất cả các thao tác có thể áp dụng được).
mlimelh:m:s] mStep œ ivy
Hình 1.2: Kết qúa huấn luyện của mô hành [10]
Từ kết quả thống kê chúng ta thấy được rằng mô hình huấn luyện có thể
hoàn thành mục tiệu chỉ với 15 step hay 15 thao tác trong khoảng thời gian là
11 phút 35 giây Trong khi phương pháp Random và Brute Force thực hiên được
91 và 80 thao tác trong khoảng thời gian giới 1 tiếng nhưng vẫn chưa hoàn được
mục tiêu.
Trang 161.2.3 Công trành nghiên cứu An Intelligent Penetration Testing
Method Using Human Feedback [9]
Công trình nghiên cứu [9] của Qianyu Li và cộng sự sử dung thuật toán hoc
tăng cường sâu phân cấp (Hierarchical Deep Reinforcement Learning) làm nền
tảng để thực hiện khả năng tự động hóa quá trình tấn công vào hệ thống mạng
dưới vai trò là 1 kẻ tấn công ở bên ngoài internet Mô hình triển khai giúp đáp
ứng được nan đề nan giải là không gian hành động rộng lớn bằng việc phan táchcác loại hành động theo từng nhiệm vụ riêng biệt, kết hợp với phan hồi từ con
người chính là những kiến thức của chuyên gia để tăng độ chính xác trong quá
trình PT hệ thống mạng 1 cách tự động
Human Knowledge Advice
‘Host Potential Knowledge
Configuration Vulnerabilities Base Ania
Action Space Constraint
Hình 1.3: Mô hành triển khai của công trinh [9]
Kết quả của nghiên cứu [9] cho thấy mô hình có khả năng đạt được mục tiêu
PT với số lượng episoles vượt trội so với các thuật toán khác Ví dụ như trong
Networkl thuật toán có số lượng episoles chỉ là 277 (Random Agent là 5733 và
Trang 17DQN là 4948 episoles) Ngoài ra tỉ lệ PT thành công trung bình của mô hình
trên 10000 episoles đạt được là 1 trong khi Random Agent là 0.456 và DQN là
0.568 (đối với Network1)
1.2.4 Công trinh nghiên cứu Raiju: Reinforcement Learning- Guided
Post-Exploitation for Automating Security Assessment of
Net-work Systems [13]
Công trình nghiên cứu [13] sử dung thuật toán Deep Reinforcement learning
gồm A2C và PPO kết hợp công cụ Metasploit [11] với khả năng tự động hóa
cả 3 quá trình là leo thang đặc quyền (privilege escalation), thu thập thông tin
(gather information) và tấn công lan rộng (lateral movement) Công trình xây
dựng 4 môi trường để hiện thực hóa khả năng khai thác hậu xâm nhập cả trên
nền tảng Windows và Linux
Kết quả thu được của công trình được đánh giá thông qua nhiều tiêu chí.
Đầu tiên, hình 1.4 cho thấy tỉ lệ tấn công thành công của 2 thuật toán A2C và
PPO vượt trội hơn so với phương pháp Random Agent.
Ngoài ra, kết quả thu được còn cho thấy khả năng vượt trội về số lượng steps
thực hiện của 2 thuật toán A2C va PPO so với phương pháp Random Agent.
1.3 Nhận định về các nghiên cứu liên quan
1.3.1 Ưu điểm
Tit các công trình nghiên cứu kể trên, tôi nhận thấy rằng các công trình nghiên
cứu đã chỉ ra được tiềm năng của Deep Reinforcement Learning khi được ứng
dụng vào tự động quá trình PT, tiêu biểu là trong giai đoạn hậu khai thác khi có
thể tự động thực hiện thao tác tấn công lan rộng (lateral movement), thu thập
thông tin (gather information) trong mạng và leo thang đặc quyền (privilege
escalation) trên một máy Đặc biệt ở công trình [9], mô hình HDRL là một mô
Trang 18SUCC-PE SUCC-GH SUCC-LM FAIL-LM SUCC-PE SUCC-GH SUCC-LM FAIL-LM
=A2C =PPO =Random Agent sA2C =PPO «Random Agent
(a) ENVL (b) ENV2
SUCC-PE SUCC-GH SUCC-LM FAIL-LM SUCC-PE SUCC-GH SUCC-LM FAIL-LM
=A2C =PPO =Random Agent =A2C =PPO =Random Agent
AVG-PE AVG-HG AVG-PE AVG-HG
=A2C sPPO sRandom Agent =A2C =PPO =Random Agent
(a) ENVI (b) ENV2
AVG-PE AVG-HG AVG-PE AVG-HG
=A2C =PPO =Random Agent =A2C =PPO =Random Agent
(c) ENV3 (d) ENV4
Hình 1.5: So sánh số lượng steps thực hiện của các thuật toán trong công trinh
nghiên cứu [13]
Trang 19hình mới và có tìm năng phát triển để triển khai trong quá trình hậu khai thác
vì độ hiệu quả của nó khi có thể lựa chọn được các loại hành động theo đúng
nhiệm vụ đặt ra, giải quyết vấn đề nan giải về số lượng hành động rộng lớn.
1.3.2 Hạn chế
Đối với hai công trình nghiên cứu [10] và [5] chỉ tập trung vào môi trường
nền tảng là Windows trong khi Linux cũng là một nền tảng được sử dụng rất
phổ biến trong các hệ thống mạng hiện nay Thêm vào đó, PowerShell Empire công cụ được sử dụng để huấn luyện đã ngừng được phát triển và hỗ trợ từ năm
2021 nên sẽ gặp khó khăn cho việc phát triển và mở rộng về sau Ngoai ra, việc
các nghiên cứu còn đang tập trung vào các khía cạnh đơn lẻ của hậu khai thác
và chưa có sự liên kết với nhau nên tính linh động sẽ không cao.
Đối với công trình nghiên cứu [9], mô hình HDRL chỉ thực hiện khai thác PT
tự động đến đúng mục tiêu PT trong hệ thống mạng nội bộ mà thiếu đi quá
trình đánh giá hậu khai thác xâm nhập Việc thiếu quá trình đánh giá hậu khaithác xâm nhập làm giảm đi tính bảo mật của một hệ thống mạng vì kẻ tấn công
vẫn có thể khai thác sâu hơn vào hệ thống và đánh cắp những thông tin quan
trọng.
Đối với công trình nghiên cứu [13], hai thuật toán được sử dụng là A2C và
PPO tuy cho kết quả tốt nhưng vẫn còn nhiều vấn đề trong việc xử lí hành động trong quá trình training va testing Hiện nay ngày càng có nhiều CVE và
lỗ hỗng mới được tìm thay, dan đến hành động hậu khai thác xâm nhập cũngtăng lên Việc chưa tối ưu tốt hành động làm ảnh hưởng kém đến quá trìnhhuấn luyện mô hình và khả năng hậu khai thác xâm nhập
1.4 Định hướng phát triển từ các nghiên cứu liên quan
Nhằm tối ưu được những ưu điểm và khắc phục những hạn chế của các nghiên cứu liên quan trên, tôi định hướng phát triển đề tài này với mục tiêu đưa hệ
Trang 20Nghiên cứu [5] | Nghiên cứu [10] | Nghiên cứu [9] | Nghiên cứu [13] | Ours
Loại tấn công Post-exploitation xX xX X xX
Attack network X
Mục tiêu Privilege escalation X
Gather information Lateral movement X Attack target host X
Mô hình A2C X X
PPO HPPO
HA2C HDQN X SARSA
Q-learning Môi trường PowerShell Empire X
Bảng 1.1: Hướng phát triển so uới những nghiên cứu liên quan
thống học tăng cường sâu phân cấp (Hierarchical Deep Reinforcement Learning)cho việc tự động hóa quá trình hậu khai thác xâm nhập trong nhiều môi trườngmạng thực tế Quá trình khai thác tự động giúp đánh giá bảo mật hệ thống
mạng 1 cách tối uu hơn đồng thời hệ thống này có thể liên kết được cả ba quá
trình là leo thang đặc quyền (privilege escalation), thu thập thông tin (gather
information) và tấn công lan rộng (lateral movement), đồng thời có thể thựchiện trên cả hai platform là Windows và Linux Công cụ được sử dụng sẽ là
Metasploit thay thế cho PowerShell Empire bởi Metasploit hiện tại vẫn đang
được cộng đồng tích cực đóng góp và phát triển cộng với việc các module của Metasploit có thể áp dụng đa dạng cho nhiều nền tảng chứ không chỉ tập trung
vào nền tảng Windows như PowerShell Empire Ngoài ra, các nghiên cứu liênquan đang tách từng công việc (leo thang đặc quyện và tấn công lan rộng) đề
train thành những mô hình riêng biệt chỉ thực hiện riêng biệt một công việc nên
tôi cũng sẽ tìm hiểu và phát triển khả năng liên kết các công việc này thành
một chuỗi và được thực hiện bởi một mô hình duy nhất
Trang 211.5 Mục tiêu, đối tượng, và phạm vi nghiên cứu
1.5.1 Mục tiêu nghiên cứu
Ứng dụng Hierarchical Deep Reinforcement Learning vào tự động hoá hậu
khai thác xâm nhập để đánh giá bảo mật mạng với mục tiêu huấn luyện môhình có thể thực hiện leo thang đặc quyền trên máy chiếm được, thu thập thông
tin liên quan đến máy chủ và tấn công lan ra các máy cận kề trong mạng trênmôi trường bao gồm cả hai platform là Windows và Linux với hai thuật toán:
e HA2C (Hierarchical Advantage Actor Critic): là thuật toán được kế thừa từ
tính phân cấp của nghiên cứu [8] [9] và thuật toán A2C (Advantage Actor
Critic) được sử dụng tiêu biểu trong nhiều lĩnh vực nghiên cứu về hậu khai
thác xâm nhập như [5] [10] [13].
e HPPO (Hierarchical Proximal Policy Optimization): là thuật toán được kế
thừa từ tính phan cấp của nghiên cứu [8] [9] và thuật toán PPO (ProximalPolicy Optimization) được sử dụng trong nhiều lĩnh vực nghiên cứu như |2]
[3| và đặc biệt là trong nghiên cứu về hậu khai thác xâm nhập [13].
1.5.2 Đối tượng va phạm vi nghiên cứu
e Hậu khai thác (Post-exploitation).
e Mô hình học tăng cường.
e Các thuật toán hoc tăng cường trong hậu khai khác HA2C (Hierarchical
Advantage Actor Critic) và HPPO (Hierarchical Proximal Policy tion).
Optimiza-e Cong cu MOptimiza-etasploit.
Trang 221.6 Cau trúc khóa luận tốt nghiệp
Toi xin trình bày nội dung của khóa luận tốt nghiệp theo cấu trúc như sau:
e Chương 1: Giới thiệu tổng quan về đề tài và những nghiên cứu liên quan.
e Chương 2: Trinh bay cơ sở lý thuyết và kiến thức nền tang liên quan đến
đề tài
e Chương 3: Trình bày mô hình học tăng cường phân cấp cho tự động hóa
hậu khai thác xâm nhập.
e Chương 4: Trình bày kết quả thực nghiệm, phân tích - đánh giá.
e Chương 5: Kết luận và hướng phát triển của đề tài.
Trang 23CHƯƠNG 2 CƠ SỞ LY THUYET
Chương này trình bày cơ sở lý thuyết của nghiên cứu: Bao gồm kiểm thử xâmnhập, mô hình học máy, và mô hình học tăng cường, các thuật toán học tăng
cường trong hậu khai thác (PPO, A2C, HDRL).
2.1 Kiểm thử xâm nhập
2.1.1 Khéi niém
Kiểm thử xâm nhập (Penetration Testing - Pentest - PT) là hình thức đánh
giá mức độ an toàn của một hệ thống mạng bằng các cuộc tấn công mô phỏng
thực tế Hiểu đơn giản, PT cố gắng xâm nhập vào hệ thống để phát hiện ra những điểm yếu tiềm tàng của hệ thống mà tin tặc có thể khai thác và gây thiệt
hại.
Mục tiêu của PT là giúp tổ chức phát hiện càng nhiều lỗ hổng càng tốt, từ
đó khắc phục chúng để loại trừ khả năng bị tấn công trong tương lai Có 3 hìnhthức PT thường gặp:
e Kiểm thử hộp trắng (White box Testing): Trong hình thức pentest
white box, các chuyên gia kiểm thử được cung cấp đầy đủ thông tin về đối tượng mục tiêu trước khi họ tiến hành kiểm thử Những thông tin này bao
gồm: địa chỉ IP, sơ đồ hạ tầng mạng, các giao thức sử dụng, hoặc source
code.
e Kiểm thử hộp xám (Gray box Testing): Pentest gray box là hình thức
kiểm thử mà pentester nhận được một phần thông tin của đối tượng kiểm thử, ví dụ URL, IP address, nhưng không có hiểu biết đầy đủ hay quyền
truy cập vào đối tượng.
Trang 24e Kiểm thử hộp den (Black box Testing): Là hình thức pentest dưới góc
độ của một hacker trong thực tế Với hình thức này, các chuyên gia kiểm
thử không nhận được bất kỳ thông tin nào về đối tượng trước khi tấn công
Các chuyên gia kiểm thử phải tự tìm kiếm và thu thập thông tin về đốitượng để tiến hành kiểm thử Loại hình pentest này yêu cầu một lượng lớnthời gian tìm hiểu và nỗ lực tấn công, nên chi phí không hề rẻ.
2.1.2 Hậu khai thác xâm nhập
Hậu khai thác xâm nhập (Post-exploitation) là giai đoạn diễn ra sau khi tin
tặc hoặc kẻ tấn công đã xâm nhập thành công vào hệ thống mạng hoặc máy
chủ mục tiêu bằng việc khai thác các lỗ hổng hay tìm được cách để xâm nhập
vào hệ thống Ở giai đoạn này, mục tiêu của kẻ tấn công là duy trì và mở rộngquyền truy cập vào hệ thống đã bị xâm nhập, thu thập thông tin nhạy cảm, mởrộng tấn công sang các máy chủ lân cận trong mạng, tiếp tục khai thác các lỗ
hồng khác hoặc thực hiện các hoạt động độc hại khác trên hệ thống đã bị xâm
Remediation Read-Out Reporting Post Exploitation
Hình 2.1: Hậu khai thác ram nhập (Post-exploitation) nằm ở giai đoạn 6 của
quá trành PT
Trong quá trình hậu khai thác xâm nhập, kẻ tấn công thường dùng những
công cụ và phương pháp khác nhau để truy cập và kiểm soát hệ thống mà không
bị phát hiện Các hoạt động hậu khai thác xâm nhập có thể bao gồm việc tìm kiếm các thông tin quan trọng như tên người dùng, mật khẩu, các tệp tin quan
Trang 25trọng, cài đặt backdoor để duy trì quyền truy cập, mở rộng truy cập vào các
máy chủ khác trong mạng nội bộ, tăng quyền hạn truy cập, hoặc thực hiện các
cuộc tan công tiếp theo như tấn công theo chuỗi (lateral movement), leo thangđặc quyền (privilege escalation), lừa đảo (phishing) và lây lan malware
Quá trình hậu khai thác là một phần quan trọng trong quá trình PT vànghiên cứu bảo mật mạng, được diễn ra sau quá trình PT và trước khi viết báo
cáo cuối cùng về quá trình PT Việc hiểu và tìm hiểu về cách kẻ tấn công hoạt
động trong giai đoạn hậu khai thác giúp các chuyên gia bảo mật xác định các biện pháp phòng ngừa và bảo vệ hiệu quả, ngăn chặn và phát hiện sự xâm nhập
và sử dụng lại hệ thống một cách an toàn
lộ day tôi sẽ áp dụng phương pháp tự động hóa bước hậu khai thác xâm nhập
bằng phương pháp học tăng cường sâu phân cấp (Hierarchical Deep
Reinforce-ment Learning) để kiểm tra mức độ ảnh hưởng của hệ thống khi bị tin tặc tấn
công vào hệ thống mạng, từ đó giúp Pentester dễ dàng hơn trong việc bảo mật
hệ thống.
2.1.3 Kiểm thử xâm nhập tự động
Kiểm thử xâm nhập tự động (Automated Penetration Testing) là quá trình xác định các lỗ hồng trong hệ thống bảo mật bằng cách sử dung các công cụ
PT hoặc hệ thống một cách tự động để khai thác và phát hiện mức độ đe dọa
do các 16 hồng hiện tại gây ra va để hiểu tác động của chúng Một số mới lợi ích
mà kiểm thử xâm nhập tự động mang lại:
e Tốc độ và hiệu qua: Một trong những ưu điểm chính của kiểm thử xâm
nhập tự động là khả năng xác định nhanh chóng các lỗ hồng bảo mật trên nhiều hệ thống Với việc sử dụng các công cụ tự động, các tổ chức có thể
quét mạng và ứng dụng của họ trong một khoảng thời gian ngắn mà con
người cần để thực hiện các nhiệm vụ tương tự.
e Khả năng mở rộng: Khi các tổ chức phát triển, mạng lưới và hệ thống
Trang 26của họ cũng phát triển, khiến các chuyên gia bảo mật ngày càng gặp khó
khăn trong việc theo kịp tốc độ mở rộng Thử nghiệm xâm nhập tự động
cung cấp giải pháp có thể mở rộng, có thể dễ dàng triển khai trên cơ sở hạ tầng đang mở rộng của tổ chức, đảm bảo kiểm tra bảo mật liên tục đối với các mẫu lỗ hổng đã biết.
e Chi phí: Việc thuê một công ty an ninh mạng chuyên biệt hoặc người kiểm
thử xâm nhập toàn thời gian có thể tốn kém, đặc biệt đối với các tổ chức nhỏ hơn với ngân sách hạn chế Kiểm thử xâm nhập tự động có thể là một
lựa chọn tiết kiệm chi phí hơn, cho phép doanh nghiệp tiến hành đánh giá
bảo mật thường xuyên ma không tốn nhiều chi phí
e Kiểm tra bảo mật liên tục: Với khả năng quét suốt ngày đêm, kiểm thử
xâm nhập tự động có thể cung cấp khả năng giám sát liên tục các hệ thống của tổ chức, xác định các lỗ hồng đã biết khi chúng phát sinh và cảnh báo
cho các nhóm bảo mật trong thời gian thực Cách tiếp cận chủ động này có
thể giúp các tổ chức đón đầu các mối đe dọa tiềm an và phan ứng nhanhchóng.
2.2 Học máy (Machine Learning)
Học máy hay máy học (Machine Learning) là một loại Trí tuệ nhân tạo(Artificial Intelligence - AI) cho phép các ứng dung phần mềm trở nên chính
xác hơn trong việc dự đoán kết quả mà không cần được lập trình rõ ràng để làm như vậy Các thuật toán học máy sử dụng dữ liệu lịch sử làm đầu vào để dự đoán các giá trị đầu ra mới Một số ứng dụng phổ biến của học máy bao gồm hệ
thống đề xuất (recommend system), hệ thống phát hiện bất thường (anomalydetection), phát hiện xâm nhập (ids), phần mềm độc hại (malwares), lọc thư rác
(spam email) Học máy cổ điển thường được phân loại theo cách một thuật toán học để trở nên chính xác hơn trong các dự đoán của nó Có bốn cách tiếp
cận cơ bản: học có giám sát, học không giám sát, học bán giám sát va hoc tăng
Trang 27cường Loại thuật toán mà các nhà khoa học sử dụng tùy thuộc vào loại dữ liệu
họ muốn dự đoán.
e Học có giám sát (Supervised Machine Learning): Trong loại hoc máy
này, các nhà nghiên cứu cung cấp các thuật toán với dữ liệu huấn luyện
được gắn nhãn và xác định các biến mà họ muốn thuật toán đánh giá để
tìm mối tương quan Cả đầu vào và đầu ra của thuật toán đều được chỉ
định.
e Học không giám sát (Unsupervised Machine Learning): Loại học
máy này liên quan đến các thuật toán đào tạo trên dit liệu không được gắn
nhãn Thuật toán quét qua các tập dit liệu để tìm kiếm bất kỳ kết nối có ýnghĩa nào Dữ liệu mà các thuật toán đào tạo cũng như các dự đoán hoặc
khuyến nghị mà chúng xuất ra được xác định trước.
e Học bán giám sát (Semi-Supervised Learning): Cách tiếp cận này
đối với học máy liên quan đến sự kết hợp của hai loại trước đó Các nhà
khoa học dữ liệu có thể cung cấp một thuật toán chủ yếu là dữ liệu đào tạo được gắn nhãn, nhưng mô hình có thể tự do khám phá dữ liệu và phát triển sự hiểu biết của riêng mình về tập dữ liệu.
e Hoc tăng cường (Reinforcement Learning): những người nghiên cứu
thường sử dụng học tăng cường để dạy máy hoàn thành một quy trình gồm
nhiều bước trong đó có các quy tắc được xác định rõ ràng Các nhà khoa
học lập trình một thuật toán để hoàn thành một nhiệm vụ và cung cấp cho
nó những dấu hiệu tích cực hoặc tiêu cực khi nó tìm ra cách hoàn thành
một nhiệm vụ Nhưng phần lớn, thuật toán tự quyết định những bước cần
thực hiện trong quá trình thực hiện.
Trang 28192.3 Học sâu (Deep Learning)
2.8.1 Khai niệm,
Học sâu (Deep Learning) là một phương pháp trong lĩnh vực Trí tuệ nhân
tạo (Artificial Intelligence - AT) mà tập trung vào việc xây dựng và huấn luyện
các mạng neural (neural networks) có cấu trúc mạng neural sâu (deep neural
networks) để tự động học và suy nghĩ giống như bộ não của con người.
Deep Learning được gọi là "sâu" vì nó bao gồm nhiều tầng (lớp) của các đơn
vị tính toán gọi là neurons Các tầng này kết nối với nhau và truyền dữ liệu qua
từ tầng này sang tầng khác, qua đó tạo thành một mạng neural có khả năng
học tập phức tạp Quá trình huấn luyện mạng neural sâu thường được thực hiện thông qua quá trình gọi là lan truyền ngược (backpropagation), trong đó mô
hình tìm cách điều chỉnh các trọng số để tối ưu hóa kết quả đầu ra so với kết
quả mong đợi.
Deep Learning đã gây ra cuộc cách mạng trong nhiều lĩnh vực như thị giác
máy tính, xử lý ngôn ngữ tự nhiên và nhận dạng giọng nói Ví dụ, trong thị giác
máy tính, các mạng neural sâu đã đạt được kết quả ấn tượng trong việc phân
loại ảnh, nhận dạng khuôn mặt và phát hiện vật thể Trong xử lý ngôn ngữ tựnhiên, Deep Learning được sử dụng để xây dựng các hệ thống dịch máy, phân
loại văn bản và tạo ra các mô hình ngôn ngữ tự động.
2.3.2 Deep Learning hoạt động như thé nào?
Deep Learning hoạt động bằng cách xây dựng và huấn luyện các mạng neural
sâu để tự động học và hiểu dữ liệu Quá trình này bao gồm các bước chính sau:
e Chuẩn bị dữ liệu đầu vào: Đầu tiên, dữ liệu được thu thập và chuẩn bị
để huấn luyện thong qua mang neural Điều này bao gồm việc gán nhãn
(labeling) cho dé liệu huấn luyện và chia thành các tập huấn luyện (training
set), tập kiểm tra (testing set) và tập xác thực (validation set).
Trang 29e Xây dựng mạng neural: Một mạng neural sâu được thiết kế bằng cách
xác định kiến trúc của nó, bao gồm số lượng lớp và số lượng neurons trongmỗi lớp Mỗi neuron trong mạng neural nhận đầu vào từ các neuron tronglớp trước và tính toán đầu ra dựa trên các trọng số (weights) và hàm kíchhoạt (activation function).
e Huấn luyện mang neural: Trong quá trình huấn luyện mang neural,
mạng neural được cung cấp dữ liệu huấn luyện để điều chỉnh trọng số của
nó Đầu tiên, một đầu vào được đưa vào mạng neural và một đầu ra dự đoánđược tính toán Sau đó, đầu ra dự đoán được so sánh với đầu ra thực tế, vàsai số (loss) được tính toán Quá trình lan truyền ngược (backpropagation)
được sử dụng để truyền lại sai số từ đầu ra về các lớp trước đó trong mạng
neural và điều chỉnh các trọng số theo hướng giảm thiểu sai số
e Điều chỉnh tham số: Trong quá trình huấn luyện mạng neural, các tham
số của mạng neural (bao gồm trọng số và siêu tham số như learning rate)
được điều chỉnh để tối ưu hóa hiệu suất của mô hình Các thuật toán tối ưu hóa như Stochastic Gradient Descent (SGD) và các biến thể của nó thường được sử dụng để thực hiện điều chỉnh này.
e Đánh giá và sử dụng mô hình: Sau khi mạng neural được huấn luyện,
nó được đánh giá bằng cách sử dụng tập kiểm tra (testing set) hoặc tập xác
thực (validation set) Dộ chính xác (accuracy), độ mất mát (loss), và các độ
đo khác được sử dụng để đánh giá hiệu suất của mô hình để mô hình đạthiệu quả tốt nhất Khi mô hình được đánh giá là đủ tốt, nó có thể được sửdung để dự đoán va phân loại dit liệu mới.
Hình 2.2 là một ví dụ mô tả cách thức hoạt động của Deep Learning để
nhận diện xe ô tô.
Trang 30Input Feature extraction + Classification Output
Hình 2.2: Mô ta cách thúc hoạt động của Deep Learning
2.4 Học tăng cường (Reinforcement Learning)
2.4.1 Quy trinh quyét định Markov (Markov Decision Process
e A: Một tập các hành động mà tác nhân có thể thực hiện với môi trường.
e P: Hàm chuyển Hàm này đưa ra xác suất dự đoán một trạng thái có thể
xảy ra, đầu vào của nó là trạng thái hiện tại của môi trường và một hành
động.
e R: Một hàm đưa ra phần thưởng Hàm này sẽ xác định phần thưởng khi
môi trường chuyển từ một trạng thái sang trạng thái kế tiếp, dưới tác động
của một hành động.
Vì vậy, MDP thường được định nghĩa như sau: M =< S, A, P, R > Trong hình
2.3, một tác nhân của quy trình MDP ở trạng thái ban đầu So, sau khi thực
Trang 31hiện hành động ap, nó chuyển sang trạng thái 9 theo xác suất Pp và sử dụng hàm thưởng để lấy giá trị phần thưởng rị theo ao và S¡ Khi trạng thái hệ thống chuyển từ trạng thái hiện tại sang trạng thái tiếp theo so , hàm thưởng có thé
được ký hiệu là r(s |s,a).
2.4.2 Tổng quan mô hành học tăng cường
Học tăng cường là một nhánh nghiên cứu của học máy, trong đó sẽ có một
tác nhân đưa ra các hành động để tương tác với một môi trường Mục tiêu cuối
là tối ưu hóa phần thưởng tích lũy đạt được.
Dựa trên MDP, một hệ thống học tăng cường cơ bản sẽ có hai thành phần
chính là Tác nhân (Agent) và Môi trường (Environment) Kênh giao tiếp của
hai thành phần này bao gồm: Hành động (Action), Phần thưởng (Reward), vàTrạng thái (State).
Tác nhân sẽ tương tác với môi trường qua một chuỗi các lượt đi Với mỗi lượt
t, tác nhân sẽ chọn một hành động a € A, dựa vào một chính sách z(ø|s¿) và thu
về một vectơ trạng thái có thể quan sát được s¿ từ môi trường Môi trường cũng
sẽ xuất ra một phần thưởng r; € R tương ứng với các hành động nhận vào, đồng
thời môi trường cũng thay đổi trạng thái của chính nó, tạo ra một trạng thái
mới s;¿;¡ Phần thưởng r; và trạng thái s¿¿¡ sẽ là đầu vào kế tiếp của tác nhân.
Từ đó, tác nhân sẽ xây dựng tiếp chính sách r(a|s;41) tác nhân sẽ học dần và
Trang 325: | Environment
Hành 2.4: Mô hành hoc tăng cường
tuần tự qua việc khám phá (exploration) và khai thác (exploitation), dần dần
chọn ra được hành động nhằm tạo ra trạng thái môi trường mong muốn
Phần thưởng là yếu tố quan trọng trong việc học và mục tiêu cuối cùng của
mô hình học tăng cường là xây dựng được một chính sách để tối đa hóa kì vọng:
V"(st) = Ba,[Q" (st, 6)| 5]
Q" (st, at) =— BF er đẠH I7 az|
R= So yiri tive |0, 1]
D1
+ là giá tri chiết khấu cho phần thưởng Giá trị + kiểm soát hành động mới sao
cho chúng không được phép tác động nhiều đến phần thưởng nhưng lại quantrọng đối với kết quả VTM Hàm đánh giá mức độ hữu ích của một hành động cho
một trạng thái được gọi là hàm Q.
2.4.3 Q-Learning
Như đã nêu trên, hệ thống học tăng cường sé tối đa hóa V*“ Điều này đồngnghĩa với việc hệ thống phải tối ưu giá trị Q [19] ở mỗi lượt thực hiện hành
Trang 33động Để lưu lại các thông tin mà tác nhân tương tác với môi trường trong mỗi
bước, hệ thống học tăng cường sẽ có một bảng chứa: các giá trị của hàm Q,
trạng thái và hành động tương ứng như hình 2.5 Trong một bài toán nhỏ với
môi trường không quá phức tạp, ta có thể xây dựng một bảng ở dạng mảng hai chiều để lưu các giá trị này Phương pháp này gần giống với quy hoạch động.
ce|e|celel|lelelele
Q Learning
Hình 2.5: Ví dụ vé bảng lưu trữ của Q-learning
2.4.4 Mô hành học tăng cường sâu
Việc lưu trữ giá trị Q ở dạng bảng là một giải pháp đơn giản, nhưng đồng thời
nó cũng gây hao tốn tài nguyên rất nhanh chóng, đặc biệt là đối với môi trường
sử dung dit liệu lớn như hình ảnh Vì vậy, mô hình học sâu được ứng dụng vào
mô hình học tăng cường để giảm thiểu hao tổn tài nguyên Mô hình kết hợp
này được gọi là mô hình học tăng cường sâu (Deep Reinforcement Learning
-DRL)|7}.
Trong DRL, không gian trang thái được "tác nhân" lay được va nó chon các hành động phù hợp và tương ứng Quá trình này liên quan đến các chính sách
khác nhau Trạng thái của môi trường sẽ được thay đổi và cuối cùng mô hình
sẽ đạt được phần thưởng Sự xuất hiện của DRL khiến công nghệ RL thực sự
thiết thực và có thể giải quyết các vấn đề phức tạp trong các tình huống thực
tế DRL được tách thành 3 chức năng khác nhau: chức năng dựa trên giá trị,
chức năng dựa trên chính sách, chức năng dựa trên mô hình [7] Mô hình RL
Trang 34Hình 2.6: Tổng quan kiến trúc của mô hành DQN
đã được sử dụng bởi nhiều phương pháp hiện có sử dụng phương pháp tiếp cận
Q-Learning [19] Một trong những đại diện của các hàm dựa trên giá trị là Deep
Q-Network (DQN), nó được đề xuất lần đầu tiên bởi Mnih et al vào năm 2013,
được sử dụng để học các chiến lược trực tiếp từ hình ảnh pixel để chơi trò chơi Atari [12], nó kết hợp thuật toán Q-Learning với Mạng thần kinh chuyển đổi(Convolutional Neural Network - CNN) trong phan học tăng cường, do đó đểtạo mô hình DQN nâng cao Kiến trúc mô hình DQN điển hình được cung cấp
trong Hình 2.6 Mô hình DQN chứa cả đầu vào và đầu ra Trong hình này, giả
định rằng đầu vào là một hình ảnh, được biến đổi phi tuyến tính bởi lớp chập
và lớp được kết nối đầy đủ, và cuối cùng nó sẽ xuất ra giá trị q
Hình 2.7 biểu thị quy trình huấn luyện của mô hình DQN Các giá trị đích
được xây dựng bằng cách sử dụng mang đích được chỉ định Q(s, a;@—) (sử dung
các tham số lặp lại trước đó Ø—), trong đó kỳ vọng là lấy ‘w.rt.’ làm phân bổ mẫu của các chuyển tiếp trải nghiệm trong bộ đệm phát lại [1] Sự mat mát DQN được giảm thiểu bằng cách sử dụng biến thể Giảm dần độ dốc ngẫu nhiên
(Stochastic Gradient Descent - SGD), lấy mau các lô nhỏ từ bộ đệm phat lại
Ngoài ra, mô hình DQN yêu cầu quy trình thăm dò để tương tác với môi trường.
Số lần chuyển đổi trải nghiệm mới (s,a,z,s ) được thêm vào bằng cách khám phá
vào bộ đệm phát lại Bằng cách sử dụng phương pháp loại này, ta có thể sử dụng DQN để tìm ra đường tấn công tối uu Để xác định các tham số của 1 và hệ số
Trang 35Hình 2.7: Tổng quan quụ trinh huấn luyện của mô hành DQN
chiết khấu +, đồng thời cải thiện tính tổng quát và tính ổn định của thuật toán,
ta cần giảm phần thưởng của mạng Q-learning sâu càng nhiều càng tốt Hiện
nay, học tăng cường sâu được sử dụng rộng rãi trong nhận dạng khuôn mặt, lái
xe tự động và các lĩnh vực khác, điều này chứng minh đầy đủ rằng phương pháp
Q-learning sâu có khả năng thích ứng và tính linh hoạt cao.
2.5 Các thuật toán Deep Reinforcement Learning
2.5.1 Value-based va Policy-based
Value-based: là nhóm phương pháp hoc tăng cường dựa trên giá tri Trong
các phương pháp này, ta sử dụng một hàm giá trị (value funetion) để ước lượng
giá trị kỳ vọng của mỗi cặp state - action trong môi trường nhằm tìm ra chínhsách tốt nhất bằng cách chọn hành động có giá trị cao nhất cho mỗi trạng thái
Policy-based: là nhóm các phương pháp học tăng cường tập trung vào việc
tối ưu hóa trực tiếp chính sách hành động, thay vì ước lượng hàm giá trị nhưtrong phương pháp Value-based Các phương pháp Policy-based sử dụng mạng
thần kinh sâu (deep neural networks) hoặc các mô hình khác để tạo ra trực tiếp
Trang 36Actor là một hàm chính sách (policy function) có trách nhiệm đưa ra các
action trong môi trường Nhiệm vụ chính của Actor là chọn ra các action dựa
trên chính sách action hiện tại của mô hình Actor nhận thông tin về state hiệntại và dự đoán xác suất của các action khả di và sau đó thực hiện một action cụ
thể Mục tiêu của Actor là tối đa hóa reward tích lũy thu được trong quá trình
tương tác (tiếp cận theo hướng Policy-based).
Critic là một value function đánh giá giá trị của chính sách hiện tại bằng
cách ước lượng giá tri của các state Một neural network hoặc một hàm giá trị
được sử dụng để dự đoán giá trị state của hệ thống Critic nhận thông tin về
state hiện tại và dự đoán giá trị state đó (tiếp cận theo hướng Value-based)
Actor-Critic là một phương pháp trong học tăng cường (reinforcement learning)
mà kết hợp hai thành phần là Actor neural network và Critic neural network
nhằm hỗ trợ nhau trong việc tối ưu hoá mô hình Sự kết hợp đó có thể được mô
tả như sau:
e Bước 1: Tại mỗi thời điểm ¿, state hiện tại là S; của môi trường sẽ được
đưa vào mô hình Actor-Critic.
e Bước 2: Actor nhận vào state %; và đưa ra action A; nghị mà chúng xuất
ra được xác định trước.
e Bước 3: Critic cũng sẽ nhận vào action A; và state S; tính toán giá trị thu
được khi thực hiện action A; với state S; cho ra giá trị Q-value: @„(%, Az).
e Bước 4: Actor tiến hành cập nhật policy thông qua giá trị Q-value theo
Trang 37công thức:
A06 = œVạ(log7¿(s;, a))â„(s; a)
Change in policy parameters (weights) Action value estimate
Hình 2.8: Công thúc cập nhật chính sách
Trong đó, Change in policy parameters (weights) là kết quả thay đổi các
tham số trong mang neural của Actor và Action value estimate là giá trịthu được ước tính dựa trên action a thực hiên khi nhận về state s
Bước 5: Action A; được thực hiện lên môi trường và nhận về state 5,41 và
reward ?¿+.
Bước 6: Nhờ vào việc update các thông số trong mang neural, Actor đưa
ra action 4;;¡ cho state ®S;¿1.
Bước 7: Critic tiền hành update các thông số trong Critic network với công
thức:
Au = 8 (R(s, đ) + TÂu(S:+1; đị+1) — Gw(St, đ¿))Vuậu (St, at)Policy and value fave TD error Gradient of our value
different learning rates function
Hình 2.9: Công thúc cập nhật thông số trong Critic network
TD error, còn được gọi là Temporal Difference error thể hiện cho sự khác
biệt giữa Q-value ước tính của cặp action - state và giá trị thực tế thu được
khi thực hiện action ø với state s đó.
8 là learning rate của Critic network và giá trị này khác với learning rate của Actor network.
Gradient cho phép đánh giá sự thay đổi của ham giá trị khi các tham số thay đổi, từ đó cập nhật các tham số sao cho value function đạt được kết
Trang 38Hành 2.10: Hình ảnh mô tả phương pháp Actor-Citric
2.5.3 Thuật toứn Advantage Actor Critic (A2C)
2.5.0.1 Khái niệm
Thuật toán Advantage Actor Critic (A2C) là một phương phấp trong học
tăng cường (Reinforcement Learning) kết hợp hai phương pháp Value-based và
Policy-based xây dựng một mô hình Actor-Critic gồm Actor network và Critic
network Actor Network chọn một hành động ở mỗi điểm thời gian t, Critic
Network đánh giá chất lượng hoặc giá trị Q của state đầu vào nhất định KhiCritic Network biết được trạng thái nào tốt hơn hoặc tệ hon, Actor Network sử
dụng thông tin này để dạy agent tìm kiếm state tốt và tránh state xấu
Trang 392.5.0.2 Advantage
Các agent học bằng cách đưa ra dự đoán về reward trong tương lai và điều
chỉnh action dựa trên Prediction Error.
Hàm TD Error: Để tính TD Error, trước tiên cần tính TD Target.
,
TDrarget = R + +* V(S)
TD Target là giá trị dự đoán của tất cả phần thưởng trong tương lai từ trạng
thái S hiện tai Hàm V(Š) đại diện cho Critic Network, tính toán giá trị của trang thái tiếp theo 9’.
TD Error bang TD Target trừ đi giá trị của trạng thái hiện tai S.
Ta có thể tính toán tổng phần thưởng R bằng cách tinh tổng các phần thưởng
ở các mốc thời gian trong tương lai.
Không phải lúc nào ham Advantage cũng bằng với hàm TD Error
Ta có thể thay đổi Q, cho phép chỉ sử dụng một mạng dự đoán giá trị state, không phải giá tri action Nếu không, ta có thể phải cần đến hai mạng để tính
toán advantage (một cho giá trị state, một cho giá tri action).
Hàm Advantage cho ta biết state tốt hơn hay xấu hơn dự kiến Nếu mộtaction tốt hơn mong đợi (Advantage lớn hơn 0), ta sẽ khuyến khích thực hiệnaction đó Nếu một action xấu hon mong đợi (Advantage nhỏ hơn 0), ta khuyếnkhích agent thực hiện action ngược lại với action đó Nếu Advantage bằng 0,
agent không học được gì.
Trang 402.5.3.8 Actor Network
Actor Network ánh xạ mỗi state thành một action tương ứng Giống như với
Critic Network, ta có thé cập nhật các trọng số Actor Network sau mỗi điểmthời gian.
2.5.9.4 Critic Network
Critic Network ánh xa từng state tới giá trị Q tương ứng của nó Giá trị Q
đại điện cho giá trị của một state trong đó Q đại diện cho chất lượng của state
Không giống như Actor Network đưa ra phân phối xác suất của các action,
Critic Network đưa ra TD Target của state đầu vào dưới dạng số dấu phẩy động
(floating point number).
2.5.4 Thuật toán Proximal Policy Optimization (PPO)
2.5.4.1 Khái niệm
Thuật toán Proximal Policy Optimization (PPO) là một phương pháp quan
trọng trong học tăng cường sâu (Deep Reinforcement Learning) để tối ưu hóa
chính sách Nó được giới thiệu bởi OpenAT vào năm 2017 như sau : "Phương
pháp tối ưu chiến thuật vùng lân cận (PPO), hoạt động tương đương hoặc tốthơn so với các phương pháp khác trong khi nó dễ dàng hơn nhiều trong việcthực hiện và điều chỉnh."
Theo nghiên cứu [16] tác giả đã đề cập đến nhiều phương pháp cho học tăng
cường với giá trị của hàm xấp xỉ hàm bằng mạng neural Trong đó kể đến
những phương pháp dan đầu như : deep Q-learning, trust region/natural policy
gradient và policy gradient Tuy nhiên, các phương pháp được kể ở trên vancòn hạn chế về tính mở rộng (đối với các mô hình lớn hoặc triển khai song song)
cũng như hiệu quả của của dữ liệu và độ tin cậy.
Phương pháp deep Q-learning gặp vấn đề khó khăn trên các bài toán đơn