안녕하세요 여러분, 저는 Linux를 처음 접했기 때문에 도움이 필요했습니다. 현재 Kali Linux 를 실행 중이며 백그라운드 sudo -l
로 . user1
실행하면 sudo -l
다음과 같은 결과가 나타납니다.
sudo -l
Matching Defaults entries for user1 on thisdevice:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
User user1 may run the following commands on thisdevice:
(user2) NOPASSWD: /usr/bin/vi /home/user2/details.txt
내가 아는 한 이것은 디렉토리 의 파일에 액세스하기 위해 명령을 user1
사용할 수 있어야 함을 의미합니다 . 그러나 실행하려고 하면 여전히 비밀번호를 묻는 메시지가 나타납니다 .sudo vi
details.txt
user2
sudo vi
user1
내가 실수를 했는지 아니면 도움을 줄 수 있는지 아는 사람이 있나요? 난 항상GTFOBINS(공격자가 로컬 보안 제한을 우회하기 위해 악용할 수 있는 Unix 바이너리의 선별된 목록)을 보고 있지만 vi
이 부분 이후에는 진전이 없는 것 같습니다.
답변1
이 sudo
명령은 의도적인 권한 상승을 제공합니다. 이것이 바로 이것이 존재하는 이유입니다.
표시되는 정의는 매우 구체적입니다. 이를 통해 정확한 파일 경로를 편집 sudoers
할 수 있습니다 . 이 명령은 작동합니다/usr/bin/vi
/home/user2/details.txt
sudo -u user2 vi /home/user2/details.txt
하지만 이건 안 되지
cd /home/user2
sudo -u user2 vi details.txt
당신이 그런 말을 한 것 같군요 sudo vi
. sudo
이 옵션으로 달리 지정하지 않는 한 대상 사용자는 암시적이므로 이 작업을 수행할 권한이 없습니다 .root
-u
sudo [options] vi ...
대상 사용자로 대화형 셸을 실행하는 vi
명령 에는 약간의 중단이 있습니다 .:shell