sudo에 대한 모든 후속 호출에 대한 비밀번호를 저장하는 sudo의 메커니즘은 무엇입니까?
답변1
명확히 하기 위해 sudo는 타임스탬프(빌드 시 --with-rundir로 구성)를 사용하여 파일을 캐시하고 저장합니다.타임스탬프파일에 대한 항목(ts_write() 및 해당 구조 타임스탬프 매개변수 참조). 구조가 정의되어 있습니다.
struct ts_cookie {
char *fname;
int fd;
pid_t sid;
bool locked;
off_t pos;
struct timestamp_entry key;
};
여기서 fname은 캐시 파일의 경로(사용자 비밀번호가 아님)로 설정됩니다 asprintf(&fname, "%s/%s", def_timestampdir, user)
. fname
.