THỰC TẬP CƠ SỞ CHUYÊN NGHÀNH AN TOÀN PHẦN MỀM NGHIÊN CỨU CÁCH TẤN CÔNG DIRTY-COW (DIRTY-COW ATTACK LAB)

12 10 0
THỰC TẬP CƠ SỞ CHUYÊN NGHÀNH AN TOÀN PHẦN MỀM NGHIÊN CỨU CÁCH TẤN CÔNG DIRTY-COW (DIRTY-COW ATTACK LAB)

Đ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

tài liệu THỰC TẬP CƠ SỞ CHUYÊN NGHÀNH AN TOÀN PHẦN MỀM NGHIÊN CỨU CÁCH TẤN CÔNG DIRTY-COW (DIRTY-COW ATTACK LAB),BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA: AN TOÀN THÔNG TIN  THỰC TẬP CƠ SỞ CHUYÊN NGHÀNH AN TOÀN PHẦN MỀM NGHIÊN CỨU CÁCH TẤN CÔNG DIRTY-COW (DIRTY-COW ATTACK LAB),Chúng em xin chân thành cảm ơn PGS.TS Lương Thế Dũng–giảng viên trực tiếp hướng dẫn, chỉ bảo, tạo mọi điều kiện thuận lợi giúp đỡ chúng em trong quá trình thực hiện đề tài. Để có được thành quả như ngày hôm nay, ngoài sự nỗ lực không ngừng nghỉ của các thành viên trong nhóm thì một phần không nhỏ đóng góp nên thành công này là nhờ sự quan tâm, chỉ bảo, giúp đỡ của các thầy cô, các anh chị khóa trên và bạn bè xung quanh. Tuy đã có rất nhiều cố gắng và sự nỗ lực của các thành viên để hoàn thiện đề tài, nhưng chắc chắn đề tài “NGHIÊN CỨU CÁCH TẤN CÔNG DIRTY- COW (DIRTY- COW ATTACK LAB)” của chúng em còn nhiều thiếu sót. Chúng em rất mong nhận được sự góp ý từ các thầy giáo để nhóm em có thể hoàn thiện tốt hơn các đề tài nghiên cứu sau. Chúng em xin chân thành cảm ơn!

BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA: AN TỒN THƠNG TIN  THỰC TẬP CƠ SỞ CHUYÊN NGHÀNH AN TOÀN PHẦN MỀM NGHIÊN CỨU CÁCH TẤN CÔNG DIRTY-COW (DIRTY-COW ATTACK LAB) …………………………………………………………………………………………… Giảng viên hướng dẫn:  PGS.TS Lương Thế Dũng Sinh viên thực hiện: Huỳnh Hải Bằng Lớp: AT15H Mã số sinh viên: AT150802 Nhóm: 13 Khóa: 2018-2023 TP Hồ Chí Minh, tháng 11 năm 2021 BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA: AN TỒN THƠNG TIN  THỰC TẬP CƠ SỞ CHUYÊN NGÀNH AN TOÀN PHẦN MỀM NGHIÊN CỨU CÁCH TẤN CÔNG DIRTY-COW (DIRTY-COW ATTACK LAB) Nhận xét giáo viên hướng dẫn: Điểm báo cáo: Xác nhận giáo viên hướng dẫn: LỜI CẢM ƠN Chúng em xin chân thành cảm ơn PGS.TS Lương Thế Dũng–giảng viên trực tiếp hướng dẫn, bảo, tạo điều kiện thuận lợi giúp đỡ chúng em q trình thực đề tài Để có thành ngày hơm nay, ngồi nỗ lực khơng ngừng nghỉ thành viên nhóm phần khơng nhỏ đóng góp nên thành cơng nhờ quan tâm, bảo, giúp đỡ thầy cơ, anh chị khóa bạn bè xung quanh Tuy có nhiều cố gắng nỗ lực thành viên để hoàn thiện đề tài, chắn đề tài “NGHIÊN CỨU CÁCH TẤN CÔNG DIRTY- COW (DIRTYCOW ATTACK LAB)” chúng em cịn nhiều thiếu sót Chúng em mong nhận góp ý từ thầy giáo để nhóm em hồn thiện tốt đề tài nghiên cứu sau Chúng em xin chân thành cảm ơn! LỜI MỞ ĐẦU Ngày nay, với xu hướng chuyển đổi số mạnh mẽ doanh nghiệp, công ty, tổ chức dẫn đến việc tạo phần mềm quản lý, điều hành làm việc thiết yếu Bên cạnh đó, ảnh hưởng đại dịch COVID-19 thúc đẩy nhanh việc chuyển đổi số Để đảm bảo an toàn cho phần mềm tạo vận hành tránh bị kẻ xấu công gây thiệt hại nghiêm trọng Đó lý để chúng em chọn chuyên đề Software Security đặc biệt nghiên cứu cách công Dirty-Cow MỤC LỤC LỜI CẢM ƠN LỜI MỞ ĐẦU MỤC LỤC CHƯƠNG I: TỔNG QUAN VỀ DIRTY-COW LAB .6 Giới thiệu CHƯƠNG II: TIẾN HÀNH THỰC HIỆN VÀ NGHIÊN CỨU CHUYÊN SÂU BÀI LAB THEO THỨ TỰ TỪNG TASK .7 Task 1: Modify a Dummy Read-Only File, Create a Dummy File Set Up the Memory Mapping, write and madvise Thread Task 2: Modify the Password File to Gain the Root Privilege CHƯƠNG III: KẾT LUẬN 11 TÀI LIỆU THAM KHẢO .12 CHƯƠNG I: TỔNG QUAN VỀ DIRTY-COW LAB Giới thiệu Lỗ hổng Dirty COW trường hợp đặc biệt dạng lỗ hổng race condition Nó tồn nhân Linux từ tháng năm 2007, phát khai thác vào tháng 10 năm 2016 Lỗ hổng ảnh hưởng đến tất hệ điều hành dựa Linux, bao gồm Android, hậu nghiêm trọng: kẻ cơng giành đặc quyền root cách khai thác lỗ hổng Lỗ hổng bảo mật nằm mã copy-on-write bên nhân Linux Bằng cách khai thác lỗ hổng này, kẻ cơng sửa đổi tệp bảo vệ nào, tệp đọc chúng CHƯƠNG II: TIẾN HÀNH THỰC HIỆN VÀ NGHIÊN CỨU CHUYÊN SÂU BÀI LAB THEO THỨ TỰ TỪNG TASK Task 1: Modify a Dummy Read-Only File, Create a Dummy File Ở đây, tạo tệp đọc có tên ‘banghuynh’ thư mục gốc để chứng minh công cho phép ghi vào tệp đọc Có chuỗi ‘bh222222bh’ lưu trữ tệp, hình Nếu ta cố gắng ghi vào tệp lệnh echo, ta bị từ chối tệp đọc cho user thường Set Up the Memory Mapping, write and madvise Thread Chương trình cho viết tệp cow_attack.c, có luồng: main, write madvise Chuỗi ánh xạ tệp vào nhớ tìm kiếm chuỗi mong muốn thay - ‘222222’ Sau đó, bắt đầu hai luồng - luồng ghi thay ‘222222’ nội dung mong muốn - ‘******’ Nếu luồng chạy, nội dung ghi vào nhớ khơng phải nhớ chia sẻ, hồn tồn khơng ảnh hưởng đến tệp bên Do đó, cần chạy chuỗi madvise với luồng ghi, để bảng trang trỏ đến nhớ ánh xạ luồng ghi ghi nội dung vào nhớ cho nội dung phản ánh tệp Điều có nghĩa tệp đọc sửa đổi Khi ta biên dịch chạy chương trình kiểm tra nội dung tệp đọc ‘banghuynh’, ta thấy tệp sửa đổi thành công Bước quan trọng chạy chuỗi madvise luồng ghi chạy để việc ghi thực nhớ ánh xạ riêng, nhớ ánh xạ phản ánh tệp Để đạt điều đó, chạy lệnh gọi hệ thống write madvise vòng lặp để chúng thực thi theo trình tự mong muốn lần Vì thế, ta thực điều công Dirty COW ta thành công tệp đọc 'banghuynh' Một tiêu chí quan trọng sử dụng MAP_PRIVATE, điều cho phép ghi vào tệp đọc cách tạo riêng Task 2: Modify the Password File to Gain the Root Privilege Chỉ cần ta có quyền đọc tệp lỗ hổng Dirty COW khai thác Ở đây, cố gắng giành quyền root cách sửa đổi tệp passwd world-readable, root-writable Đầu tiên, tạo user khơng phải root có tên banghuynh kiểm tra mục nhập tệp passwd Như hình sau: Mục đích biến user bình thường trở thành user có quyền root cách sửa đổi UID họ - trường thứ ba mục nhập Bây cố gắng sửa đổi tệp /etc/passwd, thấy code Đầu tiên tìm nội dung sau: ‘banghuynh: x: 1001’ Đây mục nhập tương ứng với dòng người dùng tạo chúng tơi /etc/passwd Sau đó, ta thay dịng ‘banghuynh: x: 0000’, làm cho trở thành người dùng root Code hình sau: Sau đó, biên dịch chạy chương trình Để thay đổi user banghuynh thành user root làm cho UID id nhóm giữ nguyên Để xác minh, chuyển sang tài khoản user banghuynh dấu # cho biết user root 10 CHƯƠNG III: KẾT LUẬN Bài lab giúp sinh viên có kinh nghiệm thực tế cơng DirtyCOW, hiểu dạng lỗ hổng Race-Condition bị khai thác công hiểu sâu vấn đề bảo mật race condition chung Trong lab này, sinh viên khai thác lỗ hổng Dirty COW để có đặc quyền root 11 TÀI LIỆU THAM KHẢO Du, W (n.d.) Dirty-COW Attack Lab Retrieved from https://seedsecuritylabs.org/Labs_16.04/Software/Dirty_COW/ MeghaJakhotia (n.d.) Dirty COW Retrieved from https://github.com/MeghaJakhotia/ComputerSecurityAttacks/tree/master/Dirty %20COW 12

Ngày đăng: 23/03/2022, 18:55

Mục lục

    CHƯƠNG I: TỔNG QUAN VỀ DIRTY-COW LAB

    CHƯƠNG II: TIẾN HÀNH THỰC HIỆN VÀ NGHIÊN CỨU CHUYÊN SÂU BÀI LAB THEO THỨ TỰ TỪNG TASK

    1. Task 1: Modify a Dummy Read-Only File, Create a Dummy File

    2. Set Up the Memory Mapping, write and madvise Thread

    3. Task 2: Modify the Password File to Gain the Root Privilege

    CHƯƠNG III: KẾT LUẬN

    TÀI LIỆU THAM KHẢO

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

Tài liệu liên quan