微信号:Btestsky

介绍:北京测试空间微信公众平台,关注测试,服务学员,传播价值,分享成长!

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

2016-06-22 18:03 北京测试空间

背景

近期腾讯反病毒实验室在追踪一个知名黑客组织时,发现了一款纯脚本远程控制木马。与传统的远控木马不同,这款木马手法新颖,全程没有释放任何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行为

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

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

1.js行为

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

2.js行为

1、访问C&C,附带参数c=2,接收javascript脚本并执行

2、循环访问 http://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 则进行以下命令分发:

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

6、循环以上4-6步骤,不断进行远控命令分发

~f.js行为

1、从运行参数中获取子命令号,根据子命令号进行命令分发:

~t.js行为

从运行参数中获取中获取文件路径、命令,执行

结语

随着安全软件监控、查杀能力的不断提升,许多木马开始不以传统的PE文件为传播载体,传统上觉得安全的文件都有可能被木马用来作恶,以逃避安全软件的监控和查杀,除了传统的exe、scr、pif、com、bat等扩展名文件不要轻易打开外,对.js、.vbs、.vbe、.lnk等类型的扩展名文件也要格外小心。

----------✂-------------------------------------

如果您觉得文章不错,请点击右上角按钮分享到您的朋友圈!

点击阅读原文,访问北京测试空间IT实训基地微官网!

 
北京测试空间 更多文章 雷军:进取之心,顺势而为 【职场】如何做个好员工? 2014,你靠什么在公司立足! 职场上如何营销自我的10个金点子 测试人员的核心价值是什么?
猜您喜欢 关于有效的性能调优的一些建议 9点1氪:宝马英特尔合作,2021年前生产无人驾驶汽车;微软收购LinkedIn的成本被迫提高47亿美元 “图片找茬”的神外挂 DiffImg 只会写代码,不如去种田 小心!你已工作过度的十大迹象