Linux Privilege Escalation technique prevention

109 28 2
Linux Privilege Escalation technique  prevention

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trình bày khái quát về leo thang đặc quyền nói chung và leo thang trên Linux nói riêng, những kỹ thuật leo thang phổ biến trong Linux. Một số công cụ hỗ trợ cho quá trình đó và đề xuất biện pháp phòng thủ.

BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT Mà ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ĐỒ ÁN TỐT NGHIỆP NGHIÊN CỨU MỘT SỐ KỸ THUẬT LEO THANG ĐẶC QUYỀN TRÊN LINUX VÀ ĐỀ XUẤT GIẢI PHÁP PHỊNG CHỐNG Ngành: An tồn thơng tin Mã số: 7.48.02.02 Sinh viên thực hiện: Bùi Thị Phương Duyên – MSSV: AT160410 Người hướng dẫn: ThS Ngô Văn Nghĩa Công ty cổ phần công nghệ giáo dục dịch vụ Brontobyte Hà Nội, 2023 BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT Mà ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ĐỒ ÁN TỐT NGHIỆP NGHIÊN CỨU MỘT SỐ KỸ THUẬT LEO THANG ĐẶC QUYỀN TRÊN LINUX VÀ ĐỀ XUẤT GIẢI PHÁP PHÒNG CHỐNG Ngành: An tồn thơng tin Mã số: 7.48.02.02 Sinh viên thực hiện: Bùi Thị Phương Duyên – MSSV: AT160410 Người hướng dẫn: ThS Ngô Văn Nghĩa Công ty cổ phần công nghệ giáo dục dịch vụ Brontobyte Hà Nội, 2023 MỤC LỤC MỤC LỤC .i DANH MỤC KÝ HIỆU VÀ VIẾT TẮT iii DANH MỤC HÌNH VẼ .iv DANH MỤC BẢNG viii LỜI CẢM ƠN .ix LỜI NÓI ĐẦU .x CHƯƠNG 1: TỔNG QUAN KỸ THUẬT LEO THANG ĐẶC QUYỀN VÀ LEO THANG ĐẶC QUYỀN TRÊN LINUX 1.1 Giới thiệu leo thang đặc quyền .1 1.2 Phân loại leo thang đặc quyền .3 1.2.1 Leo thang đặc quyền theo chiều ngang .3 1.2.2 Leo thang đặc quyền theo chiều dọc 1.3 Một số vector công leo thang đặc quyền .6 1.3.1 Khai thác thông tin xác thực 1.3.2 Lỗ hổng đặc quyền khai thác 1.3.3 Cấu hình sai 1.3.4 Phần mềm độc hại .7 1.3.5 Kỹ nghệ xã hội .8 1.4 Leo thang đặc quyền hệ điều hành Linux .9 1.4.1 Cấu trúc quyền hạn hệ thống tệp tin Linux 1.4.2 Một số nguy dẫn đến leo thang đặc quyền Linux 13 1.4.3 Quá trình leo thang đặc quyền Linux 14 1.5 Cơng cụ q trình leo thang đặc quyền .18 1.5.1 linPEAS .18 1.5.2 lineum 20 1.5.3 LES (Linux Exploit Suggester) 21 1.5.4 So sánh công cụ 22 1.6 Kết luận chương .23 CHƯƠNG 2: NGHIÊN CỨU CÁC KỸ THUẬT LEO THANG ĐẶC QUYỀN TRÊN LINUX VÀ ĐỀ XUẤT GIẢI PHÁP PHÒNG CHỐNG .24 2.1 Một số kỹ thuật leo thang đặc quyền Linux .24 2.1.1 Khai thác phần mềm lỗi thời 24 2.1.2 Khai thác dịch vụ khơng an tồn 30 2.1.3 Khai thác thông qua quyền truy cập thông tin xác thực .37 2.1.4 Khai thác cấu hình sai phổ biến 42 2.2 Đề xuất biện pháp phòng chống leo thang đặc quyền Linux .68 2.2.1 Các phần mềm lỗi thời 68 2.2.2 Các dịch vụ hệ thống 69 2.2.3 Các tệp gán SUID Binaries 69 2.2.4 Quyền người dùng Sudo 69 2.2.5 Tác vụ lập lịch 70 2.2.6 Capability 71 2.3 Kết luận chương 71 CHƯƠNG 3: TRIỂN KHAI THỰC NGHIỆM CÁC KỸ THUẬT LEO THANG ĐẶC QUYỀN .72 3.1 Môi trường thực nghiệm 72 3.2 Kịch thực nghiệm 72 3.3 Triển khai thực nghiệm .73 3.3.1 Giành quyền truy cập máy mục tiêu 73 3.3.2 Thu thập tự động thông tin hệ thống mục tiêu 79 3.3.3 Nghiên cứu cách thức khai thác 82 3.3.4 Thực khai thác 85 3.4 Đánh giá đưa biện pháp phòng thủ sau thực nghiệm 91 3.5 Kết luận chương .92 KẾT LUẬN 93 TÀI LIỆU THAM KHẢO 94 DANH MỤC KÝ HIỆU VÀ VIẾT TẮT CPU Central Processing Unit CVE Common Vulnerabilities and Exposures FTP File Transfer Protocol IDS Intrusion Detection System IPC Inter-Process Communication IPS Intrusion Prevention System KASLR Kernel Address Space Layout Randomization NFS Network File System RBAC Role-Based Access Control RCE Remote Code Execution RHEL Red Hat Enterprise Linux SGID Set Group ID SUID Set User ID SMAP Supervisor Mode Access Prevention SMEP Supervisor Mode Execution Prevention SQL Structured Query Language UDF User Defined Function DANH MỤC HÌNH Y Hình 1 Protection Ring Hình Ví dụ leo thang đặc quyền theo chiều ngang Hình Cấp độ quyền đặc quyền tài khoản người dùng .5 Hình Ví dụ leo thang đặc quyền theo chiều dọc Hình Quyền truy cập tệp tin .9 Hình Quyền sở hữu tệp tin Linux 10 Hình Hiển thị quyền truy cập tệp tin đối tượng 11 Hình Thơng tin phiên nhân hệ điều hành 15 Hình Thông tin giao diện mạng máy mục tiêu 16 Hình 10 Tải xuống linPEAS 19 Hình 11 Khởi chạy cơng cụ liệt kê tự động linPEAS 20 Hình 12 Kết khởi chạy linenum 21 Hình 13 Tải file thực thi công cụ LES 21 Hình 14 Hiển thị kết chạy cơng cụ LES Hình Biều đồ mô tả khả leo thang đặc quyền thông qua việc khai thác phần mềm lỗi thời 24 Hình 2 Cấu trúc nhân Linux 25 Hình Liệt kê phiên kernel thủ công 26 Hình Liệt kê phiên kernel tự động công cụ linPEAS 26 Hình Liệt kê tự động lỗ hổng liên quan đến kernel với LES 26 Hình Tìm kiếm khai thác liên quan đến kernel với searchsploit 27 Hình Tìm kiếm khai thác liên quan đến phiên kernel google 28 Hình Tìm kiếm module khai thác với metasploit 28 Hình Chọn module khai thác 29 Hình 10 Tìm module khai thác với mục tiêu có đăng nhập ssh 29 Hình 11 Set payload 29 Hình 12 Chạy khai tác giành shell root .30 Hình 13 Biểu đồ mơ tả khả khai thác leo thang thơng qua dịch vụ khơng an tồn 31 Hình 14 Kết tìm kiếm dịch vụ chạy với quyền root 32 Hình 15 Kết tìm kiếm tiến trình dịch vụ có từ khóa mysql 33 Hình 16 Kiểm tra thư mục /home/user/tool .33 Hình 17 Biên dịch tệp raptor_udf2.c 34 Hình 18 Tệp biên dịch thành module động so 34 Hình 19 Quá trình tạo hàm tùy chỉnh do_system .35 Hình 20 Tạo lệnh hệ thống 35 Hình 21 Chạy tệp lệnh để lấy shell root tạm thời 36 Hình 22 Đọc tệp /etc/exports .36 Hình 23 Biều đồ mơ tả khả khai thác thông qua quyền truy cập thông tin xác thực 38 Hình 24 Đăng nhập tài khoản root 39 Hình 25 Kiểm tra tệp thư mục ẩn hệ thống mục tiêu 40 Hình 26 Kiểm tra tệp thư mục ssh 40 Hình 27 Truy cập ssh với người dùng root khóa có 40 Hình 28 Đọc tệp /etc/shadow 41 Hình 29 Tạo mật dạng băm tùy ý 41 Hình 30 Nội dung tệp /etc/passwd 42 Hình 31 Biểu đồ mơ tả khả khai thác leo thang thơng qua cấu hình sai phổ biến .43 Hình 32 Quyền SUID 44 Hình 33 Tìm kiếm file gán SUID lệnh find 44 Hình 34 Tìm kiếm file gán SUID cơng cụ linPEAS 45 Hình 35 Biểu đồ mô tả khả khai thác leo thang thông qua SUID Binaries 45 Hình 36 Khai thác SUID với trang GTFOBins 46 Hình 37 Một số tệp đáng ý mà linPEAS khơng xác định 47 Hình 38 Phân tích lại tệp với strace 47 Hình 39 Thử chạy tệp suid-so 48 Hình 40 Tìm kiếm chuỗi với strings 48 Hình 41 Kiểm tra thư mục /home/user 49 Hình 42 Kiểm tra lại thư mục /home/user xem có file chứa tập lệnh tạo chưa 50 Hình 43 Giành shell root 50 Hình 44 Ví dụ đường dẫn lưu trữ biến $PATH 50 Hình 45 Thư mục có chứa tệp gán SUID 51 Hình 46 Đọc tệp có thư mục người dùng 51 Hình 47 Thêm đường dẫn thư mục tập lệnh bash vào $PATH 52 Hình 48 Tạo tệp bash cấp quyền 52 Hình 49 Thực thi tệp nhận shell người dùng root 52 Hình 50 Tìm kiếm chương trình chạy với SUDO khơng cần mật .54 Hình 51 Mã khai thác sudo GTFOBins 55 Hình 52 Khai thác thành công leo thang thông qua sudo 55 Hình 53 Vector leo thang thơng qua sudo biến mơi trường 56 Hình 54 Q trình khai thác thơng qua biến mơi trường LD_PRELOAD 57 Hình 55 Xem apache2 dùng thư viện dùng chung .57 Hình 56 Khai thác thông qua biến môi trường LD_LIBRARY_PATH 57 Hình 57 Tìm kiếm capability kích hoạt .58 Hình 58 Thành cơng leo thang đặc quyền có shell root 59 Hình 59 Ví dụ cron job 60 Hình 60 Tìm cron job chạy hệ thống mục tiêu 61 Hình 61 Các tác vụ có khả leo thang 62 Hình 62 Kiểm tra thư mục /home/user 62 Hình 63 Thực netcat máy cơng có phiên người root 63 Hình 64 Kiểm tra file có khả khai thác .65 Hình 65 Tạo file bash đơn giản 65 Hình 66 Lấy shell root 66 Hình 67 đường dẫn mặc định file overwrite.sh 66 Hình 68 Tìm vị trí file overwrite.sh 67 Hình 69 Xác định quyền hạn file overwrite.sh 67 Hình 70 Nhận shell root Hình 3.1 Mơ hình thực công thực nghiệm .73 Hình 3.2 Dị qt địa IP máy mục tiêu 74 Hình 3.3 Dò quét cổng mở máy mục tiêu .75 Hình 3.4 Truy cập trang web thông qua cổng HTTP 75 Hình 3.5 Giao diện trang người dùng 76 Hình 3.6 Thay đổi password cho người dùng test thành công 76 Hình 3.7 Đổi mật cho người dùng có ID .77 Hình 3.8 Trang chủ tài khoản admin .77 Hình 3.9 Upload file image thành công 78 Hình 10 Burp Suite Repeater .78 Hình 3.11 Sửa đổi phần mở rộng tệp tải lên 78 Hình 3.12 Tạo reverse shell 79 Hình 3.13 Quét thư mục ẩn máy mục tiêu .79 Hình 3.14 Truy cập đường dẫn lưu trữ file tải lên 80 Hình 3.15 Giành quyền truy cập máy mục tiêu 80 Hình 3.16 Tạo máy chủ web đơn giản 81 Hình 3.17 Tải khởi chạy linpeas.sh 81 Hình 3.18 CVE khai thác 82 Hình 3.19 Cron job khai thác 82 Hình 3.20 Các SUID binary khai thác 82 Hình 3.21 Capabilities khai thác 83 Hình 3.22 Tệp sh khai thác 83 Hình 3.23 Quyền truy cập tệp nhạy cảm khai thác .83 Hình 3.24 Khả leo quyền sang người dùng John 84 Hình 3.25 Khả leo thang từ john lên root thông qua biến PATH 85 Hình 26 Nơi lưu trữ pkexec Polkit 86 Hình 3.27 Đi đến thư mục chứa mã khai thác vừa tải 86 Hình 3.28 Biên dịch khởi chạy mã khai thác giành quyền root .87 Hình 3.29 Tìm kiếm thủ cơng chương trình gán SUID 87 Hình 3.30 Khai thác SUID biết GTFOBins 88 Hình 3.31 Khởi chạy lệnh để nâng quyền root 88 Hình 3.32 Tệp /etc/passwd ghi 88 Hình 3.33 Đăng nhập với người dùng test 89 Hình 3.34 Khai thác leo thang thơng qua biến PATH 89 Hình 3.35 Khai thác quyền sudo 90 Hình 3.36 Tìm kiếm thủ cơng capability khai thác 90 Hình 37 Tìm thấy khai thác capability GTFOBins 91 Hình 3.38 Khai thác capability dựa vào khai thác biết 91 Hình 3.39 Có thể ghi vào tệp nằm tác vụ lập lịch .92 Hình 3.40 Lắng nghe kết nối để có shell root .92 DANH MỤC B

Ngày đăng: 26/12/2023, 14:15

Tài liệu cùng người dùng

Tài liệu liên quan