时间:2016-10-14来源:本站原创作者:佚名
揭秘用“世界上最好的编程语言”制作的敲诈 背景

你永远叫不醒一个装睡的人。但,快递小哥可以!

虽说是一句戏言,但确实多少反映出了快递在大家心中的重要性。如果你收到一个带有快递公司发来的电子邮件通知,你会不会也希望快点打开看看是不是哪个朋友给你寄了什么东西等着你去取呢?最近我们就收到了这样的一个带有“快递单号”的电子邮件附件。唯一有些水土不服的就是——在中国用FedEx的确实并不很多……大写的PITY……

木马起始——FedEx_ID_.doc.js

这个所谓的doc文档,其实是一个javascript脚本,而脚本的内容……好乱……

凌乱的javascript脚本代码

经过简单的解密和格式整理,给大家呈现了一个比较漂亮的脚本格式如下:

整理后的javascript脚本代码

脚本主要功能就是循环下载并执行木马。脚本中供提供了5个域名供下载(域名作用为备份,如果前面的域名可以下载,则不再尝试后面的域名):

脚本通过给URL传递不同参数的方式,获取不同的文件(返回状态码且返回内容大于字节即判断为下载成功)。

最终木马获取如下文件(p.s.根据后续实测,这五个文件仍在服务端不定期更新,本文仅描述文章撰写时下载到的样本行为):

如上表所示,脚本下载到本地的5个文件实际上被分成了3组:a1.exe和a2.exe各自独立运行;a.exe、php4ts.dll和a.php则同为一组。必须三个文件同时存在,脚本才会执行该木马,而且还会再执行完第三组之后打扫一下战场——删除掉木马文件并且修改注册表值用于关联被加密的文件:

根据VT的扫描结果来看,54家全球主流杀软中有12款产品可以检出该木马:

PHP木马分析

其实这个木马最先引起我们兴趣的是后面下载的这三个一组的文件。之所以引起我们的兴趣,是因为根据我们的记录:a.exe和php4ts.dll其实都是人畜无害的合法程序。实际上,a.exe是PHPThreadSafeCGI(PHP线程安全通用网管接口),而php4ts.dll则是这个接口程序运行所必须导入的一个动态库文件:

把话说的通俗点,这两个程序其实就是一个php脚本的解释器。他们被下载下来的唯一目的——就是让a.php可以执行。所以就让我们看看这个a.php吧:

代码逻辑并不复杂,脚本会遍历C盘到Z盘的所有盘符下的文件,并跳过含有以下字符串的目录:

\winnt\boot\system\windows\tmp\temp\program\appdata\application\roaming\msoffice\temporary\cacherecycle

查找以下这些扩展名的文件:

zip

rar

r00

r01

r02

r03

7z

tar

gz

gzip

arc

arj

bz

bz2

bza

bzip

bzip2

ice

xls

xlsx

doc

docx

pdf

djvu

fb2

rtf

ppt

pptx

pps

sxi

odm

odt

mpp

ssh

pub

gpg

pgp

kdb

kdbx

als

aup

cpr

npr

cpp

bas

asm

cs

php

pas

class

py

pl

h

vb

vcproj

vbproj

java

bak

backup

mdb

accdb

mdf

odb

wdb

csv

tsv

sql

psd

eps

cdr

cpt

indd

dwg

ai

svg

max

skp

scad

cad

3ds

blend

lwo

lws

mb

slddrw

sldasm

sldprt

u3d

jpg

jpeg

tiff

tif

raw

avi

mpg

mp4

m4v

mpeg

mpe

wmf

wmv

veg

mov

3gp

flv

mkv

vob

rm

mp3

wav

asf

wma

m3u

midi

ogg

mid

vdi

vmdk

vhd

dsk

img

iso

打开每一个符合扩展名要求的文件,读取前字节并和密钥做循环异或加密。加密完成后再将修改后的文件加上一个.crypted扩展名——万事大吉。

只是让我们很疑惑的是——虽然php这世界上最好的语言(好吧,这只是个梗),但木马作者是如何用php在这么一段并不算长的代码中实现不对称加密的敲诈者代码的?

细读代码之后恍然大悟——并没有实现……这段代码的加密方式采用了对称加密算法,准确的说是循环异或加密。更加“人道主义”的是——这个php的加密代码其实是“两用”的,只要修改脚本中的一个参数,整个脚本立刻成为了解密脚本。可以直接将加密的文档解密回去:

所以说世界已经这么乱了,不对称加密的敲诈者满天飞的今天,对称加密敲诈者能不能就不要来添乱了?

当然,也并不是说这个脚本就人畜无害了——对称加密没有密钥想解开依然很麻烦,虽然我们这里拿到密钥了,但上面已经说了:木马作者再服务端依然持续更新着木马的内容,并且木马运行后会自删除,所以说虽然是对称加密,但依然有可能因为找不到加密时的密钥导致依然很难解开文件(难,但并非无解)……

但这都不是重点,重点是木马在加密完文件之后给出的敲诈信息:

相对于那些动辄两三个比特币的敲诈者木马来说,0.个比特币虽然有零有整的程度令人发指,但确实也算是价钱厚道了。但你所谓的“RSA-”是什么鬼?明明就是个简单的循环异或加密好么!不要假装自己是高大上的不对称加密好么!WTF……

POWERSHELL木马分析

然后我们再来说说两个独立运行的powershell木马。虽然a1.exe与a2.exe是各自独立运行的,但因为他们的行为基本相同,所以我们这里合并为一个来做统一说明。

样本首先会执行注入功能:

之后对线程做恢复以便执行注入后的代码:

完成后,恶意代码会检测机器环境——对不知处powershell的系统安装微软的KB补丁(补丁相关说明:







































北京治疗白癜风最好的中医院
北京哪个治白癜风医院好

转载请注明原文网址:http://www.gzdatangtv.com/bcyytx/1185.html

------分隔线----------------------------