您的位置:首页 > Web前端 > JavaScript

一款用于定向攻击的JavaScript远控木马分析

2016-06-29 00:00 459 查看
近期腾讯反病毒实验室在追踪一知名黑客组织时,发现了一款纯脚本远程控制木马。与传统的远控木马不同,这款木马手法新颖,全程没有释放任何PE文件,通过脚本文件实现全部远控功能,如信息获取、网络访问、遍历目录和上传下载文件等等。


他们手法确实令人耳目一新,但网上关于这类木马的资料少之又少。该木马主要有以下特点:
1.以lnk文件为传播载体,主要功能通过javascript脚本实现,全程没有释放任何PE文件。
2.木马实现了简单的远程控制,分析过程中服务器返回的脚本主要实现了文件管理功能(遍历目录、上传文件、下载文件、执行文件),但理论上服务器可返回任意脚本,实现各种功能。
一、 样本概述
  木马传播母体是一个双后缀的lnk文件,且大小只有2KB,由于lnk文件在windows下不会显示其.lnk的后缀名,只是在图标的左下角多了一个小箭头,使用户看起来误以为是doc文件,文件极具欺骗性,如下图:

(图1. 母体文件)
二、 流程图

三、 详细分析
lnk文件行为:
1.右键打开母体属性对话框,如下图,得到目标命令行。

2.lnk文件的功能是创建%temp%\x文件,并写入脚本、使用wScript执行创建的文件。

3.通过此种方式是用户双击一个lnk文件时执行一段恶意脚本的攻击大部分安全软件都无法检测和拦截,通过virustotal扫描发现,仅有不到10%的杀毒引擎能够识别此类攻击。

x行为:
访问C&C,附带参数c=1,接收返回的脚本并执行。

接收到脚本功能是在%temp%目录下创建{rand}.js(称1.js)、{rand}.js(称2.js)两个脚本文件,并使用执行创建的两个脚本文件。

1.js行为:
下载一个伪装文件到本地存储为%temp%\Korea_EU_FTA.doc,并打开,此伪装相当隐蔽,用户基本无感。

2.js行为:
1)访问C&C,附带参数c=2,接收javascript脚本并执行

2)循环访问hxxp://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/aes.js,直到成功获取到该文件为止,该js文件是aes加密脚本,之后木马将使用此js脚本代码进行网络数据加密。

3)获取本机的计算机名、用户名、IP地址等信息,发送到C&C。

4)读取C&C返回的命令,如果返回的数据类型是text/plain则进行以下命令分发:
命令编号:00
结束循环退出程序
命令编号:0
继续下一轮循环,接收下一个命令
命令编号:1
在%temp%目录下创建~f.js并执行,将C&C地址 、AES密钥,命令号等信息传递给它,该文件主要用于文件管理
命令编号:2
在%temp%目录下创建~t.js并执行,将C&C地址 、AES密钥,命令号等信息传递给它,该文件主要用于执行命令/文件

5)如果不是text/plain,则将接收到的数据写入到指定的文件中,文件路径在http头的upload字段中,文件内容在responseBody中。

6)循环以上4- 5步骤,不断进行远控命令分发。
~f.js行为:
从运行参数中获取子命令号,根据子命令号进行命令分发:
命令编号:0
获取计算机所有磁盘驱动器的编号、大小,剩余空间等信息
命令编号:1
返回指定目录中的所有文件信息,目录名称从子命令中获取,由控制端传来。
命令编号:2
上传指定文件,文件路径从子命令中获取,由控制端传过来。

~t.js行为:
从运行参数中获取中获取文件路径、命令,执行。

总结
  随着安全软件监控、查杀能力的不断提升,许多木马开始不以传统的PE文件为传播载体,传统上觉得安全的文件都有可能被木马用来作恶,以逃避安全软件的监控和查杀,除了传统的exe、scr、pif、com、bat等扩展名文件不要轻易打开外,对.js、.vbs、.vbe、.lnk等类型的扩展名文件也要格外小心。
上海网络公司|网站制作|网站设计|网站建设|上海网站设计|上海网站制作|微网站建设|上海微网站建设|上海微网站制作|上海网站建设上海万脑网络科技有限公司
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: