在 Kali 中使用文本文件进入 root 权限

在 Kali 中使用文本文件进入 root 权限

我的电脑上安装了 Kali-linux。每次重启时我都必须向它传递一些命令。我找到了一种快捷方式,将所有这些命令写入文本文件并在终端中执行文本文件。但是,这需要我使用以下命令进入 root 模式

sudo -i

并输入我的密码,我们假设是:

^^^^^^^^

现在我想要一个程序,通过该程序我只需要在终端中执行程序,它就会让我进入根模式,即它会自己输入密码。

有点像这样:

sudo -i
^^^^^^^^

好像我甚至不需要输入密码。有什么方法只需双击文件即可进入 root 模式……?

答案1

实现此目的的一种方法是编写一个不使用 sudo 的脚本,然后使用 sudo 运行该脚本本身。这样,您将输入一次密码。或者甚至允许在没有密码的情况下运行它 — 请参阅下一段。

您可以进行设置sudoers,使其在执行某些命令时不要求输入密码,这些命令发生在您的脚本中,或者在运行脚本本身时(例如sudo myscript.sh)。极其小心因为你本质上绕过了保护措施sudo;如果某人修改你的脚本,他们的修改将以特权用户身份运行!当然,更好的方法是在 drop-in 目录中设置一些文件,/etc/sudoers.d/而不是修改主文件(它将在包更新时被覆盖,而 drop-in 文件不会):

sudo visudo -f /etc/sudoers.d/my-script

阅读man sudoers有关如何编写此内容的详细信息my-script

另一种方法是知道 sudo 有“-S”命令行参数,这使得它从 stdin 接受密码。然后你将密码放入文件中,妥善保护文件,然后你就可以将其 cat 到sudo -S

echo "pAs5w0rD" > cwfile
chmod 0400 cwfile
# the following is how to use this in the script
cat cwfile | sudo -S privileged-command
cat cwfile | sudo -S another-privileged-command

说了这么多,我意识到,任何这些解决方案本质上是不安全的。

因此,如果您需要在启动时始终执行特权命令,请考虑创建一个启动时服务,在启动时为您运行这些命令。这并不难。

相关内容