通过标记现有命令来生成 Shell 以 Sudo 身份运行

通过标记现有命令来生成 Shell 以 Sudo 身份运行

有没有办法执行以下操作并以 root 身份生成第二个命令?

 sudo whatever && /bin/sh

我尝试了以下内容,但它仍然使我成为原始用户。

sudo who && /bin/sh

我想知道一旦调用 sudo 一次,是否可以通过运行第二个命令来生成 shell。这很重要,因为我无法运行像sudo x && sudo y我试图创建的测试这样的命令,因为(我相信)应用程序中的易受攻击的编码(在后端)将程序执行为sudo.我只需要尝试在它前面标记一个命令,看看是否可以立即生成一个 root shell。

答案1

就像是:

sudo bash -c 'date && sleep 2 && echo $USER && date'

请注意,$USER必须用单引号引起来,以确保在 sudo bash 中对其进行评估。如果它是双引号的,它将由普通用户的 bash 进行评估sudo 已执行。

相关内容