首页| 论坛| 搜索| 消息
主题:LockBit 4.0 vs 3.0:技术升级还是品牌续命?最新LockBit 4.0分析报告
z3960发表于 2025-06-18 11:05
机数,与常量字符串经过一系列运算得到12bytes字符串校验值,实际使用该校验值已经能够较精确地判断文件是否被加密.
第二次校验ida伪码如下:
第二次校验c语言代码如下:
复制代码 隐藏代码bool is_file(BYTE* a2){char* magic2="FBIsosite";//常量字符串值BYTE v4 = a2[0];BYTE v8 = a2[2] ^ v4 ^ 9;char dst[10] = { 0 };for (DWORD i = 0; i < 9; i++){*(BYTE*)(a2 + i + 3) ^= v8;*(BYTE*)(a2 + i + 3) -= v8;*(BYTE*)(a2 + i + 3) ^= v4;}memcpy(dst, a2 + 3, 9);if (!strcmp(dst, magic2)){return true;}return false;}
文件加密部分掺杂着一些干扰指令,不过不影响分析.
使用64位整数存储文件大小,保证能加密较大的文件.
对于小于1mb的文件,全部加密,对于大于1mb的文件,对如下区间作相应处理:
复制代码 隐藏代码伪码变量定义:block_sz = 9 * (file_size / 100)//加密块大小gap_sz = ((file_size - 27 * (file_size / 100)) >> 1)//间隔大小block_start = block_sz + gap_sz //一组(加密+不加密)数据大小以下为加密区间:[0, block_sz]以下为不加密区间:
使用chacha20分块加密写入文件,分块以避免加密时占用过多内存。

4.2.3 程序常规行为

4.2.3.1 获取api地址

样本采用多次hash获取api地址方法,大致上是先hash获取一次模块基址,再hash api名字获取api地址.
例子(调用NtProtectVirtualMemory):


4.2.3.2 hash算法

整个样本统一使用以下hash算法:


4.2.3.3 绕过保护

Hook ETW实现绕过保护.


4.2.3.4 解密信息

解密一些字符串,包含chacha20常量(不再赘述) 和校验用字符串"FBIsosite".
解密勒索信.


4.2.3.5 判断受害者地区

根据键盘输入法代码检测是否是俄语输入法.


4.2.3.6 提权

常规提权操作.

4.2.3.7 解析命令行

参数如下:(为程序的--help选项输出)
复制代码 隐藏代码-m local:只加密本地文件-m net:包含网络路径-p :加密指定路径-f:强制加密,无视文件夹名限制-k:不执行自删除-q:静默模式,不输出-nomutex:不创建互斥锁,即非单例运行.
原文如下:


4.2.3.8获取系统信息

使用api获取系统架构和版本.
读取pe头获取子系统版本.


4.2.3.9 线程初始化

该程序使用生产者-消费者模型.此处创建线程以及用于控制的信号量.


4.2.3.10 自删除

根据输入配置决定是否进行自删除.


4.2.3.11 删除卷影备份

调用wmi删除卷影备份.

改变文件索引方式.


4.2.3.12 初始化网络操作

初始化socket.
调用WSAIOctl获取异步客户端连接api ConnectEx.原因不再赘述.
获取本机地址.
初始化iocp.


4.2.3.13 扫描445端口

遍历arp缓存中的所有ip.
创建ip遍历获取线程.创建ip连接测试(扫描)线程.即iocp的完成包处理线程.


4.2.3.14 停止相关服务

打开遍历服务对象.
枚举服务.
遍历结果中的服务名.使用前文所述hash算法比对服务名.
打开服务对象.
如果服务在运行,则发送停止控制码.
判断服务是否已停止.
未停止则再次尝试.
释放资源.


4.2.3. 15 遍历驱动器

拷贝A-Z大写字母表.

遍历所有本地驱动器.

遍历网络驱动器.

判断驱动器类型.
为本地驱动器,立即释放信号量.为网络驱动器,则进入队列.
为cd-rom则跳过.

4.2.3.16 文件路径获取线程

等待加密信号量.获得信号量后,开始加密.
先在每一个路径下写入前文所述勒索信.再根据文件后缀白名单和目录白名单,获取要加密的文件目录及其中文件.
写入公用缓冲区,由加密线程加密.
文件后缀白名单如下:
复制代码 隐藏代码[".exe", ".dll", ".sys"]
目录白名单如下: 复制代码 隐藏代码["Temp", "$Recycle.Bin", "$RECYCLE.BIN","System Volume Information", "Boot", "Windows","WINDOWS"]
4.2.3.17 扫描远程桌面



4.2.3.18 结束工作

下一页上一页  (2/3)
回帖(3):
3 # huwg
06-19 00:49
了解一下了
2 # huwg
06-19 00:49
来看看了
1 # 爱我中华
06-18 11:11
长知识了

全部回帖(3)»
最新回帖
收藏本帖
发新帖