当前用户对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。
- 这个命令以超级用户权限(
本文详细描述了如何在拥有nmaproot权限的情况下,通过创建临时文件并注入Lua脚本来执行/bin/sh命令,从而实现提权的过程。涉及到了mktemp、echo、redirect和nmapScriptingEngine的使用。
2250

被折叠的 条评论
为什么被折叠?



