【追本溯源】蓝队特征样本分析浅谈

admin 2023年2月7日23:50:42评论79 views字数 5784阅读19分16秒阅读模式

【追本溯源】蓝队特征样本分析浅谈

网安教育

培养网络安全人才

技术交流、学习咨询




0X00前言




由于作者的朋友在某业务线的安服部门实习过一段时间,对蓝队安全方向有了强烈的兴趣。朋友对我说:由于现在的安服部门会在不同时期有不同的工作方向,在以往每年的某个时期都会承担一些蓝队的任务。因此,面试官在面试的时候都会考察个人的蓝队思维和应急水平。与朋友交流完后,他说这些话对我启发不小。于是就有了下面这篇文章。大纲如下图所示:

【追本溯源】蓝队特征样本分析浅谈



0X01攻击方式




众所周知,蓝队是指同时防御真正攻击者和红队的内部安全团队。蓝队应该与大多数组织中的标准安全团队区分开来,因为大多数安全运营团队没有时刻警惕攻击的心态,而这才是真正的蓝队的使命和观点。这就是蓝队和应急响应有不太一样的地方,尤其是在某时期蓝队成员激增原因了。

由于蓝队需要时时刻刻的面对红队攻击,并且需要解决掉这些威胁。知己知彼百战百胜,这句话的重要性就体现出来了。下面是红队常见攻击方法的总结和比较(如下表所示)。

【追本溯源】蓝队特征样本分析浅谈

另外再提一句,我们首先可以关注VT沙箱(静态扫描+沙箱运行)、360红雨滴和微步沙箱(较弱)这类的网站或者公众号。我们可以通过样本下载去获取恶意软件样本,并进行逆向分析。



0X02钓鱼类型




Netcat(多用于linux)


Netcat 是一款简单实用的Liunx工具,它使用UDP和TCP协议,因此多用于网络安全中的渗透测试环节。它是一个可靠且方便被其他程序所启用的后台工具,与此同时它也被用作网络的测试工具。所以,使用它你可以轻易的建立任何连接内建有很多实用的工具。

Netcat的内网小尝试(确定内网ip没有开启21端口):由于学习Namp所以难免和Nectcat搭上关系,这不用nc -v命令扫描靶机时后查找资料,发现了一些有意思的事情。事例如下(示例):

【追本溯源】蓝队特征样本分析浅谈


【追本溯源】蓝队特征样本分析浅谈

Flash插件(自解压)


我们需要知道是什么Flash?答:Adobe Flash自商业互联网诞生以来就已经存在。万维网的第一个版本是建立在一个非常不起眼的超文本标记语言 (HTML) 的基础上的,它无法以动画或脚本的方式做任何事情。Adobe 开发了Shockwave Flash,它变成了简单的Flash在后来的生活中,这为开发人员提供了一种将丰富内容带入静态网络的方法。Flash用于播放电影、创建在线视频游戏和显示烦人的广告。到 现在,Flash已安装在全球数百万台台式计算机上。这给黑客攻击提供了有一个好方法。

由于某时期的目标大多还是Win7和Win sever 2008版本,并且Flash当时还是较火爆的软件,于是攻击者通过构造XSS漏洞,弹框出"软件需要更新,请下载安装包",诱导人们点击恶意文件下载链接。由于搭配自解压,只要下载就会自己解压运行,攻击成功率很高。附上国外网站上的攻击事列图(如下图所示):


【追本溯源】蓝队特征样本分析浅谈


宏文件

2017 年 10 月 10 日,卡巴斯基实验室的高级漏洞利用防御系统发现了一种新的 Adobe Flash 零日漏洞利用,该漏洞被用于攻击我们的客户。该漏洞是通过 Microsoft Office 文档传递的,最终有效负载是最新版本的 FinSpy 恶意软件。我们已将此错误报告给 Adobe,Adobe 将其分配为CVE-2017-11292,并于今天早些时候发布了补丁(如下图所示):

【追本溯源】蓝队特征样本分析浅谈


到目前为止,这种类型的攻击,虽然出现的攻击的数量较少,而且针对性很强,在前几年非常流行。对有效负载的分析使分析人员能够自信地将此攻击与跟踪为BlackOasis的攻击者联系起来。并且BlackOasis 还对FireEye于 2017 年 9 月发现的另一个零日漏洞 (CVE-2017-8759) 负责。当前攻击中使用的 FinSpy 有效负载 (CVE-2017-11292) 共享相同的命令和控制C2服务器作为与 FireEye 发现的 CVE-2017-8759 一起使用的有效负载。


EXE.PDF.EXE


我们可以参考这位师傅写的一篇文章(链接:https://blog.csdn.net/qq_44874645/article/details/118516254);但是我们这里需要注意如果为了防止exe后缀被发现我们可以使用超级长的"空格"然后达到一个隐藏.exe后缀的目的。

补充:但是这个建议在钓鱼的时候使用,效果较好!



0X03样本规则检测




特征码


应急响应人员可以使用的最有用的技术之一是散列对比法。散列算法是一种单向函数,它为每个文件生成唯一的校验和,很像文件的指纹。也就是说,通过该算法的每个唯一文件都将具有唯一的哈希值,即使两个文件之间只有一位不同。例如,在上一章中,我们使用SHA256哈希来验证从VirtualBox下载的文件是否合法。

在我写的《关于特征码查杀的回望与分析》(链接:https://www.freebuf.com/articles/system/355027.html)分析中,讲述了一些敏感的文件名和DLL名的哈希值也可以当做特征码去进行比对的方法。而且不仅是敏感字符,比如一些常见的Loader(加载器)如果其中出现print("xxcode!") 的字符串也可以当做是特征码,然后由杀软上传到云端,被VT检测定义为XXX家族木马变种。


编译残留


众所周知Go写的Loader编译的特性(即:使用go build 编译会有信息残留)会存在eg:debug信息、路径、用户名、混淆Go的包名.....

通过go build编译由导入路径命名的包及其依赖项,但不安装结果。如果 build 的参数是来自单个目录的 .go 文件列表,则 build 将它们视为指定单个包的源文件列表。编译包时,构建会忽略以“_test.go”结尾的文件。

当编译单个主包时,build 将生成的可执行文件写入以第一个源文件命名的输出文件(go build ed.go rx.go写入ed' 或 ed.exe)或源代码目录(go build unix/sam写入sam或 sam.exe),编写 Windows 可执行文件时会加“.exe”后缀。编译多个包或单个非主包时,build 编译包但丢弃生成的对象,仅用作是否可以构建包的检查。

如果是需要编写Shellcode,尽量使用虚拟机编译并且将用户改为Admin这种常见的用户以免暴露个人信息。与此同时我们也需要注意修改编译的残留,比如:我们可以使用-ldflags "-w -s"调试去除敏感信息;go-strip去除路径信息;利用garble混淆Go的包名(项目链接:https://github.com/burrowers/garble)等。为了更好的进行免杀,我们一般进行以下编译操作:

1gobuild-ldflags="-w -s -H windowsgui"-xx.exe


eg:基于 Golang 的恶意软件在APT组织中越来越受欢迎 。我们可以看到一些APT 组织转移到Go平台。重要的原因原因有:1.与 C++ 或 C# 编译的二进制文件相比,Go二进制文件更难分析和逆向工程;2. Go 在跨平台支持和编译方面也非常灵活。恶意软件作者能够使用适用于多个平台(例如 Windows 和 *NIX 操作系统)的通用代码库来编译代码。与此同也有相应的规则,如下图所示:

【追本溯源】蓝队特征样本分析浅谈


C2工具特征

C2工具的开发难度大家都是知道的,所以二开C2就是大多数人较好的选择。比如开发Sleepmask....这些Kit套件,或者去重写Cobalt Strike中Beacon的源码。这可以极大的节省红队攻击的时间成本与代码成本。并且这类二开的C2实战适用性一点都不比Cobalt Strike这种商用软件差。

配置信息:主要对比默认配置的profile和配置修改后的profile。(提示:主要变化,http-get、http-post中把信息隐藏在jquery*.js中)我们可以将CobaltStrike.jar解压,后进行class的更改。


HTTP指令特征分析


心跳包特征:请求的url为/jquery-3.3.1.min.js,返回包的值为5543,返回包到下一个请求包之间的时间为心跳时间。


Sleep特征:请求的url为/jquery-3.3.1.min.js,返回包大小为5607,包含指令数据。执行完之后,下一个请求包按照新的时间发送心跳包。


Shell特征:这里的shell指令,对应“shell whoami”,其请求的url为/jquery-3.3.1.min.js,返回包大小为5628,包含指令数据。下一个包发送POST请求,url为/jquery-3.3.2.min.js,body部分包含指令执行的结果,大小为96。另外,接收到指令到执行完指令,并返回结果,时间间隔为0.1s。


File特征:示例中的流量包,包含两个指令内容,第一个指令其特征为,请求的url为/jquery-3.3.1.min.js,返回包大小为5607。随后,间隔0.01s后,发送POST请求,url为/jquery-3.3.2.min.js,body部分包含指令的结果,值为395。第二个指令其特征为,请求的url为/jquery-3.3.1.min.js,返回包大小为5607。随后,间隔0.01s后,发送POST请求,url为/jquery-3.3.2.min.js,body部分包含指令的结果,大小为75。


Hashdump特征:请求的url为/jquery-3.3.1.min.js,返回包大小为115580,包含指令数据,以及用于进行hashdump的dll。下一个包发送POST请求,url为/jquery-3.3.2.min.js,body部分包含指令执行的结果,大小为288。另外,接收到指令到执行完指令,并返回结果,时间间隔为1s。


Screenshot特征:请求的url为/jquery-3.3.1.min.js,返回包大小为268497,包含指令数据,以及用于进行screenshot的dll。下一个包发送POST请求,url为/jquery-3.3.2.min.js,body部分包含指令执行的结果,大小为304566。另外,接收到指令到执行完指令,并返回结果,时间间隔为30s左右。



0X04编译器残留分析




编译残留分析

语言类(c、go...),具体效果可以看上面列举的go语言的编译残留问题。下面让大家知道C语言开发怎么去除编译残留(如下图所示):

【追本溯源】蓝队特征样本分析浅谈


文件加壳

首先我们通过查壳去分析壳的特征,然后准备相应的脱壳工具进行脱壳。常见的UPX、穿山甲.....我们通过PE工具去看一看入口函数。如果需要查看敏感函数,可以用IDA分析一下或者X64dbg调试确定文件编译日期、字符串等....


文件签名

pfx证书签名

我们可以使用以下命令使用存储在个人信息Exchange (PFX) 文件中的证书对名为MyControl.exe的文件进行签名:

SignToolsign/fMyCert.pfxMyControl.exe

以下命令使用存储在受密码保护的 PFX 文件中的证书对文件进行签名:

SignToolsign/fMyCert.pfx/pMyPasswordMyControl.exe

EV签名

EV代码签名证书除了验证企业的基本信息、税务信息外,还对企业的经营地址、申请人身份进行审查,区别于标准代码签名的重要特点是支持Windows 10内核驱动文件签名和消除SmartScreen筛选器安全提醒,此外EV代码签名针对内核模式的驱动文件需要进行微软的交叉签名。

【追本溯源】蓝队特征样本分析浅谈




0X05结尾




其实,如果我们认真思考的话,我们会发现上面那些检测的思路和方法,有很多都是简单学习就可以简单上手的,希望这篇文章可以拓宽师傅们的恶意文件检测的思路和方法。最后我的总结就到此为止啦,希望对大家以后的学习和工作有所帮助。同时,欢迎大家指出不足。


参考链接:

 1https://securelist.com/blackoasis-apt-and-new-targeted-attacks-leveraging-zero-day-exploit/82732/
2
3https://heimdalsecurity.com/blog/adobe-flash-vulnerabilities-security-risks/
4
5https://www.vusec.net/projects/netcat/
6
7https://cofense.com/knowledge-center/signs-of-a-phishing-email/
8
9https://blog.csdn.net/qq_44874645/article/details/118516254
10
11https://www.techtarget.com/searchsecurity/feature/Top-static-malware-analysis-techniques-for-beginners
12
13https://www.securonix.com/blog/golang-attack-campaign-gowebbfuscator-leverages-office-macros-and-james-webb-images-to-infect-systems/
14
15https://learn.microsoft.com/zh-cn/windows/win32/seccrypto/using-signtool-to-sign-a-file


END
【追本溯源】蓝队特征样本分析浅谈

文:面包and牛奶 转自FreeBuf.COM

原文链接:https://www.freebuf.com/articles/web/355471.html

版权声明:著作权归作者所有。如有侵权请联系删除


开源聚合网安训练营

战疫期间,开源聚合网络安全基础班、实战班线上全面开启,学网络安全技术、升职加薪……有兴趣的可以加入开源聚合网安大家庭,一起学习、一起成长,考证书求职加分、升级加薪,有兴趣的可以咨询客服小姐姐哦!

【追本溯源】蓝队特征样本分析浅谈

加QQ(1005989737)找小姐姐私聊哦



精选文章


环境搭建
Python
学员专辑
信息收集
CNVD
安全求职
渗透实战
CVE
高薪揭秘
渗透测试工具
网络安全行业
神秘大礼包
基础教程
我们贴心备至
用户答疑
 QQ在线客服
加入社群
QQ+微信等着你

【追本溯源】蓝队特征样本分析浅谈


我就知道你“在看”
【追本溯源】蓝队特征样本分析浅谈


原文始发于微信公众号(开源聚合网络空间安全研究院):【追本溯源】蓝队特征样本分析浅谈

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年2月7日23:50:42
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【追本溯源】蓝队特征样本分析浅谈https://cn-sec.com/archives/1541298.html

发表评论

匿名网友 填写信息