利用VPN设备漏洞入侵!新型勒索软件CACTUS攻击手法分析

news2024/9/24 21:17:42

图片

近期,亚信安全应急响应中心截获了利用VPN设备已知漏洞传播的新型勒索软件CACTUS,该勒索于2023年3月首次被发现,一直保持着活跃状态。CACTUS勒索软件通过Fortinet VPN的已知漏洞进行入侵(黑客首先获取到VPN账号,再通过VPN服务器入侵到组织内部),获取初始访问权限。随后,勒索团伙会通过网络扫描,远控软件和RDP暴力破解在内网横向移动,窃取被害者的重要信息,并将窃取的信息传输到云存储中。最后,勒索团伙对被害机器进行勒索投毒。

CACTUS勒索软件介绍

图片

【CACTUS攻击流程】

在内网横向移动阶段,该勒索团伙使用Netscan、PSnmap的修改版本对域内机器进行网络扫描。通过使用PowerShell命令来枚举端点,在Windows事件查看器中查看成功登录来识别用户帐户,并ping远程主机。除此之外,勒索团伙还使用各种合法工具及远程软件对被害者机器进行控制,例如Splashtop、 AnyDesk、SuperOps RMM、Cobalt Strike和基于Go的代理工具Chisel。另外, 该勒索还通过RDP暴力破解获取内网访问权限。

获取到内网机器的访问权限后,勒索团伙首先会窃取被害者的敏感信息,并使用Rclone等常见工具将窃取的信息传输到云存储中,然后再进行手动投毒。在勒索阶段,勒索团伙会威胁用户,如果不缴纳赎金,将会泄露窃取到的数据。在数据加密及数据泄露双重威胁下,用户缴纳赎金的概率将会提高。

CACTUS勒索与以往勒索软件相比较,其最大不同之处是利用7-Zip进行防御规避。CACTUS 勒索软件使用批处理脚本提取 7-Zip加密保护的勒索软件二进制文件,然后在执行有效负载之前删除 .7z文件。CACTUS勒索软件在加密前会初始化AES密钥以及OpenSSL库,通过OpenSSL库提供加密服务。其还通过创建计划任务达到持久化加密文件目的。在加密过程中,混合使用了 AES 和 RSA 算法,其中,使用 AES 算法对文件数据进行加密,并将加密后的数据写入文件中,然后使用 RSA 公钥对随机生成的加密密钥进行加密,并在文件夹中留下勒索信息说明文件。为防止受害者通过备份恢复数据,其会删除卷影副本。

图片

【CACTUS勒索信】

病毒详细分析

该勒索首先执行bat脚本,将test.7z压缩包解压,并将勒索软件复制到C:\windows\目录下,通过脚本中的命令行参数运行,并执行后续加密操作:

图片

其会创建一个互斥体,防止多个进程运行:

图片

使用AES算法并初始化密钥,后续用于进行数据加密:

图片

提供RSA公钥,后续用于对AES密钥进行加密:

图片

该勒索将自身复制到C:\ProgramData\{文件名}.exe:

图片

其将垃圾数据混淆的十六进制编码配置文件写入 C:\ProgramData\ntuser.dat,其中包含原始 exe 的路径,这是一个 base64 字符串,包含勒索软件运行的相关配置。通过将每个双字符字节表示的对齐方式推出一个字符来进一步混淆处理十六进制字符串:

图片

创建计划任务,指向:C:\ProgramData\{文件名}.exe -r:

图片

该勒索使用了 OpenSSL 库提供的加密算法对文件进行加密:

图片

其会删除卷影副本,禁用自动修复功能,以防止用户恢复数据:

图片

获取本地磁盘以及磁盘类型:

图片

创建勒索信:

图片

图片

遍历文件,并对文件进行加密:

图片

图片

使用AES,RSA和OpenSSL进行文件加密:

图片

加密文件后,添加加密后缀:.CTS1,.CTS6,.CTS7等:

图片

图片

亚信安全产品解决方案

●亚信安全病毒码版本18.939.60,云病毒码版本18.939.71,全球码版本18.939.00已经可以检测该勒索软件中对外公开的样本,请用户及时升级病毒码版本。

图片

●亚信安全梦蝶防病毒引擎可以检测该勒索软件,可检测的病毒码版本为1.6.0.194

图片

安全建议

●修复Fortinet VPN已知漏洞;

●全面部署安全产品,保持相关组件及时更新;

●采用高强度密码,避免使用弱口令或重复口令;

●尽量关闭不必要的默认共享,避免被横向传播;

●请注意备份重要文档。备份的最佳做法是采取3-2-1规则,即至少做三个副本,用两种不同格式保存,并将副本放在异地存储。

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

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

相关文章

20240130在ubuntu20.04.6下卸载NVIDIA显卡的驱动

20240130在ubuntu20.04.6下卸载NVIDIA显卡的驱动 2024/1/30 12:58 缘起,为了在ubuntu20.4.6下使用whisper,以前用的是GTX1080M,装了535的驱动。 现在在PDD拼多多上了入手了一张二手的GTX1080,需要将安装最新的545的驱动程序&#…

ctfshow web-77

开启环境: 先直接用伪协议获取 flag 位置。 c?><?php $anew DirectoryIterator("glob:///*"); foreach($a as $f) {echo($f->__toString(). );} exit(0); ?> 发现 flag36x.txt 文件。同时根目录下还有 readflag&#xff0c;估计需要调用 readflag 获…

图灵之旅--ArrayList顺序表LinkedList链表栈Stack队列Queue

目录 线性表顺序表ArrayList简介ArrayList使用ArrayList的构造ArrayList常见操作ArrayList的遍历ArrayList的扩容机制利用ArrayList洗牌ArrayList的优缺点 链表链表的实现双向链表的实现 LinkedListLinkedList引入LinkedList的使用LinkedList的构造LinkedList的常用方法介绍Lin…

五、图像像素算术操作

算术操作无非就是像数值之间的加减乘除操作 一、创建图像像素算术操作——头文件 在项目的头文件中&#xff0c;右击添加&#xff0c;新建项 创建用于图像像素算术操作的头文件&#xff0c;我这边是operater.h 该头文件声明了一个Operater类(class Operater)&#xff0c;该…

ConcurrentModificationException异常原因,解决方法,线程安全的单例模式

异常简介 ConcurrentModificationException&#xff08;并发修改异常&#xff09;是基于java集合中的 快速失败&#xff08;fail-fast&#xff09; 机制产生的&#xff0c;在使用迭代器遍历一个集合对象时&#xff0c;如果遍历过程中对集合对象的内容进行了增删改&#xff0c;…

2023年度总结 | 关于意义,爱与回望——写给清醒又无知的20岁

Hi&#xff0c;大家好&#xff0c;我是半亩花海&#xff0c;一名再普通不过的大学生。2023年&#xff0c;20岁&#xff0c;充实而零乱的一年&#xff0c;清醒又无知的一年。年末&#xff0c;最近的一些事儿也让我逐渐地有感而发&#xff0c;心静&#xff0c;除杂&#xff0c;思…

2024年美国大学生数学建模比赛MCM问题B:搜索潜水器-思路解析与代码解答

2024 MCM Problem B Searching for Submersibles 一、题目翻译 背景&#xff1a; 总部位于希腊的小型海上巡航潜艇&#xff08;MCMS&#xff09;公司&#xff0c;制造能够将人类运送到海洋最深处的潜水器。潜水器被移动到该位置&#xff0c;并不受主船的束缚。MCMS现在希望用…

HTTP和HTTPS区别!

http 是我们几乎天天都要打交道的东西&#xff0c;相关知识点有点多&#xff0c;所以也有不少面试必问的点&#xff0c;这里做了一些整理&#xff0c;帮且大家树立完整的 http 知识体系&#xff0c;对面试官说 so easy HTTP 的特点和缺点 特点&#xff1a;无连接、无状态、灵…

【HarmonyOS应用开发】Web组件的使用(十三)

文章末尾含&#xff1a;Web组件抽奖案例&#xff08;ArkTS&#xff09;-示例源码下载 Web组件的使用 一、概述 相信大家都遇到过这样的场景&#xff0c;有时候我们点击应用的页面&#xff0c;会跳转到一个类似浏览器加载的页面&#xff0c;加载完成后&#xff0c;才显示这个页…

vivado 运行编译

运行合成 运行定义并配置在合成过程中使用的设计方面。一个合成run定义了以下内容&#xff1a; •AMD设备在合成过程中成为目标 •要应用的约束集 •启动单个或多个合成运行的选项 •控制合成引擎结果的选项 要定义RTL源文件和约束的运行&#xff0c;请执行以下操作&…

Java 数据结构 二叉树(二)红黑树

目录 数据结构图-树 简介 规则 旋转 重新着色 红黑树构建过程 前言-与正文无关 生活远不止眼前的苦劳与奔波&#xff0c;它还充满了无数值得我们去体验和珍惜的美好事物。在这个快节奏的世界中&#xff0c;我们往往容易陷入工作的漩涡&#xff0c;忘记了停下脚步&#xf…

关于华为应用市场上架,申请权限未告知目的被驳回问题的简单处理方式

关于华为应用市场上架过程中出现的【您的应用在运行时&#xff0c;未同步告知权限申请的使用目的&#xff0c;向用户索取&#xff08;存储、拍照&#xff09;等权限&#xff0c;不符合华为应用市场审核标准。】 使用方式&#xff1a; 1、引入 import permision from "/m…

配置实例—交换机VLAN聚合配置实例

一、组网需求 某公司拥有多个部门且位于同一网段&#xff0c;为了提升业务安全性&#xff0c;将不同部门的用户划分到不同VLAN中。现由于业务需要&#xff0c;不同部门间的用户需要互通。如图1所示&#xff0c;VLAN2和VLAN3为不同部门&#xff0c;现需要实现不同VLAN间的用户可…

【MySQL】学习如何通过DQL进行数据库数据的基本查询

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-KvH5jXnPNsRtMkOC {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

Java学习day28:线程池Pool(知识点非常非常的详解)

声明&#xff1a;该专栏本人重新过一遍java知识点时候的笔记汇总&#xff0c;主要是每天的知识点题解&#xff0c;算是让自己巩固复习&#xff0c;也希望能给初学的朋友们一点帮助&#xff0c;大佬们不喜勿喷(抱拳了老铁&#xff01;) 往期回顾 Java学习day27&#xff1a;join方…

YOLOv5算法进阶改进(15)— 引入密集连接卷积网络DenseNet

前言:Hello大家好,我是小哥谈。DenseNet(密集连接卷积网络)是一种深度学习神经网络架构,它在2017年由Gao Huang等人提出。DenseNet的核心思想是通过密集连接(dense connection)来促进信息的流动和共享。在传统的卷积神经网络中,每个层的输入只来自于前一层的输出。而在…

c语言---操作符(详解)

目录 一、操作符的分类二、算术操作符三、 移位操作符3.1<<左移操作符3.1.1移位规则3.1.2直接上代码以及解释 3.2>> 右移操作符3.2.1移位规则3.2.2画图解释 3.3注意 四、位操作符&#xff1a;&、|、^、~4.1&按位与4.1.1按位与的计算逻辑4.1.2代码4.1.3运行…

Modbus协议学习第七篇之libmodbus库API介绍(modbus_write_bits等)

写在前面 在第六篇中我们介绍了基于libmodbus库的演示代码&#xff0c;那本篇博客就详细介绍一下第六篇的代码中使用的基于该库的API函数。另各位读者&#xff0c;Modbus相关知识受众较少&#xff0c;如果觉得我的专栏文章有帮助&#xff0c;请一定点个赞&#xff0c;在此跪谢&…

redis布隆过滤器(Bloom)详细使用教程

文章目录 布隆过滤器1. 原理2. 结构和操作3. 特点和应用场景4. 缺点和注意事项 应用-redis插件布隆过滤器使用详细过程安装以及配置springboot项目使用redis布隆过滤器下面是布隆过滤器的一些基础命令 扩展 布隆过滤器 Bloom 过滤器是一种概率型数据结构&#xff0c;用于快速判…

算法学习——华为机考题库5(HJ31 - HJ35)

算法学习——华为机考题库5&#xff08;HJ31 - HJ35&#xff09; HJ31 单词倒排 描述 对字符串中的所有单词进行倒排。 说明&#xff1a; 1、构成单词的字符只有26个大写或小写英文字母&#xff1b; 2、非构成单词的字符均视为单词间隔符&#xff1b; 3、要求倒排后的单…