Tôi đã viết một chương trình mà gọi setuid(0)
và execve("/bin/bash",NULL,NULL)
.
Sau đó tôi đã làm chown root:root a.out && chmod +s a.out
Khi tôi thực thi ./a.out
tôi nhận được một vỏ gốc. Tuy nhiên, khi tôi thực hiện, gdb a.out
nó bắt đầu quá trình như người dùng bình thường và khởi chạy trình bao người dùng.
Vậy ... tôi có thể gỡ lỗi chương trình root setuid không?