透视俄乌网络战之一:数据擦除软件

数据擦除破坏

    • 1. WhisperGate
    • 2. HermeticWiper
    • 3. IsaacWiper
    • 4. WhisperKill
    • 5. CaddyWiper
    • 6. DoubleZero
    • 7. AcidRain
    • 8. RURansom

数据是政府、社会和企业组织运行的关键要素。数据擦除软件可以在不留任何痕迹的情况下擦除数据并阻止操作系统恢复摧,达到摧毁或目标系统和数据的目的,具有致命的破坏性。

俄乌冲突中,各方势力通过数据擦除恶意软件破坏关键信息基础设施计算机的数据,达到深度致瘫的效果,同时窃取重要敏感信息。

俄乌军事冲突中数据擦除软件

名称发现时间发现者攻击对象
WhisperGate1月13日微软公司乌克兰
HermeticWiper2月23日网络安全公司 ESET乌克兰
IsaacWiper2 月 24日网络安全公司 ESET乌克兰
WhisperKill2月 23日乌克兰国家特殊通信和信息保护局乌克兰
CaddyWiper3月14日网络安全公司 ESET乌克兰
DoubleZero3月17日乌克兰计算机应急响应小组乌克兰
AcidRain3月31日美国网络安全公司SentinelLabs乌克兰
RuRansom3月9日美国网络安全公司Trend Micro俄罗斯

1. WhisperGate

(1)WhisperGate简介

WhisperGate是一个冒充勒索软件的威胁性 MBR(主引导记录)擦除器,该恶意软件能够完全破坏受感染的机器,使其无法启动。

(2)WhisperGate分析

第一阶段

WhisperGate 恶意软件以名为“stage1.exe”的文件的形式放置在 C:\PerfLogs、C:\ProgramData、C:\ 和 C:\temp 目录之一中的受感染系统上。

为了转移人们对其真正目的的注意力,WhisperGate 采用了勒索软件威胁中通常观察到的几个特征。它提供了一张赎金票据,声称攻击者希望获得 10,000 美元的比特币。这笔钱应该转移到提供的加密钱包地址。该说明提到,受害者可以通过提供的 Tox ID for Tox(一种加密的消息传递协议)与黑客联系。但是,当受感染的机器关闭时,WhisperGate 会覆盖其 MBR 记录,这是硬盘驱动器中用于正确加载操作系统的部分。

WhisperGate 通过破坏 MBR,使系统变砖,并且无法恢复其上的任何数据。勒索软件部分只是用来掩盖攻击者的真实意图。

第二阶段

在攻击的第二阶段,名为“stage2.exe”的文件充当下载程序,从 Discord 频道获取文件损坏程序。下载链接被硬编码到下载器本身。执行有效负载后,它会扫描系统上的特定目录以查找与 180 多个不同扩展名列表匹配的文件。所有目标文件的内容将被固定数量的 0xCC 字节覆盖。为操作设置的总文件大小为 1MB。加扰文件后,破坏者将通过添加随机的四字节扩展名来更改其原始名称。

2. HermeticWiper

(1)HermeticWiper简介

HermeticWiper,因其数字证书是盗取自一家名为Hermetica Digital Ltd的公司。该擦除器的显著特点是能够绕过Windows的安全功能,,部署后不仅会破坏本地数据,还会破坏 Windows PC 的主引导记录 (MBR),从而阻止计算机在强制重新启动后引导至操作系统。

网络安全专家认为该软件至少具备以下功能:

  • 快速擦除数据文件,并且不可恢复;
  • 快速擦除NTFS、FAT分区数据;
  • 完全擦除整个磁盘或单独的分区;
  • 快速清除系统或者引导区;
  • 支持清除VMware、Virtual Box等虚拟机数据。

(2)HermeticWiper分析

HermeticWiper是一个32位Windows可执行文件,其图标类似于一个礼物。
在这里插入图片描述

  • 程序大小:117000 bytes
  • MD5:3F4A16B29F2F0532B7CE3E7656799125
  • SHA1:61B25D11392172E587D8DA3045812A66C3385451

程序运行后首先提升SeBackupPrivilege权限:

在这里插入图片描述

然后获取主机处理器的位数,从PE资源段中释放对应的驱动文件:

在这里插入图片描述
以服务的方式加载驱动,并更改活跃状态的系统vss服务启动类型SERVICE_DISABLED从而禁用vss服务:

在这里插入图片描述
在c:/windows/system32/driver目录下释放四个字母命名的驱动程序xrdr.sys并加载驱动;

在这里插入图片描述
创建多个线程并使用长时间的sleep来绕过沙箱的监控时间
在这里插入图片描述

HermeticWiper,exe进程占用了较高的CPU使用率,并向驱动发送IOCTL控制码。随着恶意软件的执行,会发现一些应用程序将无法正常工作,这是因为某些文件(包括系统DLL)已被随机数据覆盖。
在这里插入图片描述
系统重启后,Windows操作系统将无法正常工作:

在这里插入图片描述

3. IsaacWiper

IsaacWiper存在于没有Authenticode签名的Windows DLL或EXE中,执行时会枚举所有物理和逻辑驱动器和卷标,用随机数据覆盖每个磁盘前0x10000字节,并擦除磁盘上的文件数据。

该工具还会将不能访问的文件重命名为临时名称,然后擦拭新重命名的文件。IsaacWiper创建了一个日志文件C:\ProgramData\log.txt.其中保存了破坏活动的进度。

4. WhisperKill

乌克兰国家特殊通信和信息保护局发现了另外一种恶意擦除软件WhisperKill,该机构表示它重复使用了80%日的Encrpt3d勒索软件代码(又名WhiteBlackCrypt勒索软件),并试图伪装成勒索软件攻击来隐藏其攻击方式和目的,分散调查人员对攻击者的注意力。

5. CaddyWiper

(1)CaddyWiperr简介

CaddyWiper专门设计用于通过擦除用户数据、程序、硬盘驱动器以及在某些情况下分区信息来破坏目标系统。

3 月 15 日,网络安全公司ESET 发布了一个Twitter 帖子,记录了名为 CaddyWiper 的恶意软件,该恶意软件是在将其部署到目标网络的同一天编译的。

在这里插入图片描述
(2)CaddyWiperr分析

CaddyWiperr文件擦除算法由两个阶段组成:第一阶段覆盖文件,另一个阶段破坏物理磁盘布局和分区表。

对于文件销毁,它在获得 SeTakeOwnershipPrivilege 后通过修改文件的ACL条目来获得文件的所有权。然后,找到的文件将简单地用零覆盖。

大于 10,485,760 字节 ( 0xA00000 ) 的文件将简单地用零覆盖前 10,485,760 字节。

在这里插入图片描述
然后清除器将移动到系统上的下一个驱动器,从“D”驱动器开始。它将递归地获得驱动器上文件的权限并用零覆盖它们。这是按字母顺序(通过“Z:\”)为接下来的 23 个驱动器完成的。

第二阶段,擦除器尝试将系统上编号为 9 的所有物理驱动器的驱动器布局设置为 0。这将擦除有关物理驱动器分区的所有扩展信息,包括 MBR、GPT 和分区条目。

在这里插入图片描述
擦除器使用归零缓冲区递归执行 IOCTL_DISK_SET_DRIVE_LAYOUT_EX 请求,破坏文件的开头和分区表是其他擦除器上常见的技术,它在防止文件恢复方面非常有效。

6. DoubleZero

DoubleZero是一种用C语言开发的恶意破坏程序,攻击者使用该软件发起鱼叉式网络钓鱼攻击,目前该活动已被跟踪为UAC-0088。DoubleZero擦除文件使用两种方法破坏文件:用4096字节的零块覆盖其内容或使用API调用NtFileOpen、NtFsControlFile。恶意软件会在关闭受感染的系统之前删除以下Windows注册表HKCU、HKU、HKLM、HKLM\BCD。

7. AcidRain

(1) AcidRain简介

美国网络安全公司SentinelLabs于3月31日发布题为《AcidRain | A Modem Wiper Rains Down on Europe》的报告。报告称,美国卫星通信提供商Viasat于2月底遭受的网络攻击可能源于名为“酸雨”的恶意擦除软件。

SentinelLabs表示,“酸雨”可能是专门为针对乌克兰的行动而开发的,用于破坏调制解调器和路由器;该软件通过使用KA-SAT管理机制被部署在调制解调器和路由器上,随后会对设备文件系统进行深度擦除,完成擦除后会重新启动设备导致设备无法启用;“酸雨”功能相对简单,并且会进行暴力尝试,这意味着攻击者可能不熟悉目标固件的详情,或希望该工具保持通用性和复用性;“酸雨”和恶意软件VPNFilter存在相似之处,后者被认为与俄罗斯黑客组织“奇幻熊”和“沙虫”存在关联。

(2) AcidRain分析

该软件于3月15日,由一名意大利用户以“ukrop”为名将“酸雨”上传到VirusTotal后。研究人员称,“ukrop”可能是“乌克兰行动”(Ukraine operation)的缩写。

SentinelOne认为,“威胁行为者在供应链攻击中使用KA-SAT管理机制来推动为调制解调器和路由器设计的擦除软件。这种设备的擦除软件会覆盖调制解调器闪存中的关键数据,使其无法操作并需要重新刷新或更换。”

被部署后,“酸雨”会遍览受感染的路由器或调制解调器的整个文件系统。它还使用所有可能的设备标识符擦除闪存、SD/MMC卡和可以找到的任何虚拟块设备。为了破坏受感染设备上的数据,“酸雨”使用最多0x40000字节的数据覆盖文件内容,或使用MEMGETINFO、MEMUNLOCK、MEMERASE和MEMWRITEOOB输入/输出控制(IOCTL)系统调用。在数据擦除过程完成后,该恶意软件会重新启动设备,使其无法使用。

在这里插入图片描述

8. RURansom

(1)RURansom简介

RURansom是针对俄罗斯进行的数据擦除软件,该软件使用.NET编写,以蠕虫病毒的形式传播,并且会在目标机器上对文件进行不可逆的加密,从而造成数据擦除。同时在一些版本的代码当中会检查当前IP是否处于俄罗斯,从而进行攻击。

在这里插入图片描述
(2)RURansom分析

地理位置识别

恶意软件 RURansom 追踪受害者设备的 IP 位置,并且只有在检测到属于俄罗斯的 IP 时才会执行。为了识别 IP 地址,这个恶意软件使用了两个 api,分别是https://api.ipify.org 和https://ip-api.com,这两个接口都在其代码中硬编码。

在这里插入图片描述

权限提升

在识别出设备的地理位置之后,恶意软件会进一步检查被感染机器中的 Administrator 权限。

在这里插入图片描述
在这里插入图片描述

如果恶意软件没有管理员特权,它会尝试使用下面的 PowerShell 命令在升级模式下执行自身。

cmd.exe /c powershell stART-PRoceSS Assembly.GetExecutingAssembly().Location -veRB rUnAS

在这里插入图片描述

连接驱动器的发现

RURansom 恶意软件扫描受害者系统中的驱动器,包括可移动驱动器和连接到受害者机器的网络驱动器。

在这里插入图片描述

加密和删除

在扫描驱动器之后,恶意软件会对受害者电脑中已识别目录和子目录中的所有文件进行加密。为了防止从备份文件中恢复已加密的数据,恶意软件还会删除被感染的电脑中的 .bak 文件。

在这里插入图片描述

该恶意软件使用AES-CBC 加密算法来加密受害者机器中的文件

在这里插入图片描述

文件加密使用随机生成的 AES 密钥。密钥是使用诸如 FullScaleCyberInvasion、 RU_Ransom 和2022这样的硬编码字符串以及受害者的机器名和用户名计算出来的。

在这里插入图片描述

勒索信

RURansom 恶意软件置入了一个名为Полномасштабное_кибервторжение.txt(Full-blown_cyber-invasion.txt)的勒索信文件。该说明是用俄文写的,放在文件加密的所有目录中。
在这里插入图片描述

传播机制

该恶意软件将自身重命名为Россия-Украина_Война-Обновление.doc.exe (Russia-Ukraine_War-Update.doc.exe) ,并传播到所有连接的系统。

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/82003.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++------利用C++实现二叉搜索树【数据结构】

文章目录 二叉搜索树概念二叉搜索树的操作查找插入删除 二叉搜索树的应用 二叉搜索树 概念 什么是二叉搜索树,二叉搜索树就是指左孩子永远比根小右孩子永远比根大。这个规则适用于所有的子树。 上面的就是一棵二叉搜索树,我们还可以发现这棵树走一个中…

stm32开关控制led灯泡(附Proteus电路图)

说明:我的灯泡工作电压2V,电流设置为10um,注意了不是10毫安时微安啊,要不然电流太小亮不起来的。 2:我用的开关不是按钮button而是switch, 3:PB0,PB1默认都是低电平,采用了PULLDOWN模式,如果设…

【排序】插入排序 希尔排序(改进)

文章目录 插入排序时间复杂度空间复杂度 代码希尔排序时间复杂度空间复杂度 代码 以从小到大排序为例进行说明。 插入排序 插入排序就是从前向后(i1开始)进行选择,如果找到在i之前(分配一个j下标进行寻找)有比array[i…

uniapp选择只选择月份demo效果(整理)

<template><view style"margin-top: 200rpx;"><!-- mode"multiSelector" 多列选择器 --><view><picker :range"years" :value"echoVal" change"yearChange" mode"multiSelector">{…

Android Studio 新建module报错:No signature of method

android平台uni原生插件开发过程中&#xff0c;使用Android Studio 新增 module 报错 选择app --> create new module &#xff0c;填写相关信息 Android Studio 新建module报错&#xff1a; 原因&#xff1a;Android Studio 版本过高&#xff0c;新增了namespace&#x…

Elasticsearch复合查询之Boosting Query

前言 ES 里面有 5 种复合查询&#xff0c;分别是&#xff1a; Boolean QueryBoosting QueryConstant Score QueryDisjunction Max QueryFunction Score Query Boolean Query在之前已经介绍过了&#xff0c;今天来看一下 Boosting Query 用法&#xff0c;其实也非常简单&…

轻松搭建书店小程序

在现今数字化时代&#xff0c;拥有一个自己的小程序成为了许多企业和个人的追求。而对于书店经营者来说&#xff0c;拥有一个能够提供在线购书服务的小程序将有助于吸引更多的读者&#xff0c;并提升销售额。本文将为您介绍如何轻松搭建书店小程序&#xff0c;并将其成功上线。…

B树和B+树MySQL为什么用B+树?

文章目录 B树和B树B树B树的定义B树的插入操作删除操作 B树B树的定义B树的插入操作删除操作 B树和B树的区别?MySQL数据库为啥用B树作为索引&#xff0c;而不用B树? B树和B树 原文链接&#xff1a;https://blog.csdn.net/jinking01/article/details/115130286 B树 B树的定义…

NLP序列标注问题,样本不均衡怎么解决?

【学而不思则罔&#xff0c;思而不学则殆】 1.问题 NLP序列标注问题&#xff0c;样本不均衡怎么解决&#xff1f; 2.解释 以命名实体识别&#xff08;NER&#xff09;为例&#xff0c;这个样本不均衡有两种解释&#xff1a; &#xff08;1&#xff09;实体间类别数量不均衡…

关于vant2 组件van-dropdown-item,在IOS手机上,特定条件下无法点击问题的探讨

情景重现 先贴有问题的代码 <template><div :class"showBar ? homeContain : homeContain-nobar"><div class"contant" id"content"><van-dialog v-model"loading" :before-close"onBeforeClose" :…

【Python从入门到进阶】32、bs4的基本使用

接上篇《31、使用JsonPath解析淘票票网站地区接口数据》 上一篇我们介绍了如何使用JSONPath来解析淘票票网站的地区接口数据&#xff0c;本篇我们来学习BeautifulSoup的基本概念&#xff0c;以及bs4的基本使用。 一、BeautifulSoup简介 1、bs4基本概念 BeautifulSoup是一个P…

.Net Core 动态加载和卸载程序集

从 .Net Core 3.0开始支持程序集的加载和卸载&#xff0c;在 .Net FrameWork中使用独立的应用程序域来实现同样的功能&#xff0c;.Net Core 不支持创建多个应用程序域&#xff0c;所以无法使用多个应用程序域来实现程序集动态加载和卸载。 AssemblyLoadContext 程序集加载上下…

使用pnpm workspace管理Monorepo架构

在开发项目的过程中&#xff0c;我们需要在一个仓库中管理多个项目&#xff0c;每个项目有独立的依赖、脚手架&#xff0c;这种形式的项目结构我们称之为Monorepo&#xff0c;pnpm workspace就是管理这类项目的方案之一。 一、pnpm简介 1、pnpm概述 pnpm代表performance npm…

Docker容器:docker基础概述、安装、网络及资源控制

文章目录 一.docker容器概述1.什么是容器2. docker与虚拟机的区别2.1 docker虚拟化产品有哪些及其对比2.2 Docker与虚拟机的区别 3.Docker容器的使用场景4.Docker容器的优点5.Docker 的底层运行原理6.namespace的六项隔离7.Docker核心概念 二.Docker安装 及管理1.安装 Docker1.…

525. 连续数组

525. 连续数组 原题链接&#xff1a;完成情况&#xff1a;解题思路&#xff1a;参考代码&#xff1a; 原题链接&#xff1a; 525. 连续数组 https://leetcode.cn/problems/contiguous-array/description/ 完成情况&#xff1a; 解题思路&#xff1a; 参考代码&#xff1a; …

初出茅庐的小李博客之STM32CubeMx配置定时器的编码器模式

STM32CubeMx配置定时器的编码器模式 上次文章写了编码器是如何工作的&#xff0c;今天就来用STM32F103C8T6的TIM3的通道1跟通道2编写一个编码器识别程序。 编程思路&#xff1a; A相:TIM3_CH1 B相:TIM3_CH2 SWITCH:PB5&#xff08;外部中断的方式&#xff09; 实现效果&a…

基于Java/springboot铁路物流数据平台的设计与实现

摘要 随着科学技术的飞速发展&#xff0c;社会的方方面面、各行各业都在努力与现代的先进技术接轨&#xff0c;通过科技手段来提高自身的优势&#xff0c;铁路物流数据平台当然也不能排除在外&#xff0c;从文档信息、铁路设计的统计和分析&#xff0c;在过程中会产生大量的、各…

基于SpringCloud的会议室预约系统Java基于微服务的会议室报修系统【源码+lw】

&#x1f495;&#x1f495;作者&#xff1a;计算机源码社 &#x1f495;&#x1f495;个人简介&#xff1a;本人七年开发经验&#xff0c;擅长Java、微信小程序、Python、Android、大数据等&#xff0c;大家有这一块的问题可以一起交流&#xff01; &#x1f495;&#x1f495…

Docker入门——实战图像分类

一、背景 思考&#xff1a; 在一个项目的部署阶段&#xff0c;往往需要部署到云服务器或者是终端设备上&#xff0c;而环境的搭建往往是最费时间和精力的&#xff0c;特别是需要保证运行环境一致性&#xff0c;有什么办法可以批量部署相同环境呢&#xff1f; Docker本质——…

Django模型基础

文章目录 一、models字段类型概述属性命名限制使用方式逻辑删除和物理删除常用字段类型 二、常用字段参数常用字段选项(通过字段选项&#xff0c;可以实现对字段的约束) 实践创建模型执行迁移命令 并 创建超级用户登录admin后台添加文件和图片字段定义模型字段和约束及在Admin后…