OpenVAS,即开放式漏洞评估系统,是一个用于评估目标漏洞的杰出框架。功能十分强大,最重要的是,它是“开源”的——就是免费的意思啦~

它与著名的Nessus“本是同根生”,在Nessus商业化之后仍然坚持开源,号称“当前最好用的开源漏洞扫描工具”。最新版的Kali Linux(kali 3.0)不再自带OpenVAS了,所以我们要自己部署OpenVAS漏洞检测系统。其核心部件是一个服务器,包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题。

但是它的最常用用途是检测目标网络或主机的安全性。它的评估能力来源于数万个漏洞测试程序,这些程序都是以插件的形式存在。openvas是基于C/S(客户端/服务器),B/S(浏览器/服务器)架构进行工作,用户通过浏览器或者专用客户端程序来下达扫描任务,服务器端负责授权,执行扫描操作并提供扫描结果。

本文档属于部署方案文档,详细介绍了部署方法,搭建部署过程中有很多踩过的坑,这里整理出来供参考。

OpenVAS系统架构

一套完整的openvas系统包括服务器端和客户端的多个组件,如下图所示:

image001.jpg

服务器层组件(建议都安装) 客户层组件(任选其一安装即可)
OpenVAS-scanner(扫描器) 负责调用各种漏洞检测插件,完成实际的扫描操作。 OpenVAS-cli(命令行接口) 负责提供从命令行访问OpenVAS服务层程序。
OpenVAS-manager(管理器) 负责分配扫描任务,并根据扫描结果生产评估报告。 Greenbone-security-assistant(安全助手) 负责提供访问OpenVAS服务层的Web接口,便于通过浏览器来建立扫描任务,是使用最简便的客户层组件。
OpenVAS-administrator(管理者) 负责管理配置信息,用户授权等相关工作。 Greenbone-Desktop-Suite(桌面套件) 负责提供访问OpenVAS服务层的图形程序界面,主要在windows系统中使用。

kali Linux安装openvas

我这里是在kali linux系统上安装的openvas,最新版本的kalilinux系统是不带openvas的

注意:openvas服务器端仅支持安装在linux操作系统中,客户端安装在windows和Linux系统均可。

我的linux系统版本号如下:

image002.jpg

image003.jpg

虚拟机的网络连接方式如下,设置为桥接模式,设置为NAT。

image004.jpg

安装openvas过程

1. 更新软件包列表:

         apt-get update

image005.jpg

2. 获取到最新的软件包:

         apt-get dist-upgrade

image006.jpg

3. 安装openvas

         apt-get install openvas

执行以上命令后,如果没有报错,说明已经成功安装openvas。

kali Linux配置openvas

4.下载并更新OpenVAS库

openvas-setup

image007.jpg

在更新openvas库过程中创立了证书,下载及更新了一切扫描插件。

5.在更新OpenVAS库时,自动为admin用户创建了一个密码,只是该密码比较长,不容易记忆,我们使用如下命令将admin密码修改为容易记忆的密码,以kali123为例:

         image008.jpg

另外,我们新增一个普通用户wdl1,如下图:

image009.png

6.openvas-check setup

这个命令用于查错并用来确认OpenVAS是否成功安装,用apt-get安装总会出现这样那样的错误,我们可以用openvas-check-setup查看安装到哪步出错了,以及缺少什么东西。

image010.jpg

当出现如下结果时,表示安装成功:

image011.jpg

然后输入openvasmd –rebuild:rebuild the openvasmd database

image012.png

安装完成后,在应用程序—〉漏洞分析中会出现openvas这个应用,如下图:

image013.png

注意:openvas安装好之后并没有openvas-restart命令和openvas-status命令,该命令需要自定义安装。

在/usr/bin目录下,新建两个文件夹,分别为openvas-restart和openvas-status,然后赋予这两个文件可执行的权限:

image014.jpg

openvas-restart和openvas-status内容分别如下:

image015.png

之后就能够使用openvas-restart命令重启系统,使用openvas-status察看openvas系统状态了:

image016.jpg

image017.jpg

可以看到openvas目前处于运行状态。

kali linux启动openvas

由于OpenVAS是基于C/S,B/S架构进行工作的,所以,如果要使用该漏洞检测系统,必须先将OpenVAS服务启动,客户端才能连接进行测试。

双击应用程序中的openvas start启动openvas服务,出现如下界面:

image018.png

或者输入命令行程序openvas-start来启动openvas服务

image019.jpg

使用客户端访问openvas服务器

当openvas服务成功启动后,用户就可以连接openvas服务器并进行扫描了。根据前面的介绍,可知openvas有三种不同的客户端,分别是:OpenVAS命令行接口,Greenbone安全助手和Greenbone桌面套件。而且客户端能够用于各种操作系统。在kali linux中,默认安装的是Greenbone安全助手。

 本部署方案中使用最简单的浏览器客户端方式访问OpenVAS服务。因为,这种使用方式不仅简单,而且不需要客户额外安装应用程序,避免了枯燥的命令行方式,用户在任何操作系统中只要通过浏览器就可以在本地或远程连接OpenVAS服务器来对目标主机或网络进行漏洞检测。

通过使用浏览器客户端访问openvas服务器进行漏洞检测

然后我们使用客户层组件Greenbone-security-assistant访问openvas服务器,通过浏览器来建立扫描任务。

image020.jpg

 

image021.jpg

绿骨安全助手 GSA( Greenbone Security Assistant)是开放漏洞评估系统 OpenVAS(OpenVulnerability Assessment System)的基于网页的用户图形界面。 GSA 通过 OpenVAS Management Protocol (OMP) 连接 OpenVAS Manager。 通过实现完整的 OMP 特性集合,GSA 提供了一个直接了当的、非常强力的途径以管理网络漏洞扫描。

配置外部访问

安装完成后,openvas默认设置的监听地址为127.0.0.1,每次使用都只能用linux虚拟机打开浏览器通过https://127.0.0.1:9392来进行登录扫描,不如通过自己的电脑浏览器连接到openvas服务器直接进行扫描来的方便。

如果openvas安装在远程服务器或者虚拟机里面,则必须用服务器或者虚拟机打开浏览器来扫描,这样比较麻烦。用户更加希望,通过自己的电脑浏览器连接到openvas服务器,直接进行扫描。下面介绍配置外部访问的方法:

openvas新版本有两种方式控制openvas的开关,一种是服务的方式,一种是脚本的方式。

1.服务的方式

这种方式是通过openvas-start/openvas-stop脚本启动和关闭的,这两个脚本里调用的是service指令。启动openvas服务的脚本都存放在/lib/systemd/system下。

修改三个配置文件openvas-manager.service,openvas-scanner.service和greenbone-security-assistant.service,将配置文件中的监听IP由127.0.0.1改为0.0.0.0(相比于更改为openvas服务器的实际IP地址,改为0.0.0.0会更好,因为0.0.0.0代表本机的任意地址,适用于服务器有多个IP或者服务器IP有变动的情况)。修改后的三个配置文件内容如下:

image022.jpg

image023.jpg

image024.jpg

2.脚本的方式

需要三个脚本控制开启和关闭openvas,

/etc/init.d/openvas-manager  //管理manager服务

/etc/init.d/openvas-scanner  //管理scanner服务

/etc/init.d/greenbone-security-assistant //管理gsad服务

这三个脚本对应了三个配置文件,分别为:

/etc/default/openvas-manager

/etc/default/openvas-scanner

/etc/default/greenbone-security-assistant

image025.jpg

分别修改配置文件中的监听ip,由127.0.0.1改为0.0.0.0,保存。修改后三个配置文件的内容分别如下:

image026.jpg

image027.jpg

image028.jpg

察看openvas的监听地址,如下图:

image029.jpg

image030.jpg

或者使用ps aux | less命令查看系统目前正在运行的进程。

可以看到,openvas监听地址已由127.0.0.1变为0.0.0.0。

察看linux虚拟机的IP地址为192.168.9.208:

image031.jpg

在不登录linux服务器的情况下,即可在本机windows系统的客户端浏览器中输入https://192.168.9.208:9392/login/login.html 连接openvas服务器进行漏洞检测。

注意:要保证主机和虚拟机间能通信。经过在多台台式机测试,测试者都能通过自己台式机浏览器连接我部署的openvas漏洞检测系统进行主机和网络安全测试。

image032.jpg

 *本文作者:魅影儿,转载请注明来自FreeBuf.COM

0x00 前言

DanderSpritz是NSA的一款界面化的远控工具,基于FuzzBunch框架,执行Start.jar即可启动。

在实际测试过程中,由于缺少说明文档,遇到的问题有很多,同时一些细节也值得深入研究。所以本文将要帮助大家答疑解惑,分享测试心得,结合木马特点分析防御思路。

0x01 简介

本文将要介绍以下内容:

执行pc_prep无法获得回显的原因及解决方法
Pc同Pc2.2的区别
level3和level4木马代表的含义及如何使用
各类型木马区别
dll木马利用方式
Windows单条日志删除功能
木马查杀思路

0x02 实际测试

测试环境:Win7 x86

安装如下工具:

python2.6
pywin32
jdk

1、下载fuzzbunch

参考链接:https://github.com/3gstudent/fuzzbunch

注:

我fork了公开的fuzzbunch项目(https://github.com/fuzzbunch/fuzzbunch),并添加了部分内容,解决了一个bug,具体内容会在后面介绍

2、直接运行Start.jar

如图

1.png

设置启动参数,Log Directory需要设置成固定格式:c:logsxxx(xxx任意名称)

否则,会出现报错,如下图

2.png

注:

网上的部分分析文章认为应该先用fb.py生成一个日志文件,接着Start.jar指向该目录,其实不需要,只要路径格式正确即可

3、执行pc_prep配置木马

输入pc_prep获得回显,如下图

3.png

注:

有很多人在测试的时候发现输入pc_prep无法获得回显,如下图

4.png

原因:

fuzzbunch工程下载自如下链接:https://github.com/x0rz/EQGRP_Lost_in_Translation

文件缺失,导致该错误。

正确的下载位置:https://github.com/fuzzbunch/fuzzbunch

但是,下载后还需要补全缺失的文件,才能完全正常使用。

我fork了上述工程,并补全了缺失文件,下载我的github即可解决上述问题,地址如下:https://github.com/3gstudent/fuzzbunch

补充:

在之前的测试过程中,使用了存在bug的版本,虽然pc_prep无法获得回显,但是使用pc2.2_prep可以生成木马。如下图

5.png

可是木马无法回连

猜测原因:

pc相对于Pc2.2版本更高,低版本已经不再使用。

查看ResourcesPc2.2Version.xml,显示:PeddleCheap 2.2.0.2,表示Pc2.2对应的PeddleCheap版本为2.2.0.2。

查看ResourcesPcVersion.xml,显示:PeddleCheap 2.3.0,表示Pc对应的PeddleCheap版本为2.3.0。

注:

PeddleCheap用来操作同木马通信,在DanderSpritz主面板显示

4、木马分类

可选择的木马类型如下:

1) – Standard TCP (i386-winnt Level3 sharedlib)

2) – HTTP Proxy (i386-winnt Level3 sharedlib)

3) – Standard TCP (i386-winnt Level3 exe)

4) – HTTP Proxy (i386-winnt Level3 exe)

5) – Standard TCP (x64-winnt Level3 sharedlib)

6) – HTTP Proxy (x64-winnt Level3 sharedlib)

7) – Standard TCP (x64-winnt Level3 exe)

8) – HTTP Proxy (x64-winnt Level3 exe)

9) – Standard TCP Generic (i386-winnt Level4 sharedlib)

10) – HTTP Proxy Generic (i386-winnt Level4 sharedlib)

11) – Standard TCP AppCompat-enabled (i386-winnt Level4 sharedlib)

12) – HTTP Proxy AppCompat-enabled (i386-winnt Level4 sharedlib)

13) – Standard TCP UtilityBurst-enabled (i386-winnt Level4 sharedlib)

14) – HTTP Proxy UtilityBurst-enabled (i386-winnt Level4 sharedlib)

15) – Standard TCP WinsockHelperApi-enabled (i386-winnt Level4 sharedlib)

16) – HTTP Proxy WinsockHelperApi-enabled (i386-winnt Level4 sharedlib)

17) – Standard TCP (i386-winnt Level4 exe)

18) – HTTP Proxy (i386-winnt Level4 exe)

19) – Standard TCP (x64-winnt Level4 sharedlib)

20) – HTTP Proxy (x64-winnt Level4 sharedlib)

21) – Standard TCP AppCompat-enabled (x64-winnt Level4 sharedlib)

22) – HTTP Proxy AppCompat-enabled (x64-winnt Level4 sharedlib)

23) – Standard TCP WinsockHelperApi-enabled (x64-winnt Level4 sharedlib)

24) – HTTP Proxy WinsockHelperApi-enabled (x64-winnt Level4 sharedlib)

25) – Standard TCP (x64-winnt Level4 exe)

26) – HTTP Proxy (x64-winnt Level4 exe)

按平台区分:x86、x64

按文件格式区分:exe、dll

按通信协议区分:Standard TCP、HTTP Proxy

按功能区分:Standard、AppCompat-enabled、UtilityBurst-enabled、WinsockHelperApi-enabled

按Level区分:Level3、Level4

注:

经实际测试,Level代表回连方式

level3表示反向连接,控制端监听端口,等待回连

leve4表示正向连接,目标主机监听端口,等待控制端主动连接

5、木马测试

选择代表性的进行测试

(1) Level3,选择 3) – Standard TCP (i386-winnt Level3 exe)

按配置生成exe(此处不具体介绍,参照其他文章)
DanderSpiritz控制端选择PeddleCheap-Listen-Start Listening
在目标主机直接执行exe
等待回连

操作同正常的反向连接木马

注:

日志文件下生成2个文件PC_Level3_exe.base和PC_Level3_exe.configured。PC_Level3_exe.base为模板文件,来自于ResourcesPcLevel3i386-winntrelease,PC_Level3_exe.configured为加入配置参数的文件。两个文件大小相同,但在特定位置存在差异,如下图

6.png

(2) Level3,选择 6) – HTTP Proxy (x64-winnt Level3 sharedlib)

按配置生成PC_Level3_http_dll.configured(此处不具体介绍,参照其他文章)

加载方式:

1.利用DoublePulsar加载dll

(此处不具体介绍,参照其他文章)

2.手动加载dll

使用dumpbin查看dll的导出函数,如下图

7.png

ordinal为1对应的dll导出函数名为rst32

也就是说,我们可以尝试通过rundll32直接加载该dll

命令行代码如下:

rundll32 PC_Level3_http_dll.configured,rst32

木马正常回连

注:

对于http协议的木马,记得设置listen协议的时候要选择http

(3) Level4,选择 17) – Standard TCP (i386-winnt Level4 exe)

按配置生成PC_Level4_exe.configured(可使用高级模式,指定固定监听端口)

启动exe后执行netstat -ano可看到开启了固定端口

DanderSpiritz控制端选择PeddleCheap-Connect,选择ip,填入Level 4对应的端口

正向连接

(4) Level4,选择 9) – Standard TCP Generic (i386-winnt Level4 sharedlib)

按配置生成PC_Level4_dll.configured(可使用高级模式,指定固定监听端口)

查看其导出函数,如下图

8.png

也就是说,不支持直接通过rundll32加载

猜测:

Level4的木马要一直运行在后台,考虑到隐蔽性,所以不支持该功能

给出一种dll加载的测试方法:通过APC注入

如下图,成功加载,打开监听端口

9.png

参考代码:

https://github.com/3gstudent/Inject-dll-by-APC/blob/master/test.cpp

注:

被注入的程序需要管理员权限,否则会因为权限问题无法打开监听端口

给出另二种dll加载的测试方法:通过Application Compatibility Shims

可参考以下链接:

https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B8%AD%E7%9A%84Application-Compatibility-Shims/

如下图,成功加载,打开监听端口

1.png

(5) Level4,选择 11) – Standard TCP AppCompat-enabled (i386-winnt Level4 sharedlib)

根据字面意思,猜测是支持Application Compatibility Shims

比较Generic和AppCompat-enabled的区别:

二者大小一样,就是AppCompat-enabled多了一个导出函数GetHookAPIs

如下图

2.png

0x03 木马功能

木马连接成功后,自动开始信息搜集,返回各种详细信息。比较人性化的设计是会自动询问用户是否提权,在检测到环境安全后会询问用户是否需要导出hash。

待信息搜集完成后,输入help可获得支持的操作

注:

help获得的内容不完整,输入aliases可获得更多操作命令介绍

help+命令可获得具体命令的操作介绍

例如,输入help eventlogedit,回显如图

3.png

1、日志操作功能

关于日志操作的命令如下:

eventlogclear
eventlogedit
eventlogfilter
eventlogquery

具体功能如下:

eventlogquery:

统计日志列表,查询所有日志信息,包含时间,数目

可查询指定类别的日志信息,包含时间,数目,命令如下:

eventlogquery -log Setup

该操作等价于

wevtutil.exe gli setup

注:wevtutil.exe操作系统默认包含

eventlogfilter:

查看指定类别的日志内容

命令如下:

eventlogfilter -log Setup -num 19

该操作等价于

wevtutil qe /f:text setup

eventlogedit:

删除单条日志

可删除单条日志内容,命令如下:

eventlogedit -log Setup -record 1

注: 

record序号可通过eventlogfilter获得

该命令暂没有公开工具支持

eventlogclear:

删除该类日志所有内容

命令如下:

eventlogclear -log Microsoft-Windows-Dhcpv6-Client/Admin

该操作等价于

wevtutil cl Microsoft-Windows-Dhcpv6-Client/Admin

0x04 木马查杀思路

DanderSpritz的木马生成方式如下:

文件夹ResourcesPcLevel3和ResourcesPcLevel4下保存模板文件,固定位置预留参数配置信息,实际生成时向模板文件写入配置信息

目前杀毒软件已经对这些模板文件成功识别并查杀,同时,这些模板文件的代码并没有开源,也会提高在恶意利用上面的门槛

建议普通用户:更新系统补丁、更新杀毒软件病毒库,就能够防范该工具的攻击。

0x05 小结

本文分享了DanderSpiritz的测试心得,希望能够帮助大家在技术研究上对其有更好的认识,省略了部分具体利用细节和章节,以防该工具被滥用。

1.png

近期,一群来自华盛顿大学网络安全实验室(NSL)的计算机专家发现,恶意攻击者可以欺骗Google的CloudVision API,这将导致API对用户提交的图片进行错误地分类。

近些年来,基于AI的图片分类系统变得越来越热门了,而这项研究针对的就是这种图片分类系统。现在,很多在线服务都会采用这种系统来捕捉或屏蔽某些特殊类型的图片,例如那些具有暴力性质或色情性质的图片,而基于AI的图片分类系统可以阻止用户提交并发布违禁图片。

虽然这种分类系统使用了高度复杂的机器学习算法,但是研究人员表示,他们发现了一种非常简单的方法来欺骗Google的Cloud Vision服务。

Google的Cloud Vision API存在漏洞

他们所设计出的攻击技术其实非常简单,只需要在一张图片中添加少量噪点即可成功欺骗Google的Cloud Vision API。其中的噪点等级可以在10%到30%范围内浮动,同时也可以保证图片的清晰度,而且这足以欺骗Google的图片分类AI了。

2.png

向图片中添加噪点其实也非常的简单,整个过程并不需要多么高端的技术,一切只需要一个图片编辑软件即可实现。

研究人员认为,网络犯罪分子可以利用这种技术来传播暴力图片、色情图片或恐怖主义宣传图片。除此之外,Google自己的图片搜索系统也使用了这个API,这也就意味着,当用户使用Google进行图片搜索时,很可能会搜索到意料之外的图片。

解决这个问题的方法很简单

研究人员表示,修复这个问题其实跟攻击过程一样的简单,所以Google的工程师们完全没必要紧张。

为了防止这种攻击,Google只需要在运行其图片分类算法之前,对图片中的噪点进行过滤就可以了。研究人员通过测试发现,在噪点过滤器的帮助下,Google的Cloud Vision API完全可以对图片进行适当的分类。

3.png

后话

研究人员已经将这种攻击的完整技术细节在其发表的论文中进行了描述,感兴趣的用户可以阅读这篇论文【传送门】。已经值得注意的是,这群研究人员在此之前也使用过类似的方法来欺骗Google的Cloud Video Intelligence API【参考资料】。注:他们在一个视频中每两秒就插入一张相同的图片,最后Google的视频分类AI会根据这张不断重复出现的图片来对视频进行分类,而分类的依据并不是视频本身的内容。

 

* 参考来源:bleepingcomputer, FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM

*本文作者:ArkTeam/Ariel

2016年美国黑帽大会(BlackHat USA 2016)对与会的安全从业人员最关心的安全威胁进行调查,发现黑客们最关心的是:“Phishing,social network exploits, or other forms of social engineering ”,该安全威胁占比46%,排名第一(2015年排名第二)[1]

基于社会工程的网络虽攻击出现已久,一直是较为关注的一种有效攻击手段;尤其是鱼叉式网络钓鱼,因其成效显著且传统的安全性防御机制无法阻止这类攻击类型,仍然是大众关注的目标。而且90%的APT攻击也是通过网络钓鱼来完成。

1.png

图1 2016 Black HatAttendee Survey(USA)

此外,机器学习(machine learning,以下简称ML)在网络安全领域的应用已经有广泛研究,目前大多用于网络攻防中的,包括入侵检测、僵尸网络流量识别、漏洞扫描等,但是ML也容易被黑客利用进行恶意攻击。

本文将介绍一种基于机器学习的社会工程模型自动化鱼叉式网络钓鱼。

一、   鱼叉式网络钓鱼

区别于普通网络钓鱼,鱼叉式网络钓鱼是针对特定目标进行定制的网络钓鱼攻击。攻击者会花时间了解攻击目标,包括姓名、邮箱地址、社交媒体账号或者任何在网上参与过的内容等。攻击目标不是一般个人,而是特定的公司或者组织的成员,窃取的资料也并非个人的资料,而是其他高度敏感性资料[2]

2.png

图2 普通网络钓鱼vs鱼叉式网络钓鱼

采用机器学习的方法从社交媒体、新闻报道等资料中,利用重复的文本模式识别攻击目标感兴趣的主题并构造可能回应的句子,极大提高了社工的有效性,使得大规模自动化网络钓鱼活动成为可能。

二、 自动化鱼叉式钓鱼攻击

TwitterFacebook等社交媒体平台包含大量个人隐私信息、开放平台API接口,而且内容多有字数限制(短文)、语言不规范、常用短地址服务等特点,决定了其容易被攻击者利用并学习构造虚假信息,让攻击目标不引起怀疑而自愿上钩。201684日,来自ZeroFOX公司的JohnSeymour & Philip Tully在美国黑帽大会上就提出了一种基于Twitter的端到端自动化鱼叉式网络钓鱼方法[3],下面就该钓鱼方法进行介绍。

1. 主要思想

提出SNAP_RSocialNetwork Automated Phishing with Reconnaissance)递归神经网络,可学习向特定用户(即攻击目标)发送钓鱼推文。该模型采用鱼叉式网络钓鱼渗透测试数据进行训练,为提升点击成功率,还动态嵌入从目标用户和转发或关注用户处抽取的话题,并在发送推文时@攻击目标。

3.png

图3 SNAP_R递归神经网络简介

2. 自动化鱼叉式钓鱼攻击

 4.png

图4 基于Twitter的自动化鱼叉式钓鱼

该自动化鱼叉式钓鱼攻击主要包括两部分:

     寻找钓鱼攻击目标对象

首先,利用TwitterStreaming API收集用户名,根据用户个人信息描述和推文情况衡量钓鱼成功概率,用户个人信息包括用户名、转发/响应的推文的频率/时间、对某主题的态度、位置信息、行为模式、已参加或者将要参加的大型活动等,也包括工作、职位头衔、知名度等反映用户价值大小的信息。然后,按照钓鱼成功的概率大小将用户进行分类。

攻击者从FirehoseTwitter用户发送消息的输出口)中挑选用户,并判断该用户属于刚才所说分类方法中的具体类别。如果用户的钓鱼成功的概率比较高,就选取该用户作为攻击目标,向其发送嵌有钓鱼链接的虚假推文。

     自动化鱼叉钓鱼

选取攻击目标后,攻击者利用SNAP_R递归神经网络模型抽取目标感兴趣话题以及该目标发送推文或者回复推文的情况以便于产生钓鱼推文内容。除介词等停止词之外,最频繁出现的推文内容都可以用于构造推文内容,推文内容会选择用户经常发送或转推推文的时间进行发送。

SNAP_R模型中,采用了马尔可夫模型和长短期记忆LSTMLongShort-Term Memory)递归神经网络构造推文内容。马尔可夫模型根据文本同时出现的概率来推测文本的内容,举例说明:如果训练集包含短语thecat in the hat的次数比较多,当模型出现the时,则下一个内容很可能是cat 或者hat。但是由马尔科夫模型产生的内容通常是没有意义的,只是出现频率比较高的词语的组合体而已。而LSTM适合于处理和预测时间序列中间隔和延迟非常长的重要事件,与马尔可夫模型的区别在于,LSTM能结合语境判断下一个可能出现的词语。两者结合构造更接近于人类撰写的推文内容

3.实验验证

5.png 

6.png

图5 SNAP_R递归神经网络

为了评估该网络钓鱼攻击效果,在推文中插入下载负载的网址链接并使用goo.gl短连接跳转服务,如果攻击目标点击该链接时,goo.gl会记录时间戳、UA等信息(详见图5)。

通过对90名用户进行测试发现:该自动化鱼叉式网络钓鱼框架的成功率为30%~60%;大规模手动鱼叉式网络钓鱼传统上的成功率为45%,而广撒网式钓鱼只有5%14%的成功率。测试结果说明该自动化鱼叉式钓鱼方法极其有效,机器学习使得针对性鱼叉式网络钓鱼更加准确和规模化。但这只是ML模型社会工程应用革命的开端,我们将在未来几年看到该领域的飞速发展。[4] 

7.png 

图6 SNAP_R递归神经网络

三、   总结

作为人们网络生活的重要组成部分,Twitter、Facebook等社交网站成为黑客攻击的重灾区。而且伴随着机器学习的再度火热,攻击自动化程度将进一步提高,极大增加了黑客攻击成功的可能性。针对社交网络中的网络攻击(网络钓鱼等),一方面网站建设者应加强网站管理和规范,不给黑客任何可乘之机;一方面用户应该提高个人安全意识,注意个人隐私信息泄露并时刻保持警惕性,不轻易打开网上不明链接

四、   参考文章

[1] 2016Black Hat Attendee Survey

https://www.blackhat.com/docs/us-16/2016-Black-Hat-Attendee-Survey.pdf

[2] https://zh.wikipedia.org/zh/魚叉式網路釣魚

[3] Weaponizingdata science for social engineering: Automated E2E spear phishing on Twitter

https://www.blackhat.com/docs/us-16/materials/us-16-Seymour-Tully-Weaponizing-Data-Science-For-Social-Engineering-Automated-E2E-Spear-Phishing-On-Twitter-wp.pdf

[4] 机器学习如何帮助黑客

http://www.aqniu.com/learn/21528.html

*本文作者:ArkTeam/Ariel,转载须注明来自FreeBuf.COM

1.jpg

据ESET(总部位于斯洛伐克布拉迪斯拉发的一家世界知名的电脑安全软件公司,创立于1992年)4月19日官方报道,一个具有自动锁屏功能的银行恶意软件近期伪装成Google Play上的手电筒应用,广大安卓用户成为了它的狩猎目标乃至囊中之物。与其它静态式的银行业务木马不同,该木马能够动态地调整自身功能。

除了用来作掩护的手电筒功能之外,这种利用远程控制的木马还具有很多附加功能,最终目的就是窃取用户的银行账户信息。该木马可以通过C&C服务器命令模拟真实应用的界面,锁住受感染设备,避免受害者发现恶意活动,拦截短信并显示伪造的通知,最终达到绕过双因素身份验证的目的。

这种恶意软件能够感染安卓系统的所有版本。而且由于功能动态变化的特点,它不会受限于应用程序的类型——只需获得安装在受害设备上应用程序的HTML代码,在启动该应用后用HTML代码伪造的虚假屏幕覆盖掉就可以了。

ESET公司检测到的Trojan.Android/Charger.B的特洛伊木马于3月30日被背后的操纵者上传至Google Play,截至ESET4月10日发布正式通知前,大约已经有5000多名不知情的用户下载安装了该木马病毒。

2.pngGoogle Play上的木马程

它是如何运作的?

一旦安装并启动了这个木马程序,它就会请求获得受害设备的管理员权限。使用安卓6.0或更高版本的用户还需手动设置使用权限并开启“draw over other apps(允许在其他应用的上层显示)”的功能。获得权限与许可后,该程序就会自动隐藏图标,以插件的形式在设备上显示。

实际的有效负载已经在Google Play的APK文件资源中加密,这种处理方式能够避免其恶意功能被发现。当受害者运行该应用时,有效载荷也会自动解密并执行攻击任务。

木马首先会将受感染的设备注册到攻击者的服务器上。除了发送设备信息和设备上所安装的应用程序信息之外,它还能获取设备前置摄像头所拍摄的照片。

如果信息显示这台设备位于俄罗斯、乌克兰或白俄罗斯,C&C服务器就会自动停止攻击活动,唯一的可能性就是该恶意程序的所有者希望避免来自本国攻击者的控诉。

根据受感染设备上安装的应用程序列表,C&C以恶意HTML代码的形式发送相应的虚假活动。受害者只要启动其中一个目标应用程序,HTML就会在WebView中显示。紧接着,真实应用的界面就被伪造的界面所覆盖,该界面要求用户输入信用卡信息或银行应用的登录凭据等。

那么哪些应用容易被这种木马盯上?这个问题也许是无解的。因为不同设备所安装的应用不同,窃取的HTML代码也不同。据调查,已经发现存在虚假界面的应用程序有以下这些:Commbank、NAB、Westpac手机银行、Facebook、WhatsApp、Instagram和Google Play。

伪造界面上的登录凭据都会以不加密的方式发送到攻击者的C&C服务器上。

至于设备被锁住的问题,ESET猜测这项功能会在攻击者从受害银行账户提现时自动启用。攻击者通过一个虚假的外观更新界面来隐藏自己的欺诈活动,以免受害者发现恶意活动、加以干预。

3.png

受感染在被感染设备上找到的模仿真实应用的钓鱼界面

4.png

用于锁定受感染设备的虚假系统界面

该木马滥用Firebase Cloud Messages(FCM)与C&C服务器进行通信,这是我们第一次发现安卓恶意软件使用了这种通信渠道。

研究显示,该应用是Android/Charger的改良版,由Check Point研究人员于2017年1月首次发现。第一个版本主要通过锁住设备并进行勒索的方式对受害者进行直接敲诈,但是现在Charger背后的恶意黑客改用钓鱼的方式,目标直接锁定受害者的银行信息——这种演变在安卓恶意软件家族中十分少见。

Android/Charger.B使用的是虚假的登录界面与设备锁定功能,这与我们二月份发现并分析的银行业务恶意软件存在一定相似之处。但为什么说这次发现的木马更加危险呢?因为与一般恶意软件中的硬编码不同,它的攻击目标是动态变化、毫无限制的!

你的设备是否受到了感染?如何清除?

如果你刚好最近从Google Play下载了手电筒应用,那么你就需要检查下是否无意中碰到过这种木马程序。

恶意应用可以在设置>应用程序管理/应用>手电筒插件中找到。

5.png

应用程序管理器中的恶意软件

找到这个恶意程序很简单,但是要想卸载它就比较头疼了。该木马通过禁止用户关闭活动的设备管理器(卸载app的必要步骤)的方式防止受害者卸载。如果我们选择停用选项,屏幕会弹出一个只能点击“激活”选项的弹框——恶意程序惯用的流氓手段。

遇到这样的情况时,首先可以将设备调至安全模式,再参照下面的视频完成卸载。

https://v.qq.com/x/page/m0397bnnr1e.html

如何预防?

避免恶意软件带来伤害的关键说到底还是预防。

下载应用时我们应尽可能地选择官方应用商店。尽管Google Play也存在漏网之鱼,但它的确采取了高级的安全防御机制来抵制恶意软件,而很多不规范的应用商店都做不到这一点。

如果你对想要安装的应用程序不放心,可以通过查看该应用的安装次数、评分和评论内容再作决定。

安装并运行某个应用后,一定要注意它所请求获得的设备权限。如果它要求的权限超过了功能所需(如手电筒应用却要求获得设备管理员的权限),那么这时候你就需要慎重考虑了。

当然最后一点,我们也可以选择一家值得信赖的安全服务供应商来保护我们的设备,避免最新的威胁造成不可估量的损失!

已分析样本

数据包名称:com.flashscary.widget

哈希值:CA04233F2D896A59B718E19B13E3510017420A6D

检测结果:Android/Charger.B

*本文投稿作者:Carrie_spinfo,经作者授权,转载自微信公众号“赛博朔方”(chinamssp)

最近,我有幸和在Azure Security Center分析小组工作的Greg Cottingham讨论,了解到进程创建事件和利用它来检查出异常事件。Azure Security Center服务是专门用于检测安全漏洞并给出相关的建议,已经于今年年初正式投入使用。下面,我将结合一些实际的攻击样本,来解释一下如何使用 SCOM(System Center Operations Manager)捕获创建的可疑进程事件。

scom_w_450.png

进程创建是Windows系统中相当普遍的事情,如果我执行该操作,则可以生成一个或多个进程,这些进程会持续的保持开放状态,直到程序运行完成。而且这个过程可以被完整地查看,因为进程创建将在安全事件日志中生成4688事件,也就是说,在默认设置下,它是被禁用的。Server 2012 R2添加了一个附加功能,通过额外的GPO(组策略)设置,大家可以审核执行的命令行。简而言之,大家需要通过一些必要的设置,才能来捕捉进程的事件。

在进行捕捉之前,你应该先检查一下你的系统运行环境,如果你有ArcSight、Splunk、OMS或SCOM等工具收集安全事件,那将再好不过了。还有一个问题就是,通过打开命令行审核,任何可以读取安全事件的人都可以读取这些命令行内容,也就是说这些人很有可能读取你的敏感信息。

用一个简单的GPO就可以打开:

1.png

启用命令行:

2.png

几分钟内,4688事件开始显示在各种事件日志中。

接下来,我需要确定要查找的内容,这些事件包含一些有用的参数。完整的事件列表可以在下图中看到:

3.png

虽然参数6(新进程名称)和参数9(命令行)通常包含一些触发的项目,但是我可以使用SCOM来捕获到其他诸如用户名(参数2)的内容。另外,我不想直接使用4688事件的提醒通知,因为这会产生大量的干扰信息,但我可以将其定位到每次应该调查的特定事件中,比如下面这个操作实例:

绕过Windows AppLocker,攻击者使用javascript或regsvr32命令行工具,来绕过Windows AppLocker安全措施并正常注册动态链接库(DLLs):

4.png

命令行FTP,攻击者使用命令行下载执行有效载荷:

5.png

攻击者操纵PowerShell窗口位置,然后执行powershell命令,但是操作窗口会被隐藏,这样用户就无法看到它了:

6.png

在没有可执行文件的文件夹中执行命令,如果你觉得读取这个文件夹列表可能要花费很长时间,那下图就是一些常见的执行文件的位置:

7.png

攻击者在启动时会添加一个启动进程的行,不过你要注意,在实际操作时,你可能还需要添加一些“不包含”选项,以避免正常事件的通知提醒:

8.png

目前我正在开发包含这些监控器的管理包以及包含其他安全规则和SCOM可以提供的其他安全相关项目。我的主要目标是将捕获过程中的干扰信息获降低到最低限度,以便对每个可疑的进程事件进行警告提示。

最近,我有幸和在Azure Security Center分析小组工作的Greg Cottingham讨论,了解到进程创建事件和利用它来检查出异常事件。Azure Security Center服务是专门用于检测安全漏洞并给出相关的建议,已经于今年年初正式投入使用。下面,我将结合一些实际的攻击样本,来解释一下如何使用 SCOM(System Center Operations Manager)捕获创建的可疑进程事件。

scom_w_450.png

进程创建是Windows系统中相当普遍的事情,如果我执行该操作,则可以生成一个或多个进程,这些进程会持续的保持开放状态,直到程序运行完成。而且这个过程可以被完整地查看,因为进程创建将在安全事件日志中生成4688事件,也就是说,在默认设置下,它是被禁用的。Server 2012 R2添加了一个附加功能,通过额外的GPO(组策略)设置,大家可以审核执行的命令行。简而言之,大家需要通过一些必要的设置,才能来捕捉进程的事件。

在进行捕捉之前,你应该先检查一下你的系统运行环境,如果你有ArcSight、Splunk、OMS或SCOM等工具收集安全事件,那将再好不过了。还有一个问题就是,通过打开命令行审核,任何可以读取安全事件的人都可以读取这些命令行内容,也就是说这些人很有可能读取你的敏感信息。

用一个简单的GPO就可以打开:

1.png

启用命令行:

2.png

几分钟内,4688事件开始显示在各种事件日志中。

接下来,我需要确定要查找的内容,这些事件包含一些有用的参数。完整的事件列表可以在下图中看到:

3.png

虽然参数6(新进程名称)和参数9(命令行)通常包含一些触发的项目,但是我可以使用SCOM来捕获到其他诸如用户名(参数2)的内容。另外,我不想直接使用4688事件的提醒通知,因为这会产生大量的干扰信息,但我可以将其定位到每次应该调查的特定事件中,比如下面这个操作实例:

绕过Windows AppLocker,攻击者使用javascript或regsvr32命令行工具,来绕过Windows AppLocker安全措施并正常注册动态链接库(DLLs):

4.png

命令行FTP,攻击者使用命令行下载执行有效载荷:

5.png

攻击者操纵PowerShell窗口位置,然后执行powershell命令,但是操作窗口会被隐藏,这样用户就无法看到它了:

6.png

在没有可执行文件的文件夹中执行命令,如果你觉得读取这个文件夹列表可能要花费很长时间,那下图就是一些常见的执行文件的位置:

7.png

攻击者在启动时会添加一个启动进程的行,不过你要注意,在实际操作时,你可能还需要添加一些“不包含”选项,以避免正常事件的通知提醒:

8.png

目前我正在开发包含这些监控器的管理包以及包含其他安全规则和SCOM可以提供的其他安全相关项目。我的主要目标是将捕获过程中的干扰信息获降低到最低限度,以便对每个可疑的进程事件进行警告提示。

一、摘要

1.1 话费作为的最便捷的支付,比较适合“闷声发大财”。

隐藏在话费背后的SP服务可以很方便的帮助不怀好意的人将用户话费放到自己的口袋,少则扣费几十元,多则可能消费几百元积少成多累计起来也是暴力。比如前段时间首起恶意扣费软件案影响设备数600万台,非法获利6726余万元。

1.2 短信扣费类木马分为两大流派。

势力最大的一派以暗扣类游戏为主(占据市场份额最大),它们深谙用户用户心理,利用用户操作习惯,设置陷阱诱骗用户点击通过订阅SP服务进行变现。另外一派则以后台无图标应用为主,通过ROOT恶意木马,ROM预装等方式偷偷潜伏进去用户设备,后台自动发送SP扣费短信进行变现。

1.3 从SP扣费信息来源看,分成本地硬编码和云端平台获取两种。

本地硬编码含有几个或者几十个扣费通道,云端平台是一种无穷无尽的扣费通道,SP不死就可以持续扣费,目前主流的短信扣费以云端获取为主,木马通常还自带清理现场的功能。

14930247717680.png!small 

14930247771197.png!small 

1.4 从产业链上看,SP代理商,流量商,以及开发者是产业链中的主要角色。

开发者从SP代理商获取到SP扣费信息植入到应用中,然后从流量商手中购买流量将恶意应用安装到用户手机,最终通过订阅各类SP服务变现。

1.5 短信扣费木马的主要传播渠道主要有五种。

从传播渠道看,主要有游戏破解网站、软件下载站、广告联盟、部分应用市场以及一些地下黑流量推广(比如通过色情播放器传播)。

1.6 从拦截的短信扣费木马的家族看,有能力大规模传播的还是少数。

目前腾讯反诈骗实验室通过海量样本分析发现,短信扣费木马主要包含有以下病毒家族:

14930247834095.png!small 

二、背景

2.1 用户安装盗版或者修改版游戏被恶意扣费

14930247893373.png!small 

14930247941539.png!small 

2.2 首起恶意扣费软件案涉案金额6700万元

14930248009775.png!small 

2.3 话费支付的正确打开方式和恶意实现

14930248141319.jpg!small 

  

14930248187412.jpg!small 

三、短信扣费木马影响面

3.1 用户感染趋势变化

3.1.1 今年1月份开始感染用户开始飙升,并且逐步处于稳步微增的

14930248247733.png!small 

3.1.2 从感染区域分布看,从大到小排序 广东,四川,河南,湖南,江苏,贵州,广西等

14930248315178.png!small 

3.1.3 短信扣费木马变化趋势

从收集样本数看,短信扣费木马样本数处于增长趋势,4月份尚未过半,样本收集量已经接近3月份的总量。

14930249867870.png!small 

3.2 扣费恶意代码寄生的应用类型

14930249908268.png!small 

 (1) 刚需色情,用户主动下载或被推广安装 

14930249963135.png!small 

(2) 娱乐游戏,用户主动下载或推广安装

14930250003407.png!small14930250039618.png!small  

(3) 无图标或者伪装系统应用,通过恶意推广或ROM内置

       14930250078582.png!small        14930250105608.png!small

3.3 主要传播渠道

(1) 恶意广告推广:用户访问小说、视频网站弹出的恶意广告。

                 14930250164928.jpg!small

(2) 应用市场:这些应用市场对于应用的安全性要求较低,恶意应用很容易就可以上架传播。

(3) 软件或游戏下载站:提供各种破解,修改版应用下载,存在一些诱导下载广告位或恶意应用下载。

14930250274180.png!small 

(4) 暗流量:已经潜伏在用户电脑内的恶意应用,通过弹窗,诱导提示或者静默自动推广。

(5) ROM内置:通过与一些山寨机合作直接植入到ROM内,或在终端出厂后在销售环节植入。

3.4 传播四步骤

* 木马作者通过SP代理商获取获得扣费通道。

* 木马作者将恶意扣费代码封装到恶意应用。

* 木马作者购买流量,通过各种渠道将恶意应用推广安装到用户手机。

* 用户手机中招,通过SP订阅服务,木马作者牟利,各方按照协议进行分成皆大欢喜.。

14930250352406.png!small 

四 流行短信扣费木马家族

4.1 短信扣费五大家族

14930250415140.png!small 

4.2 各家族的技术点对比

14930250472212.png!small 

4.3 游戏土匪

此类型是目前最常见的类型,影响面也是最广的。通常手段是重打包其他游戏,植入扣费项目,在用户游戏过程中频繁弹出诱导性弹框,经常使用“礼包”,“领取”,”免费”,”优惠”等字眼诱导用户点击,并故意弱化收费提示,让用户误以为可以免费领取,用户点击后将通过话费购买道具。

此类型木马因为来钱快属于暴利行业,为了提升扣费的用户体验以及对抗检测一直处于攻防对抗中,扣费信息从一开始本地硬编码,到如今普遍通过云端控制下发;扣费弹框的提示逐渐弱化扣费提示信息,以诱骗更多的用户点击。

【弱化提示】:扣费提示人眼可见,但是可以放在用户不容易注意的地方。

14930250541747.png!small 

14930250603995.png!small 

【背景色隐藏】:将扣费隐藏在浅色背景中,刻意突出游戏按钮。

14930250684813.png!small14930250738583.jpg!small  

【游戏过程中扣费提示】:用户玩的如痴如醉,脑袋犯浑的时候,要不要扣个费玩玩? 

14930250939238.png!small14930250997048.png!small  

【游戏过程中道具】:要想变得更强,装备当然得升级下,当然变强的机会你需要你的手机话费充足。

14930251158109.png!small 

【进击的用户体验】:用户越来越小心,收入下降了怎么办,于是小伙伴的眼睛就变瞎了T_T

14930251216627.jpg!small 

4.4 梵偷

4.4.1 家族简述

该家族通常伪装成色情软件诱骗用户下载安装,同时它也会有一切其它恶意程序合作通过ROOT等强制安装方式将无图标的扣费木马强制安装到用户设备,安装成功了通过云端获取SP扣费信息,伺机窃取用户的话费。常见软件名有魅影视频,美女看看,禁播视频,禁片大全,无码神播。

14930251386099.png!small 

4.4.2 技术点分析

(1) 从云端通过接口获取扣费信息,如扣费短信信息,包括目标号码,发送内容,发送间隔,拦截确认短信的关键词等信息。

14930251451494.jpg!small 

解码后得出下列url:

http://139.196.36.***:8123/alp***/servlet/GetFeeInfo

http://139.196.36.***:8123/alp***/servlet/ADGetWapCfg

http://139.196.36.***:8123/alp***/servlet/GetWapUpload

14930251522209.png!small 

(2) 启动后,启动activity调用方法检测app状态。

14930251584310.jpg!small 

(3) 写入配置信息。

1493025164267.jpg!small

配置文件filter.data的信息。

14930252051357.jpg!small 

Filter.data的部分内容如下:

14930252186072.png!small  

(4) 接收不同action执行不同的操作。

14930252288075.jpg!small

14930252405533.png!small 

(5) 接收action=com.android.sdk.rev.cmd.WapCfgCust后获取扣费信息。

14930252455048.jpg!small 

14930252493656.png!small 

(6) 抓包抓到从pay/servlet/ADGetWapCfg返回短信扣费的信息,如下:

14930252557076.jpg!small 

14930252619361.jpg!small 

(7) 读取并解析从网络端返回的数据。

14930252689032.jpg!small 

14930252738908.jpg!small 

(8) 解析数据后将扣费短信信息传送到SyncaService,设置渠道id并发送扣费短信。

14930252787778.jpg!small 

14930252843529.jpg!small 

14930252925416.jpg!small 

(9) 监听接收短信广播,与Filter.data中的关键字内容进行比较,判断是否进行拦截及获取须回复的确认短信内容。

14930252984034.png!small 

从Filter.data文件中cnfinfo_rule字段获取确认短信内容,并发送确认短信。

14930253032246.png!small 

4.4.3 家族溯源信息

通过木马获取扣费信息的服务器域名进行溯源。

14930253112587.png!small 

此人曾收sp业务壳,具有很大嫌疑。 

14930253178223.png!small

4.5 云偷

该家族伪装成色情播放器或系统应用进行传播,通过色情诱导下载或者恶意病毒安装到用户设备上,成功安装后将通过云端获取SP扣费信息,窃取用户话费.同时该家族还存在私自下载推广其它应用的行为.

14930253257297.png!small 

4.5.1 病毒运行流程

14930253326531.png!small 

4.5.2 技术点分析

(1) 样本启动后初始化信息

14930253391914.jpg!small 

(2) Com.ks.bjt.a.g加载assets/kx调用com.kx.c.KXU

14930253461105.jpg!small 

(3) Com.ks.bjt.a.g的a()到o()别对应com.rt.m.Mh.KXU中的a()到o()方法,分别进行获取广告资源,私自下载其他软件,私自发送短信,创建桌面快捷方式,检测手机运营商信息等操作;

14930253532600.jpg!small14930253603920.jpg!small  

(4) com.rt.m.Mh.KXU中各个方法对应的行为

1493025365270.png!small 

(5) o(Context)方法调用excHqSPs方法从服务器获取扣费短信信息。

14930253717321.jpg!small 

从服务器http://ldjk.t***oft.com/sp/getSPCode获取扣费短信信息。

14930253776414.jpg!small 

从网络端返回的扣费短信信息,包括运营商,号码,信息内容,拦截短信关键词,地区等信息:

14930253834369.jpg!small 

调用isCheckDay方法对比pre_file_name文件中的值是否过时。

149302538875.jpg!small 

pre_file_name文件内容:

14930253943552.jpg!small 

调用saveSp方法,创建数据库sm.db,并把从网络端获取的数据经过筛选后保存进数据库。

14930253995548.jpg!small 

数据库sm.db的内容:

14930254056763.jpg!small 

(6) e(Context)方法 调用doSm(context)方法读取数据库中的扣费短信信息并发送短信。

14930254165224.jpg!small 

14930254671014.jpg!small 

拦截包含关键词的短信。

14930254728003.jpg!small 

4.6 笨偷

此家族主要伪装成系统应用,并且主要通过其它恶意程序进行传播,病毒成功安装后即向本地配置的SP号码发送扣费信息,导致用户话费被窃取。

该木马启动后通过onCreat方法中判断手机网络的标识号,根据其标识号发送对应的扣费短信内容到对应的号码,短信发送后弹出“程序错误”的信息。同时成功发送扣费信息后将隐藏图标避免用户发现。

14930254804644.jpg!small

4.7 截偷

主要伪装成游戏或者工具类应用进行传播,该木马在本地配置了一些固定的SP扣费信息,木马成功安装后将根据运营商发送特定的SP扣费短信,伺机窃取用户话费,扣费完成后会删除相关的扣费短信避免用户发现异常。

14930254874260.png!small 

(1) 软件启动后启动服务MainService和 ForListen。

14930254919259.jpg!small 

(2) MainService判断手机运营商类型,分别调用Sms1,Sms2,Sms3私自发送短信。

方法Sms1():

14930255004099.png!small 

方法Sms2():

1493025507591.jpg!small 

方法Sms3():

14930255189260.png!small 

(3) 广播接收器Forboot拦截指定短信。

14930255258860.jpg!small 

(4) 删除用户手机短信记录中的指定号码记录。

14930255293578.png!small 

五 清理方案

使用腾讯手机管家卸载病毒即可清除,部分安装到手机系统的木马需要授予root权限。

freebuf-logo.jpg 

 1493025539566.jpg!small

六 安全建议

6.1 检查每个应用程序的权限:安装一个Android应用程序时,需要先确认程序所申请的权限,警惕短信相关的权限申请,一些手机厂商内置有权限管理软件,建议禁用非正规软件的短信权限以减少风险。

 14930255446476.png!small

6.2 安装安全软件并保持更新: 安装腾讯手机管家之类的安全软件,可以及时发现木马病毒并帮助清除 。

6.3 从正规应用程序商店下载软件:Android应用市场鱼龙混杂,许多不正规的应用市场上线软件时并未经过安全检测,因此存在许多安全隐患,不要在小网站下载破解,修改版程序以减少风险 。

6.4 从正规渠道购买手机: 建议用户在购买新手机时应尽量选择大型正规卖场,避免手机系统被装入恶意预装软件。

6.5 养成产看账单详情的习惯: 建议用户在账单日及时查看消费详情的,及时发现可疑的扣费信息。

* 本文作者:腾讯手机管家(企业帐号),转载请注明来自FreeBuf.COM

一、摘要

1.1 话费作为的最便捷的支付,比较适合“闷声发大财”。

隐藏在话费背后的SP服务可以很方便的帮助不怀好意的人将用户话费放到自己的口袋,少则扣费几十元,多则可能消费几百元积少成多累计起来也是暴力。比如前段时间首起恶意扣费软件案影响设备数600万台,非法获利6726余万元。

1.2 短信扣费类木马分为两大流派。

势力最大的一派以暗扣类游戏为主(占据市场份额最大),它们深谙用户用户心理,利用用户操作习惯,设置陷阱诱骗用户点击通过订阅SP服务进行变现。另外一派则以后台无图标应用为主,通过ROOT恶意木马,ROM预装等方式偷偷潜伏进去用户设备,后台自动发送SP扣费短信进行变现。

1.3 从SP扣费信息来源看,分成本地硬编码和云端平台获取两种。

本地硬编码含有几个或者几十个扣费通道,云端平台是一种无穷无尽的扣费通道,SP不死就可以持续扣费,目前主流的短信扣费以云端获取为主,木马通常还自带清理现场的功能。

14930247717680.png!small 

14930247771197.png!small 

1.4 从产业链上看,SP代理商,流量商,以及开发者是产业链中的主要角色。

开发者从SP代理商获取到SP扣费信息植入到应用中,然后从流量商手中购买流量将恶意应用安装到用户手机,最终通过订阅各类SP服务变现。

1.5 短信扣费木马的主要传播渠道主要有五种。

从传播渠道看,主要有游戏破解网站、软件下载站、广告联盟、部分应用市场以及一些地下黑流量推广(比如通过色情播放器传播)。

1.6 从拦截的短信扣费木马的家族看,有能力大规模传播的还是少数。

目前腾讯反诈骗实验室通过海量样本分析发现,短信扣费木马主要包含有以下病毒家族:

14930247834095.png!small 

二、背景

2.1 用户安装盗版或者修改版游戏被恶意扣费

14930247893373.png!small 

14930247941539.png!small 

2.2 首起恶意扣费软件案涉案金额6700万元

14930248009775.png!small 

2.3 话费支付的正确打开方式和恶意实现

14930248141319.jpg!small 

  

14930248187412.jpg!small 

三、短信扣费木马影响面

3.1 用户感染趋势变化

3.1.1 今年1月份开始感染用户开始飙升,并且逐步处于稳步微增的

14930248247733.png!small 

3.1.2 从感染区域分布看,从大到小排序 广东,四川,河南,湖南,江苏,贵州,广西等

14930248315178.png!small 

3.1.3 短信扣费木马变化趋势

从收集样本数看,短信扣费木马样本数处于增长趋势,4月份尚未过半,样本收集量已经接近3月份的总量。

14930249867870.png!small 

3.2 扣费恶意代码寄生的应用类型

14930249908268.png!small 

 (1) 刚需色情,用户主动下载或被推广安装 

14930249963135.png!small 

(2) 娱乐游戏,用户主动下载或推广安装

14930250003407.png!small14930250039618.png!small  

(3) 无图标或者伪装系统应用,通过恶意推广或ROM内置

       14930250078582.png!small        14930250105608.png!small

3.3 主要传播渠道

(1) 恶意广告推广:用户访问小说、视频网站弹出的恶意广告。

                 14930250164928.jpg!small

(2) 应用市场:这些应用市场对于应用的安全性要求较低,恶意应用很容易就可以上架传播。

(3) 软件或游戏下载站:提供各种破解,修改版应用下载,存在一些诱导下载广告位或恶意应用下载。

14930250274180.png!small 

(4) 暗流量:已经潜伏在用户电脑内的恶意应用,通过弹窗,诱导提示或者静默自动推广。

(5) ROM内置:通过与一些山寨机合作直接植入到ROM内,或在终端出厂后在销售环节植入。

3.4 传播四步骤

* 木马作者通过SP代理商获取获得扣费通道。

* 木马作者将恶意扣费代码封装到恶意应用。

* 木马作者购买流量,通过各种渠道将恶意应用推广安装到用户手机。

* 用户手机中招,通过SP订阅服务,木马作者牟利,各方按照协议进行分成皆大欢喜.。

14930250352406.png!small 

四 流行短信扣费木马家族

4.1 短信扣费五大家族

14930250415140.png!small 

4.2 各家族的技术点对比

14930250472212.png!small 

4.3 游戏土匪

此类型是目前最常见的类型,影响面也是最广的。通常手段是重打包其他游戏,植入扣费项目,在用户游戏过程中频繁弹出诱导性弹框,经常使用“礼包”,“领取”,”免费”,”优惠”等字眼诱导用户点击,并故意弱化收费提示,让用户误以为可以免费领取,用户点击后将通过话费购买道具。

此类型木马因为来钱快属于暴利行业,为了提升扣费的用户体验以及对抗检测一直处于攻防对抗中,扣费信息从一开始本地硬编码,到如今普遍通过云端控制下发;扣费弹框的提示逐渐弱化扣费提示信息,以诱骗更多的用户点击。

【弱化提示】:扣费提示人眼可见,但是可以放在用户不容易注意的地方。

14930250541747.png!small 

14930250603995.png!small 

【背景色隐藏】:将扣费隐藏在浅色背景中,刻意突出游戏按钮。

14930250684813.png!small14930250738583.jpg!small  

【游戏过程中扣费提示】:用户玩的如痴如醉,脑袋犯浑的时候,要不要扣个费玩玩? 

14930250939238.png!small14930250997048.png!small  

【游戏过程中道具】:要想变得更强,装备当然得升级下,当然变强的机会你需要你的手机话费充足。

14930251158109.png!small 

【进击的用户体验】:用户越来越小心,收入下降了怎么办,于是小伙伴的眼睛就变瞎了T_T

14930251216627.jpg!small 

4.4 梵偷

4.4.1 家族简述

该家族通常伪装成色情软件诱骗用户下载安装,同时它也会有一切其它恶意程序合作通过ROOT等强制安装方式将无图标的扣费木马强制安装到用户设备,安装成功了通过云端获取SP扣费信息,伺机窃取用户的话费。常见软件名有魅影视频,美女看看,禁播视频,禁片大全,无码神播。

14930251386099.png!small 

4.4.2 技术点分析

(1) 从云端通过接口获取扣费信息,如扣费短信信息,包括目标号码,发送内容,发送间隔,拦截确认短信的关键词等信息。

14930251451494.jpg!small 

解码后得出下列url:

http://139.196.36.***:8123/alp***/servlet/GetFeeInfo

http://139.196.36.***:8123/alp***/servlet/ADGetWapCfg

http://139.196.36.***:8123/alp***/servlet/GetWapUpload

14930251522209.png!small 

(2) 启动后,启动activity调用方法检测app状态。

14930251584310.jpg!small 

(3) 写入配置信息。

1493025164267.jpg!small

配置文件filter.data的信息。

14930252051357.jpg!small 

Filter.data的部分内容如下:

14930252186072.png!small  

(4) 接收不同action执行不同的操作。

14930252288075.jpg!small

14930252405533.png!small 

(5) 接收action=com.android.sdk.rev.cmd.WapCfgCust后获取扣费信息。

14930252455048.jpg!small 

14930252493656.png!small 

(6) 抓包抓到从pay/servlet/ADGetWapCfg返回短信扣费的信息,如下:

14930252557076.jpg!small 

14930252619361.jpg!small 

(7) 读取并解析从网络端返回的数据。

14930252689032.jpg!small 

14930252738908.jpg!small 

(8) 解析数据后将扣费短信信息传送到SyncaService,设置渠道id并发送扣费短信。

14930252787778.jpg!small 

14930252843529.jpg!small 

14930252925416.jpg!small 

(9) 监听接收短信广播,与Filter.data中的关键字内容进行比较,判断是否进行拦截及获取须回复的确认短信内容。

14930252984034.png!small 

从Filter.data文件中cnfinfo_rule字段获取确认短信内容,并发送确认短信。

14930253032246.png!small 

4.4.3 家族溯源信息

通过木马获取扣费信息的服务器域名进行溯源。

14930253112587.png!small 

此人曾收sp业务壳,具有很大嫌疑。 

14930253178223.png!small

4.5 云偷

该家族伪装成色情播放器或系统应用进行传播,通过色情诱导下载或者恶意病毒安装到用户设备上,成功安装后将通过云端获取SP扣费信息,窃取用户话费.同时该家族还存在私自下载推广其它应用的行为.

14930253257297.png!small 

4.5.1 病毒运行流程

14930253326531.png!small 

4.5.2 技术点分析

(1) 样本启动后初始化信息

14930253391914.jpg!small 

(2) Com.ks.bjt.a.g加载assets/kx调用com.kx.c.KXU

14930253461105.jpg!small 

(3) Com.ks.bjt.a.g的a()到o()别对应com.rt.m.Mh.KXU中的a()到o()方法,分别进行获取广告资源,私自下载其他软件,私自发送短信,创建桌面快捷方式,检测手机运营商信息等操作;

14930253532600.jpg!small14930253603920.jpg!small  

(4) com.rt.m.Mh.KXU中各个方法对应的行为

1493025365270.png!small 

(5) o(Context)方法调用excHqSPs方法从服务器获取扣费短信信息。

14930253717321.jpg!small 

从服务器http://ldjk.t***oft.com/sp/getSPCode获取扣费短信信息。

14930253776414.jpg!small 

从网络端返回的扣费短信信息,包括运营商,号码,信息内容,拦截短信关键词,地区等信息:

14930253834369.jpg!small 

调用isCheckDay方法对比pre_file_name文件中的值是否过时。

149302538875.jpg!small 

pre_file_name文件内容:

14930253943552.jpg!small 

调用saveSp方法,创建数据库sm.db,并把从网络端获取的数据经过筛选后保存进数据库。

14930253995548.jpg!small 

数据库sm.db的内容:

14930254056763.jpg!small 

(6) e(Context)方法 调用doSm(context)方法读取数据库中的扣费短信信息并发送短信。

14930254165224.jpg!small 

14930254671014.jpg!small 

拦截包含关键词的短信。

14930254728003.jpg!small 

4.6 笨偷

此家族主要伪装成系统应用,并且主要通过其它恶意程序进行传播,病毒成功安装后即向本地配置的SP号码发送扣费信息,导致用户话费被窃取。

该木马启动后通过onCreat方法中判断手机网络的标识号,根据其标识号发送对应的扣费短信内容到对应的号码,短信发送后弹出“程序错误”的信息。同时成功发送扣费信息后将隐藏图标避免用户发现。

14930254804644.jpg!small

4.7 截偷

主要伪装成游戏或者工具类应用进行传播,该木马在本地配置了一些固定的SP扣费信息,木马成功安装后将根据运营商发送特定的SP扣费短信,伺机窃取用户话费,扣费完成后会删除相关的扣费短信避免用户发现异常。

14930254874260.png!small 

(1) 软件启动后启动服务MainService和 ForListen。

14930254919259.jpg!small 

(2) MainService判断手机运营商类型,分别调用Sms1,Sms2,Sms3私自发送短信。

方法Sms1():

14930255004099.png!small 

方法Sms2():

1493025507591.jpg!small 

方法Sms3():

14930255189260.png!small 

(3) 广播接收器Forboot拦截指定短信。

14930255258860.jpg!small 

(4) 删除用户手机短信记录中的指定号码记录。

14930255293578.png!small 

五 清理方案

使用腾讯手机管家卸载病毒即可清除,部分安装到手机系统的木马需要授予root权限。

freebuf-logo.jpg 

 1493025539566.jpg!small

六 安全建议

6.1 检查每个应用程序的权限:安装一个Android应用程序时,需要先确认程序所申请的权限,警惕短信相关的权限申请,一些手机厂商内置有权限管理软件,建议禁用非正规软件的短信权限以减少风险。

 14930255446476.png!small

6.2 安装安全软件并保持更新: 安装腾讯手机管家之类的安全软件,可以及时发现木马病毒并帮助清除 。

6.3 从正规应用程序商店下载软件:Android应用市场鱼龙混杂,许多不正规的应用市场上线软件时并未经过安全检测,因此存在许多安全隐患,不要在小网站下载破解,修改版程序以减少风险 。

6.4 从正规渠道购买手机: 建议用户在购买新手机时应尽量选择大型正规卖场,避免手机系统被装入恶意预装软件。

6.5 养成产看账单详情的习惯: 建议用户在账单日及时查看消费详情的,及时发现可疑的扣费信息。

* 本文作者:腾讯手机管家(企业帐号),转载请注明来自FreeBuf.COM

SySS Radio Hack Box是一款针对无线键盘的PoC工具,它可以帮助研究人员利用无线键盘(采用了AES加密的键盘)中的键击注入漏洞来实施攻击。接下来,我们会给大家演示这款工具的使用,测试目标为Cherry B.Unlimited AES无线键盘。

1.png

实验工具

1.    树莓派Raspberry Pi

2.    树莓派无线入侵工具盒(由LCD显示屏、LED灯和一些按钮组成)

3.    nRF24LU1(Bastille威胁研究团队制作的nrf固件) +USB无线适配器(CrazyRadio PA USB网卡

4.    Python2

5.    PyUSB

自动启动

为了在树莓派启动完成之后让我们的无线入侵工具盒(Radio Hack Box)自动运行起来,我们可以使用GitHub库中提供的init.d脚本,或者使用下面给出的启动命令:

@reboot python2 /home/pi/radiohackbox/radiohackbox.py &

工具使用

我们的无线入侵工具盒目前只有下面这四种功能按钮:

-开始/停止记录

-开始复现攻击

-开始攻击(键击注入攻击)

-开始扫描

注:在按下RECORD(记录)按钮之后立即按下SCAN(扫描)按钮,我们就可以直接关机了,而且也不会破坏整个文件系统。

2.png

视频演示

在下面这个视频中,我们会演示如何使用SySSRadio Hack Box来对采用了AES加密的无线键盘进行键击注入攻击。

树莓派+无线入侵工具盒

我们手工制作的工具盒由一块LCD屏、LED灯、按钮、电阻、以及电线组成,并且我们将其焊在了一块实验电路板上。下面给出的三张图片分别为电路板的正面、背面和全局图:

3.png

4.png

5.png

免责声明

我们开发这款工具的目的是为了让制造商以及社区意识到这些无线输入设备所面临的安全威胁,此工具仅供测试和教育使用,请勿用于非法目的。

* 参考来源:Github, FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM