前言
前几天在做综合靶场的时候,有一个不太完整的vulntarget-a综合靶场,在这里我用了cs工具那么今天就给大家简单的说一下这个工具
1、工具简介
Cobalt Strike是一款以metasploit为基础的GUI的框架式渗透工具,集成了端口转发、服务扫描,自动化溢出,多模式端口监听,winexe木马生成,win dll木马生成,java木马生成,office宏病毒生成,木马捆绑;钓鱼攻击包括:站点克隆,目标信息获取,java执行,浏览器自动攻击等等。 Cobalt Strike主要用于团队作战,可以说是内网渗透中的团队渗透神器,CobaltStrike能够让多个攻击者同时连接到团队服务器上,共享攻击资源与目标信心和Session。要知道众人拾柴火焰高的道理,当我们发现一个内网控制点后,为了使我们的攻击收益最大化,最好的办法就是跟团队共享资源,给其他成员提供同样的接入点,Cobalt Strike很好的做到了这一点。因此Cobalt Strike作为一款协同APT工具,针对内网的渗透测试和作为APT的终端控制功能,使其变成众多APT组织的首选工具。 此次会使用Cobalt Strike 4.0进行讲解了巩固。
2、工具安装
此工具是需要java环境支持,所以无论建立在哪里,都得需要提前安装java环境(至于如何安装我就不过多介绍了,大家可以自行去网上进行百度)。 首先看一下cs4.0的目录结构 接下来直接启动即可,首先在服务端(服务端可以选择在服务器或者kali均可,我这里选择的是kali作为服务端) 在服务端 在这里./teamserver IP 密码。ip是你的服务端的ip地址,记住此处ip地址不能写127.0.0.1或者0.0.0.0,链接的密码自己设置一下就好,当出现以下界面的时候就说明客户端启动成功了。 在客户端 客户端可以选择在windows、linux都可以,只要有java环境即可,在这里我就直接也选择在kali段当客户端,直接输入命令./start.sh,稍等几秒就会出现以下界面 Host:这里写的是你服务器的ip地址 Port:我这里写的是50051,这端口可以去teamserver里进行设置 User:随便写一个名字就行,这里我写的是kali Password:一开始启动服务端你设置的密码 然后点击connect后出现以下界面 这里再给大家说一下windows的安装应用方法(中文版) 首先得用管理员权限启动cmd,进入目录
然后在启动环境即可,双击cs.bat 然后输入密码就可以正常使用 这个版本知识汉化大部分,不过也是够用了。
3、参数介绍
接下来对这个界面进行详细介绍
Cobalt strike模块 New Connection #新建连接,支持连接多个服务器端 Preferences #设置Cobal Strike界面、控制台、以及输出报告样式、TeamServer连接记录 Visualization #主要展示输出结果的视图 VPN Interfaces #设置VPN接口 Listenrs #创建监听器 Script Manager #脚本管理,可以通过AggressorScripts脚本来加强自身,能够扩展菜单栏,Beacon命令行,提权脚本等 Close #退出连接
View模块 Applications # 显示受害主机的应用信息 Credentials # 显示所有以获取的受害主机的凭证,如hashdump、Mimikatz Downloads # 查看已下载文件 Event Log # 主机上线记录以及团队协作聊天记录 Keystrokes # 查看键盘记录结果 Proxy Pivots # 查看代理模块 Screenshots # 查看所有屏幕截图 Script Console # 加载第三方脚本以增强功能 Targets # 显示所有受害主机 Web Log # 所有Web服务的日志
Attacks模块 (一)Packages模块
HTML Application # 生成(executable/VBA/powershell)这三种原理实现的恶意HTA木马文件 MS Office Macro # 生成office宏病毒文件 Payload Generator # 生成各种语言版本的payload Windows Executable # 生成可执行exe木马 Windows Executable(S) # 生成无状态的可执行exe木马
(二)Web Drive-by模块
Manage # 对开启的web服务进行管理 Clone Site # 克隆网站,可以记录受害者提交的数据 Host File # 提供文件下载,可以选择Mime类型 Scripted Web Delivery # 为payload提供web服务以便下载和执行,类似于Metasploit的web_delivery Signed Applet Attack # 使用java自签名的程序进行钓鱼攻击(该方法已过时) Smart Applet Attack # 自动检测java版本并进行攻击,针对Java 1.6.0_45以下以及Java 1.7.0_21以下版本(该方法已过时) System Profiler # 用来获取系统信息,如系统版本,Flash版本,浏览器版本等
(三)Spear Phish模块
Spear Phish # 鱼叉钓鱼邮件
Reporting模块 Activity Report # 活动报告 Hosts Report # 主机报告 Indicators of Compromise # 威胁报告包括C2配置文件的流量分析、域名、IP和上传文件的MD5 hashes Sessions Report # 会话报告 Social Engineering Report # 社会工程报告包括鱼叉钓鱼邮件及点击记录 Tactics, Techniques, and Procedures # 战术技术及相关程序报告包括行动对应的每种战术的检测策略和缓解策略 Reset Data # 重置数据 Export Data # 导出数据,导出.tsv文件格式
Help模块 Homepage # 官方主页 Support # 技术支持 Arsenal # 开发者 System information # 版本信息 About # 关于
工具栏
其实工具栏就是上面那些的缩小版
1.新建连接 2.断开当前连接 3.监听器 4.改变视图为Pivot Graph(视图列表) 5.改变视图为Session Table(会话列表) 6.改变视图为Target Table(目标列表) 7.显示所有以获取的受害主机的凭证 8.查看已下载文件 9.查看键盘记录结果 10.查看屏幕截图 11.生成无状态的可执行exe木马 12.使用java自签名的程序进行钓鱼攻击 13.生成office宏病毒文件 14.为payload提供web服务以便下载和执行 15.提供文件下载,可以选择Mime类型 16.管理Cobalt Strike上运行的web服务 17.帮助 18.关于
4、简单复现
漏洞环境 Kali:192.168.119.130 Win7:192.168.119.136
(一)钓鱼链接
首先在cs上开启一个监听界面,点击add添加,出现界面如下 设置完毕后点击save保存
建立成功,然后生成windows可执行的exe木马 生成exe木马文件,保存下来
创建好后开始下载一个钓鱼链接,让对方直接上钩就行 直接复制这个url开始钓鱼
双击即可
发现肉鸡已经上线,已经成功获得对方的shell,成功控制对方电脑…接下来深入了解一下拿到shell后的各项功能 用 cs 的 hashdump 读内存密码:hashdump,用 mimikatz 读注册表密码:logonpasswords。获取相应账户凭证 或者: 右键->Access->Dump Hashes(需要Administrator权限) 右键->Access->Run Mimikatz
可以在凭证栏中查看获取的凭证 Access模块 Dump Hashes #获取hash Elevate #提权 Golden Ticket #生成黄金票据注入当前会话 Make token #凭证转换 Run Mimikatz #运行 Mimikatz Spawn As #用其他用户生成Cobalt Strike侦听器
Explore模块 Browser Pivot #劫持目标浏览器进程 Desktop(VNC) #桌面交互 File Browser #文件浏览器 Net View #命令Net View Port Scan #端口扫描 Process List #进程列表 Screenshot #截图
Pivoting模块 SOCKS Server #代理服务 Listener #反向端口转发 Deploy VPN #部署VPN
Spawn模块 外部监听器(如指派给MSF,获取meterpreter权限)
Session模块 Note #备注 Remove #删除 Sleep #指定被控端休眠时间,默认60秒一次回传,让被控端每10秒来下载一次任务。实际中频率不宜过快,容易被发现。 Exit #退出 Interact(打开beacon)
beacon> help
Beacon Commands
Command Description
argue 进程参数欺骗 blockdlls 阻止子进程加载非Microsoft DLL browserpivot 注入受害者浏览器进程 bypassuac 绕过UAC提升权限 cancel 取消正在进行的下载 cd 切换目录 checkin 强制让被控端回连一次 clear 清除beacon内部的任务队列 connect Connect to a Beacon peer over TCP covertvpn 部署Covert VPN客户端 cp 复制文件 dcsync 从DC中提取密码哈希 desktop 远程桌面(VNC) dllinject 反射DLL注入进程 dllload 使用LoadLibrary将DLL加载到进程中 download 下载文件 downloads 列出正在进行的文件下载 drives 列出目标盘符 elevate 使用exp execute 在目标上执行程序(无输出) execute-assembly 在目标上内存中执行本地.NET程序 exit 终止beacon会话 getprivs Enable system privileges on current token getsystem 尝试获取SYSTEM权限 getuid 获取用户ID hashdump 转储密码哈希值 help 帮助 inject 在注入进程生成会话 jobkill 结束一个后台任务 jobs 列出后台任务 kerberos_ccache_use 从ccache文件中导入票据应用于此会话 kerberos_ticket_purge 清除当前会话的票据 kerberos_ticket_use Apply 从ticket文件中导入票据应用于此会话 keylogger 键盘记录 kill 结束进程 link Connect to a Beacon peer over a named pipe logonpasswords 使用mimikatz转储凭据和哈希值 ls 列出文件 make_token 创建令牌以传递凭据 mimikatz 运行mimikatz mkdir 创建一个目录 mode dns 使用DNS A作为通信通道(仅限DNS beacon) mode dns-txt 使用DNS TXT作为通信通道(仅限D beacon) mode dns6 使用DNS AAAA作为通信通道(仅限DNS beacon) mode http 使用HTTP作为通信通道 mv 移动文件 net net命令 note 备注 portscan 进行端口扫描 powerpick 通过Unmanaged PowerShell执行命令 powershell 通过powershell.exe执行命令 powershell-import 导入powershell脚本 ppid Set parent PID for spawned post-ex jobs ps 显示进程列表 psexec Use a service to spawn a session on a host psexec_psh Use PowerShell to spawn a session on a host psinject 在特定进程中执行PowerShell命令 pth 使用Mimikatz进行传递哈希 pwd 当前目录位置 reg Query the registry rev2self 恢复原始令牌 rm 删除文件或文件夹 rportfwd 端口转发 run 在目标上执行程序(返回输出) runas 以其他用户权限执行程序 runasadmin 在高权限下执行程序 runu Execute a program under another PID screenshot 屏幕截图 setenv 设置环境变量 shell 执行cmd命令 shinject 将shellcode注入进程 shspawn 启动一个进程并将shellcode注入其中 sleep 设置睡眠延迟时间 socks 启动SOCKS4代理 socks stop 停止SOCKS4 spawn Spawn a session spawnas Spawn a session as another user spawnto Set executable to spawn processes into spawnu Spawn a session under another PID ssh 使用ssh连接远程主机 ssh-key 使用密钥连接远程主机 steal_token 从进程中窃取令牌 timestomp 将一个文件的时间戳应用到另一个文件 unlink Disconnect from parent Beacon upload 上传文件 wdigest 使用mimikatz转储明文凭据 winrm 使用WinRM横向渗透 wmi 使用WMI横向渗透
在beacon中,如果想对目标进行命令管理,需要在前面加上shell,如shell whoami、shell ipconfig等… (二)beacon模块之browserpivot命令 用户注入受害者浏览器进程,然后开启HTTP代理,之后就可以登录受害者登录的网站了 beacon>ps //查看浏览器进程,这里进程为712 接下来开始进行注入进程 beacon>browserpivot 2396
开启http代理,代理服务器为192.168.119.130:1 本地浏览器设置http代理,host: 192.168.119.130 代理类型为http 端口为1 beacon>browserpivot stop //停止代理
(三)beacon模块之Screenshot&Keylogger
beacon>screenshot //运行屏幕截屏命令
然后打开View->Screenshots,则可以看到肉鸡屏幕截图 简单的使用就到此了,剩下的以后有时间会继续给大家更新
|