[질문] C 프로그램에서 루트권한을 얻는 방법.

익명 사용자의 이미지

C 프로그램 전문가님께 도움 요청합니다.

CGI 프로그램에서 유저가 가입을 마치고 유저가 입력한 아이디로 리눅스
계정를 추가하려고 합니다.
물론 CGI 프로그램의 오너는 루트가 아니고요.

루트가 소유가 아닌 C 프로그램에서 루트 권한을 획득하는 방법을 알고 싶
습니다.

루트 권한을 획득한후 system("useradd")를 실행하려 합니다.
더 좋은 방법이 있으시면 알려주시면 정말로 감사드리겠구요.

그럼.

익명 사용자의 이미지


일반적으로 두 가지 이상의 방법이 존재합니다.

1. 님의 이야기처름 root권한의 획득.

2. 스타키 비트를 이용해서 유효 사용자를 변경하는 법.
ex) ls -al
sr-xr-xr-x root other xxx
'xxx'라는 프로그램이 수행될때
owner의 id로 변경되어 수행 됩니다.
즉 위의 예에선 root니까 수행 하면
바로 root의 권한으로 수행 되지요.
쉽지요.
자세한 사항은 chmod를 참조하세요.