![将参数传递给 socat 子进程](https://linux22.com/image/13687/%E5%B0%86%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%E7%BB%99%20socat%20%E5%AD%90%E8%BF%9B%E7%A8%8B.png)
我正在解决一个挑战,并且需要执行权限升级。目前我拥有本地用户的权限。因此,有一个以 root 身份运行的二进制文件,如果我们通过,则会启动 shell任何运行二进制文件时的参数。该二进制文件正在使用 socat 执行执行命令,并监听服务器端的端口。然而,在执行的索卡特,没有传递任何参数,因此二进制文件不会运行 shell。因此,当我们连接到服务器上的该端口时,它只会为我提供二进制文件的正常功能,而不是 shell。启动时以 root 身份在服务器上执行的命令是: socat TCP-LISTEN:1337,resuseaddr,fork EXEC:"/path/to/the/binary" &
因此,根据我到目前为止所了解到的情况,每次有人连接到服务器上的侦听端口时,socat 中的 EXEC 都会使用 execvp() 调用创建一个子进程。
有没有办法让我将一些参数传递给 socat 中使用 EXEC 创建的子进程?我基本上需要的是“/path/to/the/binary 任意参数”。