Chương 1: TONG QUAN ĐỀ TÀI. Trình bày khái quát định hướng nghiên cứu của Khóa luận tốt nghiệp mà chúng tôi muốn hướng tới. « Chương 2: CO SỞ LY THUYẾT. Trinh bày các định nghĩa, khái niệm cũng như những kiến thức nền tang để có thể thực hiện được nghiên cứu.
Đồng thời trình bày sơ lược một số công trình liên quan có cùng hướng nghiên cứu. « Chương 3: PHƯƠNG PHÁP THỰC HIỆN. Là phần trọng tâm của Khóa luận tốt nghiệp, trình bày những nội dung chính về phương pháp thực hiện và mô hình được sử dụng. e Chương 4: HIỆN THUC, DÁNH GIÁ VÀ THẢO LUẬN.
6 Đề cập đến quá trình hiện thực hóa phương pháp đề cập ở Chương 3. Sau đó trình bày phương pháp thực nghiệm, đánh giá kết quả và thảo luận chung. « Chương 5: KẾT LUẬN VÀ HUONG PHÁT TRIEN. Đưa ra kết luận về đề tài, đề xuất một số hướng phát triển mở rộng cho các nghiên cứu trong tương lai.
CƠ SỞ LÝ THUYET Co sở lý thuyết cần thiết của khóa luận sẽ được trình bày ở chương 2. Cái nhìn chung về kiểm thử thâm nhập tự động và phương pháp tích lũy kinh nghiệm khai thác trong môi trường phân tán. Bên cạnh đó là cơ sở lý thuyết về học tăng cường Reinforcement Learning, học liên kết Federated Learning, các hình thức, mô hình và ưu nhược điểm đối với đề tài của khóa luận. Đồng thời, chúng tôi trình bày về những nghiên cứu có cùng lĩnh vực với tự động hóa kiểm thử thâm nhập và những điểm khác của khóa luận này với những nghiên cứu đã có.
Kiểm thử thâm nhập 2. Tổng quan Kiểm thử thâm nhập là dd quét những lỗ hổng bảo mật trong hệ thống hoặc phần mềm nhằm bảo đảm rằng nó không bị khai thác bởi những nhóm hoặc cá nhân xấu. Kiểm thử thâm nhập bao gồm việc dò quét những lỗ hong về bảo mật trong SQL injection, cross-site scripting (XSS), cross-site request forgery (CSRF), và những lỗ hổng bảo mat khác. Nó cũng bao gồm việc đánh giá các cảnh báo bảo mật ác vấn đề bảo mật khác.Việc tiến hành kiểm thử thâm nhập đều đặn và thường xuyên là rất cần thiết để đảm bảo độ tin cậy đối với phần mềm và ứng dụng trong môi trường khoa hoc - kĩ thuật - công nghệ ngày càng phát triển và các vấn đề an ninh mạng không ngừng gia tăng.
Phương pháp tiếp cận Mặc dù kiểm thử thâm nhập là một cách tiếp cận để tăng cường và củng cố an ninh hệ thống thông tin, nhưng nó chắc chắn không nói lên rằng hệ thống 8 là hoàn toàn an toàn và không thể bị hacker tấn cong. Kiểm thứ thâm nhập có thể phát hiện các vấn đề bảo mật đã biết công khai, những lỗ hồng đã được tiết lộ và công bố trước đó. C6 quá nhiều phương pháp hỗ trợ kiểm thử thâm nhập nên đôi khi có thể sẽ khó khăn để có thể đưa ra một giải pháp phù hợp. Người kiểm thử càng có nhiều kinh nghiệm và càng có nhiều kiến thức sâu hơn về môi trường cần kiểm thử thì sẽ có thể đưa ra quyết định đúng đắn hơn cho một giải pháp phù hợp, ví dụ như Open Source Security Testing Methodology Manual do ISECOM phát triển và duy trì hoặc Open Web Application Security Project (OWASP) cho các ứng dụng web và di động.
Đối với OWASP, đây là một dự được tạo ra và phát triển bởi tổ chức OWASP - Một tổ chức phi lợi nhuận và có nhiều thành viên là những chuyên gia thuộc lĩnh vực phát triển ứng dụng web hoặc những chuyên gia trong ngành phần mềm. OWASP hướng tới việc phát triển các ứng dụng và dịch vụ web một cách an toàn, bằng cách liệt kê các việc phải thực hiện trong mỗi giai đoạn phát triển phần mềm để có thể đạt tới mục đích là sự an toàn nhất có thể đối với phần mềm. Ngoài ra, OWASP cũng cung cấp một báo về các nguy cơ bảo mật đối với bảo mật ứng dụng web, tập trung vào 10 rủi ro, lỗ hồng quan trọng và phổ biến nhất, được gọi là OWASP TOP 10 (hình 2. 2017 2031 A01:2017-injecdon A01:2021-8:oken Access Control ‘802:2017-Broken Authentication ‘A02:2021-Cryptographic Failures ‘803:2017-Sensitive Data Exposure > A03:2021-Injection _A04:2017-XML External Entities (XE) Sw) A04:2021-Insecure Design ‘A0S:2017-Broken Access Control 9 ‘A05:2021-Security Misconfiguration ‘A06:2017-Security Misconfiguration ‘A06:2021-Vulnerable and Outdated Components ‘A07:2021-Identifcation and Authentication Failures eae(New? A08:2021-Software and Data Integrity Failures 409:2017-Using Components with Known Vulnerabilities —“"_—> A08:2021-Securty Logging and Monitoring Fallures* ‘A10:2017-Insufficient Logging & Monitoring (New) A10:2021-Server-Side Request Forgery (SSRF)* *From the survey Hình 2.1: Hinh ảnh mô té OWASP Top 10 năm 2017 va sự thay đổi trong nam 2021 Những phương pháp tiếp can vừa được chúng tôi dé cập thường dua ra gợi ý về một quy trình hoặc cấu trúc của một bài kiểm tra thâm nhập, thường chia làm nhiều giai đoạn, trong đó mỗi đầu ra từ giai đoạn này sẽ là đầu vào cho giai 9 đoạn tiếp theo.
Tuy nhiên, khi áp dụng cho một mạng cụ thể, những giai đoạn này sẽ được chia làm một chuỗi các bước khác nhau để đánh giá một cách logie hệ thống được kiểm tra (hình 2. & Harvesting email addresses, conference information, etc. Coupling exploit with backdoor into deliverable payload ® Delivering weaponized bundle to the victim via email, web, USB, etc, Exploiting a vulnerability to execute code on victim's system 2.Command channel for remote manipulation of victim Hình 2.2: Hinh ảnh mô tả những bước chính của quá trình kiểm thử thâm nhập 2. Công cụ hỗ trợ Đối với thu thập tìm kiếm thông tin, mục đích là tìm kiếm thông tin có ích về mạng mục tiêu.
Và nmap là một trong các công cụ hiệu quả nhất thực hiện điều này. Nmap cung cấp cho người dùng những thông tin về hệ điều hành, các 10 cổng đang mở và những dịch vụ đang hoạt động trên những cổng đó (hình 2. Tuy nhiên, để xác định được lỗ hổng thì ta cần chọn những cách khai thác phù hợp. Như là, từ những thông tin của công cụ nmap quét được ta có thể dùng các trình quét lỗ hổng như Nessus hoặc OpenVAS [16] để kiểm tra.
Mặc dù vậy, quy trình quét và phân tích ban đầu đã cho người kiểm thử rất nhiều thông tin có giá trị về mục tiêu bao gồm ý tưởng cơ bản về mô hình mạng hoặc các dịch vụ (có thể là cả phiên bản của chúng) được sử dụng trong mạng.org ) at 2023-02-12 15:34 +07 Nmap scan report for 192.120 Host is up (0. Not shown: 65526 closed ports PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.1 (Ubuntu Linux; protocol 2.0) 25/tcp open smtp Postfix smtpd 80/tcp open http nginx 1.0 (Ubuntu) 389/tcp open ldap OpenLDAP 2.X 5667/tcp open tcpwrapped 8040/tcp filtered ampify 8080/tcp open http Jetty 19.13 9000/tcp filtered cslistener 9092/tcp filtered Xm1IpcRegSvc Device type: general purpose Running: Linux 2.X 0S CPE: cpe:/o:linux: Linux_kernel:2.32 ' Network Distance: © hops Service Info: Host: clientsnort.localdomains 0S: Linux; CPE: cpe:/o:linux:linux_kernel Hình 2.3: Hinh ảnh mô tả thông tin trả vé trong một vi dụ sử dung Nmap Do sức mạnh của những kỹ thuật như vậy, nên nó có thể bị lạm dụng và trở nên công cụ hữu hiệu đối với các ké tin tặc. Giúp chúng dé chuẩn bị cho một cuộc tấn công có chủ dich. Bài báo của tác giả Kalia và Singh [7] đề cập đến những kỹ thuật quét mạng và triển khai những phương pháp chống lại sự rò rỉ thông tin trên mạng nhờ những kỹ thuật quét mạng.
Sau giai đoạn thu thập thông tin các lỗ hong trên hệ thống thì giai đoạn kế tiếp khi tiến hành kiểm thử xâm nhập là cố gắng khai thác các lỗ hổng. Mục đích của giai đoạn này là để thực thi những đoạn mã khai thác xâm phạm mục tiêu và thực thi lệnh tuỳ ý trên hệ thống được kiểm thử. Đây là một giai đoạn tốn nhiều thời gian và yêu cầu người kiểm thử có nhiều hiểu biết và kinh nghiệm kiểm thử. Tuy nhiên, Metasploit Framework [4] là một công cụ mã nguồn mở 11 được sử dụng trong quá trình khai thác lỗ hổng bảo mật.
Nó được phát triển bởi những chuyên gia an ninh mạng và tester an toàn thông tin nhằm giúp họ phát hiện và khai thác những lỗ hong trong hệ thống an ninh mang và bảo mật web. Ra mắt vào năm 2003 giúp việc khai thác đơn giản hơn. Metasploit |4] có khả năng mở rộng bởi kiến trúc được mô đun hóa. Metasploit có một hệ thống mô-đun khai thác đa dạng với rất nhiều những payload (các tác vụ được thực hiện sau khi khai thác thành công hệ thống đích) thực thi nhiều chức năng (ví dụ: tạo người dùng mới) trên nhiều môi trường khác nhau.4: Hình ảnh mô tả cấu trúc tong quát của Metasploit Các tác vụ thông thường như giao tiếp qua mạng hoặc giữa các tệp sẽ được lập trình sẵn trong các thư viện.
Thông qua các giao diện sử dụng, người dùng có thể chủ động kiểm soát hoạt động của Metasploit. Chính vì thế, với việc các module khai thác thường xuyên được cập nhật của minh, Metasploit framework giúp người dùng tận dụng thông tin thu thập được để tìm kiếm và khởi chạy các module khai thác một cách dé dàng và nhanh chóng hơn bằng việc chỉ cần tập trung vào việc khởi chạy khai thác, thay vì hiểu rõ kỹ thuật để tìm kiếm và phát triển khai thác. Một số giao diện của Metasploit có thể kể đến như Msfcli, Msfconsole, hoặc thậm chí là có GUI dành cho những người sử dụng không có đủ kiến thức về đồng lệnh và con gọi là Armitage. Msfeli được sử dụng trực tiếp từ dòng lệnh.
Nó giúp người sử dụng tìm hiểu 12 cách thức vận hành bên trong của Metasploit, do đó nó thích hợp cho người mới sử dụng và những người mới bắt đầu với Metasploit. Msfconsole là một giao diện khác để giao tiếp với Metasploit. So với msfcli, msfconsole mạnh hơn và có thể mở rộng hơn. Điều này cho phép bạn truy cập các biến toàn cầu, thực hiện tìm kiếm trong cơ sở dữ liệu khai thác, v.
Sau khi sử dụng thành công, tất cả các phiên Meterpreter được lưu trong một Msfconsole. Cách sử dụng Msfconsole được trình bày chỉ tiết trong hướng dẫn công khai của Metasploit https: //www.com/metasploit-un1eashed/msfconsole Metasploit cho phép người dùng dé dang quản lý các mô-đun khai thác (như tra cứu) và chọn từ các loại tải trọng khác nhau được phân loại cụ thể cho mục đích sử dụng của họ. Khi chạy khai thác, trình tự các bước Metasploit phải sử dụng để thiết lập kênh giao tiếp hai chiều giữa người kiểm tra và hệ thống được kiểm tra để cho phép truy cập hệ thống từ xa có thể được tóm tắt như sau (hình 2.5): Tester sends 1‘ stage payload System connects back to Metasploit 2"4 stage payload with DLL is sent Connection is established Hình 2.5: Hình ảnh mô tả quá trình thiết lập kết nối giữa Metasploit va may chủ mục tiêu 13 2. Học tăng cường 2.