记一次lpk劫持样本分析
字数 1984 2025-08-24 07:48:22
LPK劫持病毒样本分析报告
1. 样本基本信息
- MD5: 304bbe0e401d84edf63b68588335ceb6
- SHA-1: 8389fb0466449755c9c33716ef6f9c3e0f4e19c8
- SHA-256: 1f3e836b4677a6df2c2d34d3c6413df2c5e448b5bc1d5702f2a96a7f6ca0d7fb
- 文件大小: 52.50 KB (53760 bytes)
- 编译器: Microsoft Visual C++ 6.0
- 加壳方式: UPX加壳
2. 测试环境与工具
- 测试环境: Windows 7
- 分析工具:
- PEID (查壳)
- StudyPE (查看导入表)
- IDA Pro (静态分析)
- x32dbg (动态调试)
- 火绒剑 (行为监控)
3. 样本行为概述
该病毒具有以下主要行为特征:
- 创建隐藏界面的cmd窗口
- 自我复制到系统目录
- 修改网络代理设置
- 连接三个控制域名
- 通过LPK.dll实现DLL劫持
- 感染局域网共享文件夹
- 收集系统信息并发送给控制端
- 接收并执行远程指令
4. 详细分析
4.1 初始运行流程
-
第一次运行行为:
- 创建系统服务"Ghijkl Nopqrstu Wxy"
- 添加注册表键值
- 根据系统时间随机生成文件名
- 将母体拷贝到C:\Windows\目录下(如icykmk.exe)
- 为子文件添加服务自启动项
- 结束并删除母体
-
再次运行行为:
- 加载hra33.dll
- 创建4个线程执行不同功能
4.2 主要功能模块
4.2.1 hra33.dll (LPK劫持模块)
-
文件遍历:
- 查找.exe文件
- 在同目录下创建lpk.dll
- 查找.rar/.zip文件
- 向压缩包内添加lpk.dll
-
劫持机制:
- 检查是否存在lpk.dll
- 若不存在,释放恶意dll文件
- 获取原lpk.dll并替换为恶意版本
- 实现DLL劫持攻击
-
压缩包感染:
- 使用rar shell命令操作
- 检查并解压文件
- 添加lpk.dll到文件夹
- 重新压缩文件
- 删除临时文件
4.2.2 四个主要线程
-
线程1 - 局域网感染:
- 使用内置弱口令列表(如admin/123456等)
- 通过IPC$共享传播病毒
- 利用at命令创建定时任务
- 通过admin$共享传播
-
线程2 - 控制端连接(sbcq.f3322.org):
- 建立socket连接
- 收集系统信息(CPU、内存、系统版本等)
- 发送信息到控制端
- 接收并执行指令
-
线程3 - 控制端连接(www.520123.xyz):
- 功能同线程2
-
线程4 - 控制端连接(www.520520520.org:9426):
- 功能同线程2
- 地址经过Base64加密: "1NTUHRYRExYRExYREx3c0eQJChcRFUM="
4.2.3 指令处理机制
接收到的指令长度>6时进行switch-case匹配:
-
0x10指令:
- 下载恶意代码到临时文件并执行
-
0x12/0x6指令:
- 创建互斥体防止多开
- 随机生成文件名
- 设置优先级
- 更新病毒程序
- 删除服务和注册表
- 执行新程序并退出
-
0x14指令:
- 打开IE浏览器并弹窗
-
0x2/0x4指令:
- 初始化socket连接
- 发送GET请求数据包
5. 查杀与清除步骤
-
终止进程:
- 使用PcHunter等工具结束病毒进程
-
清理注册表:
- 删除HKEY_LOCAL_MACHINE\system\CurrentControlset\services\Ghijkl Nopqrstu Wxy
-
停止并删除服务:
- 停止"Ghijkl Nopqrstu Wxy"服务
- 删除服务对应的exe文件
-
删除相关文件:
- 删除C:\windows\system32\hra33.dll
- 删除所有生成的lpk.dll文件
-
全盘检查:
- 检查并删除所有可疑的随机名exe文件
- 检查压缩包中的lpk.dll
6. 防御建议
-
系统加固:
- 禁用不必要的共享服务
- 修改默认管理员密码
- 限制IPC$共享访问
-
安全监控:
- 监控系统目录异常文件创建
- 监控异常网络连接
- 监控可疑服务创建
-
行为防护:
- 阻止异常DLL加载行为
- 拦截可疑的进程创建操作
- 监控注册表关键位置修改
-
安全意识:
- 不随意打开未知来源文件
- 定期检查系统异常行为
- 保持安全软件更新
7. 技术总结
该病毒样本采用了多种持久化和传播技术:
-
多阶段加载:
- 母体只负责初始部署
- 子程序实现主要功能
- 模块化设计便于更新
-
多种传播方式:
- 局域网弱口令攻击
- DLL劫持感染
- 压缩包感染
-
隐蔽通信:
- 多控制端负载均衡
- 加密控制地址
- 分阶段指令执行
-
反检测机制:
- 随机文件名生成
- 互斥体防多开
- 母体自删除
这种类型的恶意软件对企业内网威胁较大,需要特别防范其横向移动能力。