告警流量分析:Cobalt Strike(默认实验文)
文章目录
- 前言
- 从去除流量特征反推
- 分析流量包
- 200815084549005001_tmp.pcap - 无有用信息
- 200929112751005001_tmp.pcap - 无有用信息
- 流量包协议
- 可疑 IP 地址
- 犯错 - one hour passed
- 201021151312005001_tmp.pcap - 有用信息
- 第一段数据
- TCP 流所有 description
- 源地址筛选:ip.src == 10.160.161.16
- 源地址筛选:ip.src == 10.150.187.155
- 总结
前言
软件一般都有流量特征,比如 SQLMap 默认有请求头指纹,这种情况分析 http 流量可以找到哪些包来自 SQLMap,通过 UA 插件修改该指纹就是隐藏特征 。Cobalt Strike 也有默认证书、流量特征等,通过这些数据来判断是否被 Cobalt Strike 控制。
从去除流量特征反推
参考:
- CobaltStrike去除流量特征-2021/03
- Cobalt Strike 的特征与隐藏-2021/05
Cobalt Strike 服务端和客户端是通过 SSL 加密通讯的,SSL配置文件和代理配置文件由于默认配置,导致 keystore 文件内容通常被用于防火墙识别。
Cobalt Strike 本地密钥文件:cobaltstrike.store
SSL 证书流量特征:
keystore type: jks
Alias name: cobaltstrike
Own: CN=Major Cobalt Strike
Issuer: CN=Major Cobalt Strike
- CS 默认端口:50050
- 默认 C/S 端通讯证书:字段和固定哈希值识别
- HTTP 流量特征:请求的固定地址,请求头等?
分析流量包
200815084549005001_tmp.pcap - 无有用信息
The file “200815084549005001_tmp.pcap” isn’t a capture file in a format Wireshark understands.
200929112751005001_tmp.pcap - 无有用信息
流量包协议
文件共有 40 个包,使用的协议都是 TCP,没有 Http 流量。
可疑 IP 地址
公网地址 10.160.161.18 ,访问 微步在线威胁情报社区 查询显示 安全
,不是恶意服务器。
Nmap 探测 50050 端口,显示 filtered
,默认探测全是 filtered
,不会是 PC 吧,但 PC 一般拿不到 A 段地址。
使用 CS 客户端尝试连接该 Server 端,返回 Connection timed out
测试网络连接,发现 ping 不通,应该有防火墙。
查看 TCP 流量包,硬件地址是 Dell_e8:1e:b5(f0:d4:e2:e8:1e:b5)。
跟踪 TCP 流,基本都显示如下的状态,搜索不到关键词 cobalt
。
犯错 - one hour passed
参考:
- cobalt strike各种beacon的详解(http/https/tcp)
- Cobalt Strike 4.0 官方教程
然后在这个数据包卡了一个小时,思考 TCP 通信方式应该是可以执行命令的。想找 Cobalt Strike 的通信模型,确定 TCP 通信是否能对得上……
看到了 Beacon 的通信方式又怎样,这个数据包基本没有价值。对着数据包神游一个小时,直到我打开下一个数据包追踪 TCP 流……气蠢中夹杂一丝欣喜。
201021151312005001_tmp.pcap - 有用信息
流量包协议:文件共有 61 个包,使用的协议都是 TCP,没有 Http 流量。追踪 TCP 数据流,发现与 Cobalt Strike 相关数据。
第一段数据
追踪组合 TCP 数据流,得到的第一段数据如下,跨越长度为 3-4 条记录,属于攻击者向服务器发送的数据包。
{"author": ["Elastic"],"description": "Cobalt Strike is a threat emulation platform commonly modified and used by adversaries to conduct network attack and exploitation campaigns. This rule detects a network activity algorithm leveraged by Cobalt Strike implant beacons for command and control.","false_positives": ["This rule should be tailored to either exclude systems, as sources or destinations, in which this behavior is expected."],"index": ["packetbeat-*"],"language": "lucene","license": "Elastic License","name": "Cobalt Strike Command and Control Beacon","note": "This activity has been observed in FIN7 campaigns.","query": "event.category:(network OR network_traffic) AND type:(tls OR http) AND network.transport:tcp AND destination.domain:/[a-z]{3}.stage.[0-9]{8}\\..*/","references": ["https://blog.morphisec.com/fin7-attacks-restaurant-industry","https://www.fireeye.com/blog/threat-research/2017/04/fin7-phishing-lnk.html"],"risk_score": 73,"rule_id": "cf53f532-9cc9-445a-9ae7-fced307ec53c","severity": "high","tags": ["Elastic","Network","Threat Detection","Command and Control"],"threat": [{"framework": "MITRE ATT&CK","tactic": {"id": "TA0011","name": "Command and Control","reference": "https://attack.mitre.org/tactics/TA0011/"},"technique": [{"id": "T1071","name": "Application Layer Protocol","reference": "https://attack.mitre.org/techniques/T1071/"},{"id": "T1568","name": "Dynamic Resolution","reference": "https://attack.mitre.org/techniques/T1568/","subtechnique": [{"id": "T1568.002","name": "Domain Generation Algorithms","reference": "https://attack.mitre.org/techniques/T1568/002/"}]}]}],"timestamp_override": "event.ingested","type": "query","version": 3
}
分析该数据字典,共有 18 个键
18 键名 | 键值 |
---|---|
author | |
description | This rule 检测一个 C2 beacon 可利用的网络活动算法 |
false_positives | ? |
index | ? |
language | lucene,Apache发布的开源全文检索引擎工具包 |
license | Elastic License? |
name | CS C2 Beacon |
note | 此活动已在 FIN7 活动中观察到,FIN7是一个国际APT组织 |
query | |
references | |
risk_score | 73 |
rule_id | cf53f532-9cc9-445a-9ae7-fced307ec53c,这是平台检测规则 |
severity | |
tags | |
threat | |
timestamp_override | |
type | |
version |
TCP 流所有 description
rule_id | description |
---|---|
cf53f532-9cc9-445a-9ae7-fced307ec53c | 检测 C2 beacon 可利用的网络活动算法 |
e7075e8d-a966-458e-a183-85cd331af255 | 检测 CS 默认 TLS 证书的使用 |
66883649-f908-4a5b-a1e0-54090a1d3a32 | 使用 Web 服务混入合法攻击流量 |
6ea71ff0-9e95-475b-9506-2580d1ce6154 | 检测内部网络客户端何时将 DNS 流量直接发送到 Internet |
无,后半段数据大量 function() | 标识大量 (15) nslookup.exe 执行,其具有来自同一主机的显式查询类型 |
源地址筛选:ip.src == 10.160.161.16
同上【TCP 流所有 description】,组合得到 5 个完整的 TCP 数据包。
源地址筛选:ip.src == 10.150.187.155
发送 TCP 数据流的数据长度都为0。
总结
某个防护设备更新了 5条 与 cobalt strike 相关的检测规则,导致误报。
没有推测出是哪家威胁防护平台的规则。
告警流量分析:Cobalt Strike(默认实验文)相关推荐
- 2023护网日记,护网工作内容、护网事件、告警流量分析
2023护网日记 一.监控设备 二.工作内容 三.安全事件 1)失陷主机排查 2)后门网站修复 四.告警流量分析 1)信息泄露 2)SQL注入 3)文件上传 4)XSS(跨站脚本) 5)代码执行 今年 ...
- 2022护网日记,护网工作内容、护网事件、告警流量分析
「作者主页」:士别三日wyx 「作者简介」:CSDN top100.阿里云博客专家.华为云享专家.网络安全领域优质创作者 2022护网日记 一.监控设备 二.工作内容 三.安全事件 1)失陷主机排查 ...
- # Cobalt Strike: 使用进程内存解密流量-Part 3
博客系列:Cobalt Strike:流量解密 Cobalt Strike:使用已知的私钥解密流量-Part 1 Cobalt Strike: 使用已知的私钥解密流量 - Part 2 Cobalt ...
- # Cobalt Strike:使用已知的私钥解密流量-Part 2
博客系列:Cobalt Strike:流量解密 Cobalt Strike:使用已知的私钥解密流量-Part 1 Cobalt Strike: 使用已知的私钥解密流量 - Part 2(当前部分) C ...
- Cobalt Strike:使用已知的私钥解密流量 -Part 2
Cobalt Strike:使用已知的私钥解密流量 -Part 2 博客系列:Cobalt Strike:流量解密 Cobalt Strike: 使用已知的私钥解密流量 - Part 2(当前部分) ...
- dns隧道攻击原理及常用工具流量分析
今天看到一个关于Lyceum组织的文章,这个组织擅长使用dns隧道攻击,这种攻击方式还是头一次听说,于是搜集了一些文章来看看. 原文https://www.cnblogs.com/HighnessDr ...
- Cobalt Strike:解密 DNS 流量——第 5 部分
博文系列:Cobalt Strike:解密流量 Cobalt Strike:使用已知私钥解密流量 - 第 1 部分 Cobalt Strike:使用已知私钥解密流量 - 第 2 部分 Cobalt S ...
- TLS配置和流量分析实验
TLS配置和流量分析实验 1)理解 TLS 协议原理: 2)掌握 apache 服务器的 HTTPS 配置方法: 3)掌握 TLS 流量分析方法. https://download.csdn.net/ ...
- 基于流量分析IPS告警误报
目录 前言 实现逻辑 代码设计 效果演示 一些建议 前言 开发这个工具主要还是工作中碰到了一些问题. 问题描述:收到一些数据包,拿过来在IPS设备上测试出现了一些告警.如何判断测试的这些数据包中,有哪 ...
最新文章
- Python程序设计题解【蓝桥杯官网题库】 DAY9-基础练习
- pacman安装ubuntu_Ubuntu如何安装pacman
- 回炉重造-基础规则之类和对象
- php cms word导入,phpcms V9文章编辑器不能按word文档复制过来的段头缩进显示
- 怎样理解js数组中indexOf()的用法与lastIndexOf
- 笔记-项目整体管理-项目管理计划
- 光耦的CTR(Current Transfer Ratio)值概念及计算方法
- LaTeX 报错 Underfull \hbox (badness 10000)
- 李南江 html5笔记,Mr.Woo跟着李南江学习HTML5—项目总结
- 电商“论贱”血拼 传统书店该何去何从
- canvas制作简单表格
- 《Java程序小作业之自动贩卖机》#谭子
- 信息学奥赛一本通 1336 【例3-1】找树根和son(附含解题思路)
- android租车管理系统,基于Android汽车租赁系统设计与实现.doc
- eclipse 项目中搜索资源(类方法,文件名,文件中的字符串)
- Spring学习笔记7_使用JSR 330标准注解(Using JSR 330 Standard Annotations)
- Screenshots of Super Head Go-puzzle of colors
- win10激活 错误代码0x80070424
- 风险管理,未雨绸缪——《代码之殇》读书笔记II
- Spark 是否真的比 MapReduce 技高一筹
热门文章
- Python中的几种乘法np.dot,np.multiply,*
- LC振荡电路以及考虑寄生参数时MOS管开通关断分析
- labelshop更改打印机_如何快速掌握标签打印软件LabelShop中的功能
- Java——继承——Extends
- 每日一课 | 如何用Python编写一个Lisp解释器
- 随机森林 n_estimators参数 max_features参数
- 什么是分布式数据存储
- 若依框架,集成flowable工作流
- 【Java】如何编写、运行一个Java程序
- java乘法逆元与除法取模,关于数论乘法逆元及相关知识点