Source code:
Tương tự các bài trên chúng ta thực hiện tắt chế độ random thanh ghi trong kernel.
Thực hiện compile source code stack.c
Sau đó cấp quyền cho file stack vừa compile.
Chúng ta có 1 mã shellcode để tiêm vào file stack, shellcode python này sẽ thực hiện tạo 1 badfile và tràn vào hệ thống đến thư mục /bin/sh của os.
Thực hiện ltrace file stack để xem giá trị đầu của biến str trong source code là bfffef0c. Tiến hành chỉnh sửa source shellcode phần bôi đen như ảnh dưới đây.
Cấp quyền cho shellcode trên. Và chạy.
Sau đó chúng ta tiến hành chạy file stack. Có thể thấy việc khai thác đã tràn được đến mục shell trên os.
Tương tự các bài trên chúng ta thực hiện tắt chế độ random thanh ghi trong kernel.
Thực hiện compile source code stack.c
Sau đó cấp quyền cho file stack vừa compile.
Chúng ta có 1 mã shellcode để tiêm vào file stack, shellcode python này sẽ thực hiện tạo 1 badfile và tràn vào hệ thống đến thư mục /bin/sh của os.
Thực hiện ltrace file stack để xem giá trị đầu của biến str trong source code là bfffef0c. Tiến hành chỉnh sửa source shellcode phần bôi đen như ảnh dưới đây.
Cấp quyền cho shellcode trên. Và chạy.
Sau đó chúng ta tiến hành chạy file stack. Có thể thấy việc khai thác đã tràn được đến mục shell trên os.
Bài viết này dựa trên thực hành software security của Seed Lab.