Linux版Black Basta勒索病毒针对VMware ESXi服务器

前言

Black Basta勒索病毒是一款2022年新型的勒索病毒,最早于2022年4月被首次曝光,主要针对Windows系统进行攻击,虽然这款新型的勒索病毒黑客组织仅仅才出来短短两个多月的时间,就已经在其暗网平台上已经公布了几十个受害者之多,非常活跃,最近国外某厂商曝光了该勒索病毒利用QBot僵尸网络进行传播,从监控的数据可以发现该新型勒索病毒攻击活动量已经超过了此前的Conti、BlackCat、Hive等主流的勒索病毒黑客组织,仅次于LockBit勒索病毒家族,最近该勒索病毒黑客组织又积极开发更新出Linux版本攻击样本,主要用于攻击在企业Linux服务器上运行的VMware ESXi虚拟机,从笔者监控到的情报可以发现现在大多数Linux版的勒索病毒都已经将攻击的重点转移到ESXi虚拟机上,像前不久非常活跃的Conti勒索病毒等,随着云计算的发展,越来越多的公司将业务迁移到虚拟机,勒索病毒黑客组织也早已经将目标转移向云计算业务发展,在未来几年勒索病毒仍然会非常流行,可以预测下一代勒索病毒主要针对云和IOT(IT/OT)等基础设施。

笔者给大家盘点了一下最近一两年全球主流的勒索病毒黑客组织开发的Linux版的勒索病毒攻击样本家族,如下所示:

分析

1.程序使用GMP库初始化加密密钥信息,如下所示:

2.查找系统/vmfs/volumes目录进行加密,如下所示:

3.勒索病毒采用多线程的方式执行加密操作,加速加密的速度,如下所示:

4.文件的加密过程,如下所示:

加密算法使用ChaCha算法作为加密机制的一部分,如下所示:

5.生成勒索提示信息文件,如下所示:

勒索提示信息内容,如下所示:

勒索病毒解密网站,如下所示:

勒索病毒样本基本上分析完成了,该勒索病毒使用的加密算法为RSA+ChaCha20,调用GMP库,通过分析可以发现该勒索病毒是使用C++语言进行编写的,有兴趣的朋友下载该样本进行分析研究。

总结

勒索病毒攻击仍然是全球最大的网络安全威胁之一,某些定向的勒索病毒攻击活动已经威胁到了一些国家的重要基础设施,随着一些主流勒索病毒家族(Conti、Babuk)等源代码被公开,越来越多的黑客组织开始通过这些公开的源代码修改编译为其他勒索病毒家族变种,勒索病毒黑客组织基于RAAS的运营模式,也使勒索病毒攻击成本越来越低,勒索病毒黑客组织越来越庞大,攻击手法多种多样,越来越多的恶意软件家族开始与勒索病毒黑客组织进行合作,通过其他各种恶意软件以及最新的一些漏洞进行传播勒索病毒将是未来勒索病毒攻击的主要趋势之一,另一大趋势就是一些勒索病毒黑客组织以APT定向攻击+勒索为主,同时随着全球云计算基础设施的发展与完善,估计也早已经被勒索病毒黑客组织盯上了,勒索病毒的防御不仅需要终端安全类产品能力的不断提升,同时也需要及时获取勒索病毒最新的威胁情报,全球主流的各种各样的不同平台的恶意软件都有可能成为勒索病毒传播的源头,由于勒索病毒攻击的暴利驱使,这些恶意软件黑客组织都有可能与勒索病毒黑客组织合作加入到勒索病毒攻击活动当中,目前大部分主流的勒索病毒都是无法解密的,各企业需要注意防范。

笔者一直从事与恶意软件研究相关的工作,包含挖矿、勒索、远控后门、僵尸网络、加载器、APT攻击样本、CS木马、Rootkit后门木马等,这些恶意软件家族涉及到多种不同的平台(Windows/Linux/Mac/Android/iOS),各位读者朋友如果有遇到什么新的恶意软件家族样本或最新的家族变种都可以私信发给笔者,感谢给笔者提供样本的朋友们!

做安全,不忘初心,与时俱进,方得始终!

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

编译原理实验1——词法分析(python实现)

文章目录 实验目的实现定义单词对应的种别码定义输出形式:三元式python代码实现运行结果检错处理 总结 实验目的 输入一个C语言代码串,输出单词流,识别对象包含关键字、标识符、整型浮点型字符串型常数、科学计数法、操作符和标点、注释等等。…

[计算机提升] 还原系统:系统映像

6.4 还原系统:系统映像 1、打开系统设置,进入到恢复页面,然后点击高级启动中的立即重新启动进入到高级启动页面。 2、点击疑难解答 3、点击高级选项 4、点选查看更多恢复选项到下一步系统映像修复: 5、点选系统映像恢复 …

Poller描述符监控类实现(模块四)

目录 类功能 类设计 类实现 编译 类功能 类设计 //Poller描述符监控类 #define MAX_EPOLLEVENTS class Poller{private:int _epfd;struct epoll_event _evs[MAX_EPOLLEVENTS];std::unordered_map<int, Channel *> _channels;private:// 对epoll的直接操作void Updat…

探索C语言中的联合体与枚举:数据多面手的完美组合!

​ ✨✨ 欢迎大家来到贝蒂大讲堂✨✨ &#x1f388;&#x1f388;养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; 所属专栏&#xff1a;C语言学习 贝蒂的主页&#xff1a;Betty‘s blog 1. 联合体的定义 联合体又叫共用体&#xff0c;它是一种特殊的数据类型&…

Qt信号和槽机制(什么是信号和槽,connect函数的形式,按钮的常用信号,QWidget的常用槽,自定义槽函数案例 点击按钮,输出文本)

一.什么是信号和槽 信号槽式Qt中的一个很重要的机制。信号槽实际上是观察者模式,当发生了感兴趣的事件&#xff0c;某一个操作就会被自动触发。当某个事件发生之后&#xff0c;比如按钮检测到自己被点击了一下&#xff0c;它就会发出一个信号。这种发出类似广播。如果有对象对…

Mysql为什么使用B+Tree作为索引结构

B树和B树 一般来说&#xff0c;数据库的存储引擎都是采用B树或者B树来实现索引的存储。首先来看B树&#xff0c;如图所示&#xff1a; B树是一种多路平衡树&#xff0c;用这种存储结构来存储大量数据&#xff0c;它的整个高度会相比二叉树来说&#xff0c;会矮很多。 而对于数…

Elasticsearch: 非结构化的数据搜索

很多大数据组件在快速原型时期都是Java实现&#xff0c;后来因为GC不可控、内存或者向量化等等各种各样的问题换到了C&#xff0c;比如zookeeper->nuraft(https://www.yuque.com/treblez/qksu6c/hu1fuu71hgwanq8o?singleDoc# 《olap/clickhouse keeper 一致性协调服务》)&a…

航芯ACM32G103开发板评测 08 ADC Timer外设测试

航芯ACM32G103开发板评测 08 ADC Timer外设测试 1. 软硬件平台 ACM32G103 Board开发板MDK-ARM Keil 2. 定时器Timer 在一般的MCU芯片中&#xff0c;定时器这个外设资源是非常重要的&#xff0c;一般可以分为SysTick定时器&#xff08;系统滴答定时器&#xff09;、常规定时…

XGBOOST算法Python实现(保姆级)

摘要 XGBoost算法&#xff08;eXtreme Gradient Boosting&#xff09;在目前的Kaggle、数学建模和大数据应用等竞赛中非常流行。本文将会从XGBOOST算法原理、Python实现、敏感性分析和实际应用进行详细说明。 目录 0 绪论 一、材料准备 二、算法原理 三、算法Python实现 3…

创建本地yum源并安装tree命令(openEuler-20.03-LTS-SP3)

步骤 1&#xff1a;下载ISO镜像 首先&#xff0c;您需要从提供的URL下载ISO镜像文件&#xff1a; cd /opt wget https://mirrors.dotsrc.org/openeuler/openEuler-20.03-LTS-SP3/ISO/x86_64/openEuler-20.03-LTS-SP3-x86_64-dvd.iso步骤 2&#xff1a;挂载ISO镜像 接下来&am…

备战蓝桥杯---动态规划(理论基础)

目录 动态规划的概念&#xff1a; 解决多阶段决策过程最优化的一种方法 阶段&#xff1a; 状态&#xff1a; 决策&#xff1a; 策略&#xff1a; 状态转移方程&#xff1a; 适用的基本条件 1.具有相同的子问题 2.满足最优子结构 3.满足无后效性 动态规划的实现方式…

使用QT编写一个简单QQ登录界面

widget.cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);//设置窗口标题this->setWindowTitle("QQ");//设置窗口图标this->setWindowIcon(…

k8s学习-Kubernetes的包管理器Helm

1.1 为何需要Helm Kubernetes能够很好地组织和编排容器&#xff0c;但它缺少⼀个更高层次的应用打包工具&#xff0c;而Helm就是来干这件事的。 先来看个例子。 比如对于⼀个MySQL服务&#xff0c;Kubernetes需要部署下面这些对象&#xff1a; &#xff08;1&#xff09;Serv…

three.js 箭头ArrowHelper的实践应用

效果&#xff1a; 代码&#xff1a; <template><div><el-container><el-main><div class"box-card-left"><div id"threejs" style"border: 1px solid red"></div></div></el-main></…

Golang数据库编程详解 | 深入浅出Go语言原生数据库编程

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站https://www.captainbed.cn/kitie。 Golang学习专栏&#xff1a;https://blog.csdn.net/qq_35716689/category_12575301.html 前言 对数据库…

STM32F1 - 上电启动过程

BOOT 1> 内存映射2> 启动模式 1> 内存映射 Flash起始地址是 【0x0800 0000】 SRAM起始地址是【0x2000 0000】 2> 启动模式 STM32F103的BOOT1和BOOT0引脚&#xff0c; 决定哪块存储区&#xff0c;映射到4G内存空间【0x0000 0000】地址处。 例如 BOOT0引脚接地后&…

【云原生进阶之PaaS中间件】第三章Kafka-4.3.2-broker网络模型

1 kafka网络模型运行原理 kafka broker 在启动的时候&#xff0c;会根据你配置的listeners 初始化它的网络组件&#xff0c;用来接收外界的请求&#xff0c;这个listeners你可能没配置过&#xff0c;它默认的配置是listenersPLAINTEXT://:9092就是告诉kafka使用哪个协议&#x…

如何在 emacs 上开始使用 Tree-Sitter (archlinux)

文章目录 如何在emacs上开始使用Tree-Sitter&#xff08;archlinux&#xff09; 如何在emacs上开始使用Tree-Sitter&#xff08;archlinux&#xff09; 在archlinux上使用比windows上不知道要方便多少倍&#xff01; $ sudo pacman -S emacs $ sudo pacman -S tree-sitter这里…

containerd中文翻译系列(十五)转运服务

传输服务是一种简单灵活的服务&#xff0c;可用于在源和目的地之间传输人工制品对象。灵活的应用程序接口&#xff08;API&#xff09;允许传输接口的每个实施方案决定是否可以在源和目的地之间进行传输。这样&#xff0c;实现者就可以直接添加新功能&#xff0c;而无需对应用程…

Java算法练习4

Java算法练习4 1.1 [145. 二叉树的后序遍历](https://leetcode.cn/problems/binary-tree-postorder-traversal/)1.2 [173. 二叉搜索树迭代器](https://leetcode.cn/problems/binary-search-tree-iterator/)1.3 [98. 验证二叉搜索树](https://leetcode.cn/problems/validate-bin…