Linux勒索样本KillDisk分析报告
字数 1190 2025-08-25 22:58:56
Linux勒索样本KillDisk分析教学文档
一、样本概述
KillDisk是一款知名的恶意软件,最初由BlackEnergy组织开发,用于攻击乌克兰电网和银行系统。本分析针对其Linux平台的变种勒索样本,主要特点包括:
- 修改系统grub导致开机异常
- 加密系统多个关键目录下的文件
- 使用三重DES加密算法
- 每个文件使用随机生成的密钥加密
- 勒索信息通过修改后的grub界面显示
二、样本基本信息
文件类型:Linux 64位可执行程序
样本特征:
- 未加密
- 未加壳
- 主要函数:main、print_bnr、bypass_dir、crypt_file、gen_key等
相关HASH值:
8F43BDF6C2F926C160A65CBCDD4C4738A3745C0C
26633a02c56ea0df49d35aa98f0fb538335f071c
84a2959b0ab36e1f4e3abd61f378dc554684c9fc
95fc35948e0ce9171dfb0e972add2b5d03dc6938
92fe49f6a758492363215a58d62df701afb63f66
b2e566c3ce8da3c6d9b4dc2811d5d08729dc2900
2379a29b4c137afb7c0fd80a58020f5e09716437
25074a17f5544b6f70ba3e66ab9b08adf2702d41
三、技术分析
1. 执行流程
-
创建守护进程:
daemon(0, 0); // 创建Linux守护进程 -
修改grub启动项:
- 通过
print_bnr函数实现 - 修改
/etc/default/grub或/boot/grub/menu.lst或/boot/loader.rc - 写入
/etc/grub.d/40_custom文件 - 删除
/etc/grub.d目录下非40_custom的文件 - 执行
update-grub命令更新配置
- 通过
-
文件加密:
- 分两个阶段加密不同目录
- 使用三重DES算法
- 每个文件使用随机生成的密钥
2. 加密目标目录
第一阶段加密目录:
/boot
/bin
/sbin
/lib/security
/lib64/security
/usr/local/etc
/etc
/mnt
/share
/media
/home
第二阶段加密目录:
/usr
/tmp
/opt
/var
/root
3. 加密算法实现
-
密钥生成:
- 通过
gen_key函数为每个文件生成3个随机密钥 - 密钥生成基于随机数
- 通过
-
文件加密过程:
- 文件分块处理,每块4096字节
- 使用三个加密函数:
crypt_all、crypt_10mb、crypt_1mb - 最终都调用
my_ecb_crypt实现三重DES加密
-
加密特点:
- 每个文件使用独立随机密钥
- 加密后无法恢复(除非有密钥)
- 跳过grub相关文件避免系统完全无法启动
四、防御与检测
1. 防御措施
-
系统防护:
- 定期备份重要文件
- 限制
/etc/grub.d目录的写权限 - 监控
update-grub命令的执行 - 使用文件完整性监控工具
-
安全实践:
- 保持系统更新
- 限制root权限使用
- 使用SELinux或AppArmor
2. 检测指标
-
文件系统变化:
/etc/grub.d/40_custom异常修改- 关键目录文件被修改为加密状态
-
进程行为:
- 异常守护进程创建
- 大量文件读取操作
-
网络行为:
- 比特币地址通信(虽然样本未明确包含)
五、勒索软件发展趋势
-
平台扩展:
- 从Windows向Linux、Android、IoT设备迁移
- 云环境和数据库成为新目标
-
技术演变:
- 从简单文件加密到修改引导区
- 多语言实现(C/C++, Java, Python, Go等)
-
开源影响:
- 开源勒索软件降低攻击门槛
- 变种数量快速增长
六、相关资源
开源勒索软件参考:
https://github.com/eyecatchup/Critroni-php
https://github.com/PanagiotisDrakatos/JavaRansomware
https://github.com/NTNUCIC/ransomware
https://github.com/Monkey-D-Groot/Ransomware
https://github.com/gdbinit/gopher
https://github.com/NullArray/Cypher
https://github.com/qnighy/ransomware-demo
https://github.com/alextspy/Ransomware
https://github.com/CHRISTOPHERDIEHL/Ransomware
https://github.com/ultra723/ransomware
https://github.com/tfairane/AndroMalware
https://github.com/AlphaDelta/DUMB
https://github.com/mymortal/Ransomware
https://github.com/brucecio9999/CryptoWire-Advanced-AutoIt-ransomware-Project
https://github.com/lucdew/goransomware
https://github.com/zongyuwu/RansomRB
https://github.com/SadFud/GG-Ransomware
https://github.com/marcosValle/RansPy
参考链接:
https://www.bleepingcomputer.com/news/security/killdisk-ransomware-now-targets-linux-prevents-boot-up-has-faulty-encryption/
http://www.welivesecurity.com/2017/01/05/killdisk-now-targeting-linux-demands-250k-ransom-cant-decrypt/
https://www.bleepingcomputer.com/news/security/killdisk-disk-wiping-malware-adds-ransomware-component/
http://www.welivesecurity.com/2016/12/13/rise-telebots-analyzing-disruptive-killdisk-attacks/
http://blog.nsfocus.net/analysis-ukrenergo-blackout-event-ukraine/