前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >木马病毒怎么回事?带你深度分析了解木马病毒!

木马病毒怎么回事?带你深度分析了解木马病毒!

原创
作者头像
极安御信安全研究院
发布2023-08-03 20:28:34
4930
发布2023-08-03 20:28:34
举报

一、病毒简介

SHA256:3110f00c1c48bbba24931042657a21c55e9a07d2ef315c2eae0a422234623194 MD5:ae986dd436082fb9a7fec397c8b6e717 SHA1:31a0168eb814b0d0753f88f6a766c04512b6ef03

二、行为分析

老套路,火绒剑监控:

这边可以看见创建了一个exe,又为他设置了注册表自启动;

这里是进行网络链接操作,同时不断获取信息保存文件到本地,这是请求的信息:

general-second.org-help.com/dl_ex1.png?m=000C29AB634E&NOTE=Ni4xIDogMC4wfDV8djEuMAo=

通过微步云沙箱在线进行扫描,结果如下:

三、静态分析

首先查查壳,这里并没有加壳,导入表信息更多是和网络操作有关的函数:

直接拖到IDA分析:

开局创建互斥体防多开,检测之后就到了关键else中:

3.1 sub_4011E0

这里是解密函数名和模块名,随后进行加载,获取地址,那么对于这种情况没有比动态调试更简单的方法了:

那么解密后的结果如下,根据这些函数也大致知道这个木马做了些什么事:

3.2 sub_403600

查看此函数获取路径:

那么此函数就是获取应用程序路径,继续向下看:

显而易见,这里是查看当前程序路径,如果不是自己拷贝的路径,就自我拷贝,然后在注册表设置自启动,运行成功弹窗。

3.3 sub_401580

GetAdaptersInfo:

Next 类型: 结构_IP_ADAPTER_INFO* 指向适配器列表中的下一个适配器的指针。 ComboIndex 类型:DWORD 保留。 AdapterName[MAX_ADAPTER_NAME_LENGTH + 4] 类型: char[MAX_ADAPTER_NAME_LENGTH + 4] 适配器名称的 ANSI 字符串。 Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4] 类型: char[MAX_ADAPTER_DESCRIPTION_LENGTH + 4] 包含适配器说明的 ANSI 字符串。 AddressLength 类型: UINT 适配器的硬件地址的长度(以字节为单位)。 Address[MAX_ADAPTER_ADDRESS_LENGTH] 类型: BYTE[MAX_ADAPTER_ADDRESS_LENGTH] 表示为 BYTE 数组的适配器的硬件地址。 Index 类型:DWORD 适配器索引。 当禁用并启用适配器或在其他情况下,适配器索引可能会更改,不应被视为持久性。 Type 类型: UINT 适配器类型。 适配器类型的可能值列在 Ipifcons.h 头文件中。 下表列出了适配器类型的常见值,尽管 Windows Vista 及更高版本上可能提供其他值。 Value 含义 MIB_IF_TYPE_OTHER 1 其他类型的网络接口。 MIB_IF_TYPE_ETHERNET 6 以太网网络接口。 IF_TYPE_ISO88025_TOKENRING 9 MIB_IF_TYPE_TOKENRING MIB_IF_TYPE_PPP 23 PPP 网络接口。 MIB_IF_TYPE_LOOPBACK 24 软件环回网络接口。 MIB_IF_TYPE_SLIP 28 ATM 网络接口。 IF_TYPE_IEEE80211 71 IEEE 802.11 无线网络接口。 注意 此适配器类型在 Windows Vista 及更高版本上返回。 在 Windows Server 2003 和 Windows XP 上,IEEE 802.11 无线网络接口返回 MIB_IF_TYPE_ETHERNET的适配器类型。 DhcpEnabled 类型: UINT 一个选项值,该值指定是否为此适配器启用动态主机配置协议 (DHCP) 。 CurrentIpAddress 类型: PIP_ADDR_STRING 保留。 IpAddressList 类型: IP_ADDR_STRING 与此适配器关联的 IPv4 地址列表表示为 IP_ADDR_STRING 结构的链接列表。 适配器可以分配多个 IPv4 地址。 GatewayList 类型: IP_ADDR_STRING 此适配器的网关的 IPv4 地址,表示为 IP_ADDR_STRING 结构的链接列表。 适配器可以分配多个 IPv4 网关地址。 此列表通常包含此适配器的默认网关的 IPv4 地址的单个条目。 DhcpServer 类型: IP_ADDR_STRING 此适配器的 DHCP 服务器的 IPv4 地址,表示为 IP_ADDR_STRING 结构的链接列表。 此列表包含此适配器的 DHCP 服务器的 IPv4 地址的单个条目。 值为 255.255.255.255 表示无法访问 DHCP 服务器,或者正在达到。 仅当 DhcpEnabled 成员为非零时,此成员才有效。 HaveWins 类型: BOOL 一个选项值,该值指定此适配器是否使用 Windows Internet 名称服务 (WINS) 。 PrimaryWinsServer 类型: IP_ADDR_STRING 主 WINS 服务器的 IPv4 地址,表示为 IP_ADDR_STRING 结构的链接列表。 此列表包含此适配器的主 WINS 服务器 IPv4 地址的单个条目。 仅当 HaveWins 成员为 TRUE 时,此成员才有效。 SecondaryWinsServer 类型: IP_ADDR_STRING 辅助 WINS 服务器的 IPv4 地址表示为 IP_ADDR_STRING 结构的链接列表。 适配器可以分配多个辅助 WINS 服务器地址。 仅当 HaveWins 成员为 TRUE 时,此成员才有效。 LeaseObtained 类型: time_t 获取当前 DHCP 租约的时间。 仅当 DhcpEnabled 成员为非零时,此成员才有效。 LeaseExpires 类型: time_t 当前 DHCP 租约过期的时间。 仅当 DhcpEnabled 成员为非零时,此成员才有效。

那么这里就是获取主机的相关信息,根据后面格式化字符串可推测这里是获取网卡相关信息。

3.4 sub_401770
3.5 sub_402790
3.6 CreateThread

这里进入402520函数,里面有个关键函数402A50:

继续向下就是修改自启动注册表和屏保有关的注册表,拼接请求命令,通过cmd执行:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、病毒简介
  • 二、行为分析
  • 三、静态分析
    • 3.1 sub_4011E0
      • 3.2 sub_403600
        • 3.3 sub_401580
          • 3.4 sub_401770
            • 3.5 sub_402790
              • 3.6 CreateThread
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档