一次从蜜罐数据到攻击手法的分析历程

0x01.前言

这篇文章也算自己在数字实习做的一点学习记录吧。第一次完整的接触蜜罐,从理解蜜罐的架构到蜜罐日志的数据挖掘最后再到有用数据的输出,整个流程说来简单却很难的,至少目前数据挖掘这块还需要走的路很长

不过总的来说,确实学到了很多,回头发现以前单纯的做web,眼界确实太狭窄了,来这儿实习也许个人能力目前提高得不多,但是至少我能看得更远了。

0x02.攻击详情分析

具体蜜罐的部署架构可以参看我们之前的文章。我这里就不做过多介绍,直接进入正题。

近日来在我们的蜜罐日志中捕获到这样一条攻击信息

从日志上可以看到,一个ip为A的攻击者通过ssh爆破(前面日志可以看到,由于篇幅未截图)登录到了我们蜜罐的ssh_shell,通过执行系统命令从另一个ip为B的站点下载并执行了名为2sh的样本文件。

但当我访问ipB时,发现下载样本的目录已经被删除,但是web服务还存在。

这看上去是一个正常的web登录界面,但当点开右上角的demo tool的工具栏后,我发现了发现里面有很多有趣的功能:

从名字可以看到有模拟木马,插入恶意脚本,通过xhr传输用户输入的数据,劫持,键盘记录等等功能。毫无疑问这明显不是一个正常的web界面,我猜想它是一个黑客的蜜罐或者钓鱼页面,也就是说可能是攻击者ipA专门存放恶意文件的站点。

但当我拿到着这个站点的权限之后,发现这是一台linux的主机,并且存在一个问题:

可以看到IpB的服务器上在51754端口运行着一个perl文件,通过试验我发现这是一个正向连接的后门,并且在web目录下同样发现了多个php的后门文件。

种种痕迹表明ipB并不像我们猜想的那样是攻击者的真正的服务器,而只是攻击者通过后门控制的一台跳板服务器。于是我们把目标转向了剩下的ipA — 攻击者的来源ip。

运气不错,在测试ipA时,发现了ftp存在弱口令,上去翻了翻发现居然和web服务目录为同一目录, 于是直接写入shell。拿到shell后发现这同样是一台linux的主机,并且存在多个web服务分别部署在不同的端口,每个web对应着一个二级域名。

通过查看域名的whois信息以及google等手段收集该域名信息,我发现这个站点是国外一个提供和分享各种下载资源的站点,类似于磁力链接分享的站点,是一个正常的站点。

利用google翻译后

同样在一些站点的配置文件中这点也得到证实:

配置文件中存放着国外多个类似云盘的云存储服务的接口authkey或者账号密码,我选择其中一个登陆查看,但发现其中没有存放任何恶意的文件,应该是用做存放共享的下载资源。

那么也就是说这个站点可能也是真正攻击者的跳板机之一,同样也就意味着这台主机上会有真正攻击者留下的痕迹。于是顺着这思路我们继续深入,在home目录我们发现了一个名字不正常的文件夹xxxx,并且所有者为root。

但目前我们没有权限访问该文件夹,所以只有提权后打包下载下来。下载下来后发现确实是真正攻击者留下的,其目录结构如下:

➜  Desktop tree xxxx 
xxxx
├── 01libs.php.vob
├── 1490192362.txt
├── 1x.php.xxxjpg
├── 2x.inc.php.php.j
├── 2x.jpg
├── 2x.php
├── derp.pl
├── go.pl
├── gr
├── kblockd
├── k.pl
├── __MACOSX
│   ├── Photo.scr
│   └── pic
│       └── Photo.scr
├── -O
├── ok.pl
├── Photo.scr
├── pic
│   ├── 02libs.php.vob
│   ├── 11x.php.xxxjpg
│   ├── 3x.inc.php.php.j
│   ├── Photo.scr
│   ├── pic.jpg
│   ├── pic.php
│   ├── revslider
│   │   ├── Photo.scr
│   │   └── pic.php
│   └── showbiz
│       ├── Photo.scr
│       └── pic.php
├── revslider.zip
├── showbiz.zip
├── site.txt
├── testje
├── udev
├── vyattad
├── xsh
│   ├── 01libs.php.vob
│   ├── 1x.php.xxxjpg
│   ├── 2x.inc.php.php.j
│   ├── 2x.jpg
│   ├── 2x.php
│   ├── revslider
│   │   └── pic.php
│   └── showbiz
│       └── pic.php
└── yam

其中存在pl,php等多种语言后门文件,也存在一些恶意样本文件,应该是攻击者的后门文件集合(由于此次是攻击手法分析,不对各种恶意样本做太多分析)。
其中的一个Php后门:

Photo.scr恶意样本 VirusTotal的检测结果:

其中site.txt中存在多条记录,疑似ssh账号密码。

由此可见ipA主机同样为攻击者的跳板机之一。

0x03.总结

至此日志记录中两个ip已经分析完成,我们回头梳理下这次攻击,一个攻击者在拿下了一个提供下载资源的站点之后作为跳板机A,通过A攻击了我们的蜜罐主机,并在蜜罐上从一个同样被攻击者控制的跳板机B上下载恶意文件并执行,达到进一步控制我们蜜罐的目的。也就是说真正的攻击者攻击我们的蜜罐相当于挂了多层代理以及一个迷惑性下载ipB,可以看出攻击者对于隐藏自己还是特别注意的,我相信在拿下我们的蜜罐主机之后,蜜罐又会变成一个新的跳板机C去攻击别人。

在我们蜜罐数据中,类似这样的日志记录还有很多,以上只是较为典型的一种,我们还可以从中挖掘出更多的有意思的攻击手法,最终根据攻击者的手法制定相应规则达到自动化识别提取攻击者信息,形成新的威胁情报输出。

同样坑还很多,规则在面对已知效果确实很好,但是面对未知或者是面对我们没有分析到的日志,没发现的攻击特征,也没有办法去制定规则去筛选日志。当蜜罐日志数据量达到一定程度,也不可能再去人工提取添加规则,所以大家也总是将数据挖掘和机器学习放在了一起,当然这顺其自然成为了我接下来的学习计划之一。

一次从蜜罐数据到攻击手法的分析历程》有1个想法

发表评论

电子邮件地址不会被公开。 必填项已用*标注