使用NB Exploit Kit攻击的APT样本分析

1、起因

近期,安恒工程师在某网络中部署的APT威胁分析设备中发现一条高危告警,该告警包含了较多可疑行为,包含在沙箱运行环境中进行增加自启动、创建网络套接字连接、读取网络文件、收集磁盘信息、获取当前用户名信息等敏感内容,并通过对原始报文分析发现该样本的下载链接也存在较大的可疑性,经过对告警内容的初步分析,基本可以推测可能是一种网页溢出攻击(也叫挂马攻击):

2、分析

分析感染流程

然后,进一步 使用工具下载告警的网页,分析“index.htm”发现其使用了RES协议(“res://”)进行本地文件探测。

探测的目标包括: 360 金山 卡巴斯基

当用户电脑中并未安装上述软件时,浏览器会加载一个叫"win.html"的页面

分析"win.html"

下载后发现它的代码全被混淆加密,看着头痛。

格式化处理一下代码,分析发现它为了防止爬虫抓取该页面,对userAgent进行了判断处理,以及为了防止多次感染,对cookies值进行特定设置。

这是比较经典的Exploitkit(溢出工具包)里面常用手法,并且在代码的中发现了可疑"NB VIP"字符串,推测可能是NB 或者是CKExploit kit。

继续分析发现,它包含有针对不同版本的java的攻击,在其中的一个jar的调用中发现了非常有名的拼音”woyouyizhixiaomaol”,”conglaiyebuqi”。即“我有一只小毛驴我从来也不骑”

以及反编译jar包中也包含了类似信息:

另外还有针对Flash、Silverligh、IE各个版本的不同Payload攻击,但是笔者在下载时链接无效,不能正常下载。

分析整个代码流程,笔者做了一个流程图:

最后溢出成功后会下载叫“calc.exe”的恶意文件并运行。

在虚拟机中使用浏览器打开恶意页面,并用抓包工具进行抓包,重现了整个过程:

但是抓包的结果显示它还下载了其他的exe程序,所以笔者对下载的程序进行分析。

恶意程序calc.exe分析

分析发现calc.exe主要的功能是使用wmi技术收集用户电脑信息,并发送远程服务器进行统计

读取远程配置文件,下载配置文件中恶意程序并运行。

这个过程和我们抓包看见的结果一样。

分析iexplore.exe

这个木马运行后,它会在内存解密出一段加密url,其实ip就是恶意域名解析后的ip地址

备注:在网址“<|>”之后都是exe程序,它们每个存在服务器上。

接着它会每秒钟检索进程,判断是否存在和解密数据中一样的程序,如果存在,便拼接url后下载程序并运行。即:

url中的程序都是各种游戏的盗号木马。总类比较多,大概有40多个,基本都加壳处理,且每个恶意程序运行后还会释放文件。

盗号的方式各种各样,这里拿恶意的QQ.exe简单程序举例。

假的QQ.exe运行后会关闭正在运行的qq,并从百度图片下载一张伪装的QQ登入截图

通过创建假的qq登入节目进行欺骗攻击

最后把用户输入的qq号和密码发送到如下恶意地址:http://14.***.***.227:8***/xx/fen/ly01/lin.asp

分析smss.exe

它是一个vb的程序,运行后它会收集用户电脑信息,并从链接某mssql数据库,使用sql语句读取远程服务器数据(url),并下载运行。

由于程序硬编码了的用户名和密码,笔者使用工具成功登入了这台数据库服务器:

数据库里存的数据是恶意url和统计url,这样与我们分析的结果相符合。

总结

经过安恒研究团队发现所有样本都存在大量中文编码可以肯定是一起国内团伙所为。在APT攻击趋势越来越普及化的今天,当前网络中面临大量的复杂安全威胁,比如一些新型恶意代码溢出等,这些威胁对于传统的防火墙、杀毒软件都很难有效识别,因此必须采用专用的APT威胁分析产品来弥补传统安全产品的缺陷,及时感知和分析当前网络中存在的各种新型威胁。

使用NB Exploit Kit攻击的APT样本分析——直接看流程图,就是网页挂马,利用java和flash等漏洞来在你主机安装和运行恶意软件的更多相关文章

  1. RIG exploit kit:恶意活动分析报告——像大多数exploit kit一样,RIG会用被黑的网站和恶意广告进行流量分发

    RIG exploit kit:恶意活动分析报告 from:https://www.freebuf.com/articles/web/110835.html 在过去的几周里,我们曾撰文讨论过Neutr ...

  2. MS Office CVE-2015-1641 恶意 Exploit 样本分析

    MS Office CVE-2015-1641 恶意 Exploit 样本分析 在对最近的一个恶意 MS Office 文档样本进行分析时,我们发现了一些有趣的特性.这个文档利用 CVE-2015-1 ...

  3. Exploit Kit——hacker入侵web,某iframe中将加载RIG EK登录页面,最终下载并执行Monero矿工

    RIG Exploit Kit使用PROPagate注入技术传播Monero Miner from:https://www.4hou.com/technology/12310.html 导语:Fire ...

  4. Spartan Exploit Kit分析

    之前都是调试flash的漏洞,相关的样本接触较少,碰巧看到一篇不错的分析,尝试了一下,留个记录. 调试flasher样本一般建议使用调试版的flash player,在调试版本下可以输出swf文件运行 ...

  5. 孟加拉央行SWIFT攻击事件恶意木马分析(转)

    第一章 分析概述 该恶意木马样本为运行于winodws平台上的PE文件(名称:evtdiag.exe).文件大小为64KB,编译时间是2016年2月5日. 经分析,该样本为定制的攻击SWIFT客户端程 ...

  6. 一个DOS攻击木马的详细分析过程

    一个DOS攻击木马的详细分析过程 0×01 起因 网路流量里发现了大量的的1.exe的文件,而且一直在持续,第一感觉就像是一个木马程序,而且每个1.exe的MD5都不一样,对比发现只有几个字节不一样( ...

  7. ocky勒索软件恶意样本分析1

    locky勒索软件恶意样本分析1 1 locky勒索软件构成概述 前些时期爆发的Locky勒索软件病毒这边也拿到了一个样本,简要做如下分析.样本主要包含三个程序: A xx.js文件:Jscript脚 ...

  8. 利用foo函数的Bof漏洞攻击:构造攻击字符串

    利用foo函数的Bof漏洞攻击:构造攻击字符串 一.基础知识储备 objdump反汇编指令.gdb函数调试运行.Perl语言.|管道符 二.实验步骤 1. 通过反汇编了解程序功能及代码 ①反汇编查看文 ...

  9. ocky勒索软件恶意样本分析2

    locky勒索软件恶意样本分析2 阿尔法实验室陈峰峰.胡进 前言 随着安全知识的普及,公民安全意识普遍提高了,恶意代码传播已经不局限于exe程序了,Locky敲诈者病毒就是其中之一,Locky敲诈者使 ...

随机推荐

  1. Spring Boot 构造器参数绑定,越来越强大了!

    在之前的文章:Spring Boot读取配置的几种方式,我介绍到 Spring Boot 中基于 Java Bean 的参数绑定,在一个 Java Bean 类上用 @ConfigurationPro ...

  2. 【Gamma阶段】第五次Scrum Meeting

    [Gamma阶段]第五次Scrum Meeting 每日任务内容 今日工作任务 明日待完成任务 配合前端调整评论页面的样式 课程列表页针对移动端进行调整 戴荣 Gamma阶段后测试点样例编写 移除部分 ...

  3. pytest 学习笔记一 入门篇

    前言 之前做自动化测试的时候,用的测试框架为Python自带的unittest框架,随着工作的深入,发现了另外一个框架就是pytest (官方地址文档http://www.pytest.org/en/ ...

  4. 【IntelliJ IDEA学习之七】maven专题

    版本:IntelliJIDEA2018.1.4 一.maven全局设置 设置Runner 运行VM参数:-Xms128m -Xmx512m -Duser.language=zh -Dfile.enco ...

  5. jquery如何遍历table,并对table里的某一个单元格进行操作

    1.如何根据每一行的某一列的值进行比较或其他操作,进而修改另一列的值或属性. $("#table_id tbody tr").each(function(){ var a = $( ...

  6. [转帖]来聊聊,华为与H3C(华三)的前世今生!

    本篇,是以真实事件改编,将以故事篇的方式呈现出来. 本故事将分为两个篇幅讲述. 在中国的网络通信设备市场,有两个华字辈的选手,一名叫“华为技术有限公司”,另一名叫“杭州华三通信技术有限公司”. 这两个 ...

  7. python面试题_01

    前言 现在面试测试岗位,一般会要求熟悉一门语言(python/java),为了考验求职者的基本功,一般会出2个笔试题,这些题目一般不难,主要考察基本功.要是给你一台电脑,在编辑器里面边写边调试,没多大 ...

  8. Prometheus监控学习笔记之Grafana用户权限分组

    Grafana有账户分权和管理功能,不过和一般的账户分权管理操作不一样.Grafana通过admin账户建立organization,在不通的org内配置数据源和用户,用户隶属于不通的org,只能看到 ...

  9. Java自学-基本变量类型

    Java中的基本变量类型 一个变量的类型,决定了该变量可以包含什么样的值. Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字. 这八种基本类型分别是: 整型 (4种) 字符型 (1 ...

  10. 基于OpenGL三维软件开发

    实验原理: OpenGL在MFC下编程原理---- Windows操作系统对OpenGL的支持 在Windows下用GDI作图必须通过设备上下文(DeviceContext简写DC)调用相应的函数:用 ...