Risen 勒索软件样本逆向分析
字数 1875 2025-09-23 19:27:38
Risen 勒索软件逆向分析技术报告
1. 样本基础信息
- 文件类型:Windows PE可执行文件
- 加密特征:在原文件扩展名后追加攻击者邮箱地址与用户ID(例如:
.Default@firemail.de].E86EQNTPTT) - 勒索信文件:
Risen_Note.txt和Risen_Guide.hta - 联系方式:
- 主邮箱:Default@firemail.de
- 备用邮箱:default1@tutamail.com
- TOR匿名网络:http://o6pi3u67zyag73ligtsupin5rjkxpfrbofwoxnhimpgpfttxqu7lsuyd.onion
2. 抗检测与持久化技术
2.1 互斥锁机制
- 创建名为
RISEN_MUTEX的互斥体 - 目的:防止多实例运行,避免文件冲突和安全警报
2.2 地理围栏(Geofencing)
- 调用
GetSystemDefaultUILanguageAPI 获取系统语言 - 与硬编码语言黑名单对比(具体语言未列出)
- 匹配则立即自终止,避免攻击特定国家
2.3 持久化方式
- 通过
schtasks.exe创建计划任务 - 任务名称:
SystemDefense(伪装为系统进程) - 确保系统重启后自动运行
3. 文件加密流程
3.1 目标选择逻辑
- 遍历所有驱动器(
GetDriveTypeWAPI) - 只加密本地硬盘(避开网络驱动和移动设备)
- 参考内部配置数组
off_44CB08选择高价值文件类型
3.2 加密算法结构
3.2.1 密钥生成(函数 FUN_00401150)
- 本地随机生成:
- 256-bit 会话密钥
- Nonce(随机数)
- 使用内置RSA公钥加密会话密钥
- 加密结果写入文件头
- 内存中清理明文密钥
3.2.2 加密执行(函数 FUN_00401760)
- 文件分块读取
- 调用ChaCha20流加密(函数
FUN_00402050) - 加密流程:
- ChaCha20生成密钥流(keystream)
- 文件数据与keystream逐字节异或(XOR)
- 覆盖写回原文件
- 文件尾部写入标记:
"RISE"
3.2.3 文件名修改
- 在原扩展名后追加邮箱和用户ID(如:
.txt→.Default@firemail.de].E86EQNTPTT)
4. 勒索信与通信机制
4.1 勒索信内容
- 存储在
Risen_Note.txt和Risen_Guide.hta - 声称窃取数据(文档、工程数据、客户信息等)
- 威胁3天内不付款则泄露或出售数据
- 允许发送3个测试文件用于验证解密能力
4.2 通信渠道
- 主邮箱:Default@firemail.de
- 备用邮箱:default1@tutamail.com(24小时无响应时使用)
- TOR匿名网络博客(72小时无响应时使用)
- Telegram联系方式:@tokyosupp(硬编码在字符串中)
5. 技术总结与防御建议
5.1 技术特点
- 使用ChaCha20流加密 + RSA加密会话密钥
- 分段加密避免性能瓶颈
- 地理围栏避免攻击特定区域
- 计划任务实现持久化
5.2 防御建议
-
预防措施:
- 禁用不必要的计划任务
- 监控异常文件修改行为(尤其是扩展名变更)
- 限制邮箱客户端执行HTA文件
-
检测建议:
- 监控
schtasks.exe创建任务行为 - 检测互斥体
RISEN_MUTEX - 关注语言API的异常调用(地理围栏检测)
- 监控
-
应急响应:
- 断网隔离受感染主机
- 检查计划任务列表
- 检索日志文件
Risenlogs.txt(开发遗留)
6. IOC(入侵指标)
- 互斥体:
RISEN_MUTEX - 计划任务名:
SystemDefense - 勒索信文件:
Risen_Note.txt、Risen_Guide.hta - 加密标记:文件尾部的
"RISE" - 联系方式:Default@firemail.de、default1@tutamail.com、@tokyosupp(Telegram)
附录:分析工具与方法
- 静态分析:DIE(Detect It Easy)、IDA Pro、Ghidra
- 关键API监控:GetSystemDefaultUILanguage、GetDriveTypeW、schtasks.exe
- 加密算法识别:ChaCha20流密码特征(XOR操作与密钥流生成)
报告基于公开样本分析,具体样本行为可能因版本差异而变化。建议结合动态分析验证关键流程。