新WhiteShadow下载器用Microsoft SQL提取恶意软件

 ang010ela 嘶吼专业版

图片

图片

***活动分析

2019年8月,Proofpoint研究人员发现了一系列的传播含有WhiteShadow下载器VB宏的word和Excel附件的恶意邮件活动。

图片

图1: AWhiteShadow***活动中的恶意邮件

WhiteShadow是一种恶意软件交付服务,其中包含Microsoft SQL Server实例来保存下载器提取的主机payload。

下面是***活动的概览:

图片

表 1: WhiteShadow***活动2019年8月和9月的顺序表

image.png

下载器分析

WhiteShadow用SQLOLEDB连接器来连接远程Microsoft SQL Server服务器实例,执行查询,并将结果保存为zip可执行文件的形式。

SQLOLEDB连接器是来自微软的可安装的数据库连接器,在许多office应用中都是默认包含安装的。连接器成功安装在系统中后,就可以被Windows子系统和office文档中的VB宏所使用。研究人员在许多恶意软件中都发现了WhiteShadow的这种方法:

· Agent Tesla

· AZORult

· Crimson

· Nanocore

· njRat

· Orion Logger

· Remcos

· Formbook

恶意软件感染的过程顺序如下:

· 用户启用word或excel文件中的宏;

· 宏到达Microsoft SQL服务器,并根据宏中硬编码的‘Id_No’从指定的数据库表的 ‘Byte_data’列获取ASCII码字符 

· 宏解码ASCII码字符并将数据以二进制模式写入文件

-伪格式: <byte><separator><byte><separator><byte>....

-如图3和图4所示,宏代码将数据分成数组,然后写入磁盘

· 解码后的文件的文件类型为ZIP,其中有一个可执行文件

· 然后宏会从ZIP从提取可执行文件并运行。可执行文件就是前面提到的恶意软件payload

如图2所示:

image.png

图2. WhiteShadow 下载器和恶意软件感染顺序图示

image.png

图3. 用分隔符!将数据分成数组

image.png

图4. 用分隔符,将数据分成数组

image.png

图5: 编码的PKZIP文件ASCII表示

image.png

图6: 解码的PKZIP文件十六进制表示

研究人员发现mssql.somee.com域名的子域名上有多个不同的数据库:

antinio.mssql.somee[.]com

bytesdata.mssql.somee[.]com

fabancho.mssql.somee[.]com

在每个数据库中,WhiteShadow访问的数据都是保存在Data表中,该表含有3列:

· Id_No ; 是payload的主键int识别符

· Byte_data ; payload数据的编码的ASCII码表示

· Net_ver ; payload的customer识别符或版本字符串

Proofpoint研究人员发现在数据库中有行添加、移除,在一些数据库中还有更新。Proofpoint研究人员还发现与 ‘Net_Ver’行的数据以及恶意软件的Affiliate/Group结构有所类似:

image.png

表 2: Net_ver id列和相关的配置的恶意软件id的关联

Id_No ‘4’ 第一次出现为Nanocore,2天后更新为Crimson,其中Net_ver从jay更新为jay2。

研究人员在多个MSSQL主机中发现了相似性,表明是由同一个***者控制的:

bytesdata.mssql.somee[.]com -> Id_No: 9; Net_Ver: oncode

fabancho.mssql.somee[.]com -> Id_No: 2; Net_Ver: oncode

fabancho.mssql.somee[.]com -> Id_No: 2; Net_Ver: nano oncode

除了Net_ver的相似性外,多个数据库中的表重用也表明这些数据库的底层架构也是相关的。

image.png

Payload分析

在分析这些数据库的payload时,研究人员发现了一个恶意软件家族Crimson在研究人员分析期间有多次更新。更新的命令如下:

cownar:

加入可执行文件到Environment.SpecialFolder.CommonApplicationData\\%install_folder%\\updates\\中,并通过Process.Start(exe_path)执行。

cscreen:

获取受感染机器的JPEG截图,并用C2响应命令 capScreen发送截图到C2服务器。

getavs:

该命令与之前分析过的procl命令类似,会议类似下面格式来创建拼接的进程字符串:

       >%process-id%>%process_module_name%><

对每个系统中运行的进程,通过以下方式枚举:

       Process[] processes = Process.GetProcesses();

putsrt:

函数的输入是一个字符串,将该字符串与当前运行的进程可执行文件路径进行比较。如果路径不同,就通过以下命令移动可执行文件:

   File.WriteAllBytes(text, File.ReadAllBytes(execu表Path));

然后安装修改的路径到CurrentVersion AutoRun’注册表:

       SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run

image.png

结论

使用MSSQL查询来提取下一阶段payload在恶意软件中是比较少见的。今年8月底,Proofpoint研究人员发现一起使用WhiteShadow方法的新的分阶段下载器。该下载器是一种全新的恶意软件交付服务,允许不同的***者来将下载器和相关的SQL服务器基础设施都融入***活动中。研究人员发现***者使用WhiteShadow来安装RAT、下载器、keylogger等。

研究人员建议企业密切关注收到的恶意邮件,并对TCP 1433端口上的进行拦截,至少要在防火墙上进行ACL配置。

参考来源:https://www.proofpoint.com/us/threat-insight/post/new-whiteshadow-downloader-uses-microsoft-sql-retrieve-malware

image.png

原文地址:https://blog.51cto.com/u_15127538/2698663

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


本篇内容主要讲解“sqlalchemy的常用数据类型怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“sqlalche...
今天小编给大家分享一下sqlServer实现分页查询的方式有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家
这篇文章主要介绍“sqlmap之osshell怎么使用”,在日常操作中,相信很多人在sqlmap之osshell怎么使用问题上存在疑惑,小编查阅了各式资料,整理出
本篇内容介绍了“SQL注入的知识点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧...
1. mssql权限sa权限:数据库操作,文件管理,命令执行,注册表读取等system。是mssql的最高权限db权限:文件管理,数据库操作等 users-administratorspublic权限:数据库操作 guest-users2、sql server注入执行命令查
sql执行计划如何查看?在SPL庞大的数据中我们不知道如何查看实际数据库中发生了什么事情,有必要定期进行查询优化和索引否则会影响我们后期的SQL的查询速度。那么针对这样的问题我们必须要知道SQL执行的计划,在本文中winwin7小编给大家分享下SQL执
SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点应用非常广泛。不过在使用中,我们会遇到非常多的错误,面对这么庞大的数据库环境,当然会有精确的错误代码的对照季,下面小编分享的
SQL Server本地账户无法登陆出现错误提示:error:40-Could not open a connenction to SQL Server的问题很常见,对于初学者来说可能不知道如何解决,一起来看看下面的解决方案。解决步骤如下:1、这种情况需要开启 SQL Server service
微软推出的SQL2008是一款非常好用的数据库软件,它稳定、功能强大,为众多企业提供了最佳的数据库解决方案,那么我们如何在Windows中安装它呢,一些朋友对SQL Server 2008的安装过程还不是很熟悉,下面就一起来看看SQL Server 2008详细安装图解...
本页概要如果您使用的是 SQL Server 2005备份和还原Sp_detach_db 和 Sp_attach_db 存储过程关于排序规则的说明导入和导出数据(在 SQL Server 数据库之间复
DBCC CHECKIDENT 检查指定表的当前标识值,如有必要,还对标识值进行更正。 语法 DBCC CHECKIDENT ( &#39;table_name&#39; [ , { NORESEED
这里对 SQL Server 字符串函数进行分门别类地列出,便于查阅和记忆,相信大家都在其它方面有高深的编程基础,从字面上来说大家都知道这些函数的意义,就不对这些函数作过多的解释了,主要谈些经验,具体
查询及删除重复记录的方法 1、查找表(people)中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select*frompeoplewherepeopleIdin(selectpe
微软发SQL Server 2008第二个CTP预览版from: http://news.csdn.net/n/20070807/107158.html8月7日消息,微软公司本周发布了SQL Serv
症状当您将数据库备份恢复到另一台服务器时,可能会遇到孤立用户的问题。SQL Server 联机丛书中的孤立用户疑难解答主题中没有讲述解决此问题的具体步骤。本文介绍了如何解决孤立用户问题。更多信息虽然术
当登录SQL Server 2005时可能碰到错误: &#39;No Process is on the Other End of the Pipe&#39;。解决方法:(1)Open up SQL
概要本文描述如何映射标准登录和集成登录来解决在运行 SQL Server 的服务器之间移动数据库时的权限问题。更多信息当您将数据库从一个运行 SQL Server 的服务器移到另一个运行 SQL Se
----------------------------------------问题:该用户与可信的SQL SERVER 连接无关联使用sa用户或自建用户使用“SQL SERVER 身份认证”连接数据
更新日期: 2007 年 5 月 20 日 使用下表可以确定各种版本的 Microsoft SQL Server 2005 支持哪些功能。有关 SQL Server 2005 Enterprise E
当从Excel导入数据到Sql Sever中,可能会出现以下问题:&#xD;&#xA;对于指定的缓冲区大小而言,源列的数据太大