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-test
dườ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 /root
và khi tôi chạy whoami
lệ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-test
khô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/bash
và 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?