Tôi đã thử nghiệm một chút và nhận thấy một điều kỳ lạ: đặt bit setuid lên một bản sao của bash nằm ở đó /usr/bin/bash-testdường như không có tác dụng. Khi tôi chạy một phiên bản bash-test, thư mục chính của tôi không được đặt thành /rootvà khi tôi chạy whoamilệnh từ đó bash-test, tên người dùng của tôi không được báo cáo là root, cho thấy rằng nó bash-testkhông chạy bằng root. Tuy nhiên, nếu tôi thiết lập bit setuid whoami, tôi đã được báo cáo là root trong bất kỳ shell nào, như mong đợi.
Tôi cũng đã cố gắng thiết lập bit setuid /usr/bin/bashvà quan sát hành vi tương tự.
Tại sao bash không chạy bằng root khi tôi đặt bit setuid trên nó? Selinux có thể có cái gì đó để làm với điều này?