
실행되고 대부분 작동하는 C .cgi 프로그램이 있습니다. 그러나 일부 파일 조작을 수행하려면 이것이 필요하므로 .cgi 프로그램에 대해 루트 및 chmod +s를 chown합니다.
-rwsr-sr-x 1 root root 59140 2015-07-20 13:39 sectl.cgi
실행될 때 프로그램에는 필요한 권한이 없습니다. rename() 명령이 실패합니다. 명령의 출력
system("whoami");
wwwrun입니다. 여기서 무슨 일이 일어나고 있는 걸까요?
(다른 시스템에서도 동일한 작업을 성공적으로 수행했다고 확신합니다.)
오픈수세 11.2
답변1
명심해야 할 몇 가지 사항이 있습니다.
- 스크립트에 대한 setuid가 비활성화될 가능성이 높습니다(참조쉘 스크립트에서 setuid 허용예를 들어).
- 귀하의 프로그램이 실제로바이너리, 그것이 상주하는 파일 시스템이 다음과 같이 마운트될 가능성은 여전히 있습니다.노수드옵션이거나 SELinux가 해당 기능을 금지합니다(예를 들어 참조).setuid 바이너리가 포함된 LD_PRELOAD).