带文件描述符的Bash命令

时间:2016-10-04 07:44:28

标签: bash

我想知道这个命令是做什么的:

/bin/sh -i <&3 >&3 2>&3

我知道“-i”是一个持久的命令,其余的是关于文件描述符,但我在这里很困惑..

更确切地说,我不明白&lt;&amp; 3,为什么它后面跟着&gt;&amp; 3然后2&gt;&amp; 3

由于

1 个答案:

答案 0 :(得分:1)

这看起来像是reverse shell所见的内容(例如在进行渗透测试时)。您可以将文件描述符(3)绑定到TCP端口以发送数据并读取响应。

所以/bin/sh -i <&3会转换为:

&#34;从TCP端口读取数据并作为输入发送到shell&#34;

>&3 2>&3会转换为:

&#34;将stdout(fd 1)和stderr(fd2)输出发送到文件描述符3,以便远程shell可以看到发送到输出的内容&#34;。