다음을 수행하고 루트로 두 번째 명령을 생성하는 방법이 있습니까?
sudo whatever && /bin/sh
다음을 시도했지만 여전히 원래 사용자로 남아 있습니다.
sudo who && /bin/sh
sudo가 한 번 호출되면 두 번째 명령을 실행하여 쉘을 생성할 수 있는지 궁금합니다. 이는 sudo x && sudo y
백엔드에 있는 애플리케이션의 취약한 코딩으로 인해 프로그램이 sudo
. 루트 쉘을 즉시 생성할 수 있는지 확인하는 명령입니다.
답변1
그것은 다음과 같습니다:
sudo bash -c 'date && sleep 2 && echo $USER && date'
$USER
sudo bash에서 평가되도록 하려면 작은따옴표로 묶어야 합니다 . 큰따옴표로 묶인 경우 일반 사용자의 bash에 의해 평가됩니다.앞으로sudo가 실행되었습니다.