【ATTCK】MITRE Caldera - 测试数据泄露技巧

news2024/11/17 15:45:12
         CALDERA是一个由python语言编写的红蓝对抗工具(攻击模拟工具)。它是MITRE公司发起的一个研究项目,该工具的攻击流程是建立在ATT&CK攻击行为模型和知识库之上的,能够较真实地APT攻击行为模式。
         通过CALDERA工具,安全红队可以提前手动模拟并设定好攻击流程,并以此进行自动化攻击和事件响应演练。同样,安全蓝队也可以利用该工具,根据相应的威胁开展模拟应对。
         github地址: mitre/caldera: Automated Adversary Emulation Platform (github.com)

一、介绍

        有数据吗?

         答案可能是响亮的“是”,而且这些数据也应该受到保护。数据泄露更多时候只是时间问题,而不是是否发生的问题。无论是为了竞争利益、快速勒索赎金,还是勒索等更险恶的行为,数据盗窃已经并将继续成为各种规模和公众地位的组织面临的问题。
         Caldera 多年来一直免费帮助组织测试其防御能力。但好事变得更好:该平台现在提供了使用多种技术和从威胁情报中提取的数据目的地来测试渗透的能力。事实上,Caldera 现在有能力解决 MITRE ATT&CK 渗透策略中的(几乎)所有技术!防御者可以利用这些新功能,通过对手可能用来对付他们的各种渗透途径来对他们的防御进行压力测试。

二、搭建舞台

         Caldera 团队利用威胁情报来识别对手采用的各种渗透路径。虽然许多攻击者诉诸已经建立的命令和控制 (C2) 通道,但其他攻击者也扩展到带外渗透路径。根据我们的研究,团队选择将文件传输协议 (FTP)、GitHub、Dropbox 和 Amazon Web Services (AWS) 作为主要途径。
         此外,该团队还扩大了围绕渗透行动的支持能力。具体来说,我们使用其中一些新功能来创建四个对手配置文件。除了集成了旧配置文件的功能并引入新的收集功能的高级小偷配置文件之外,还创建了以下对手配置文件:
         通过 FTP 的高级窃贼
         通过 Dropbox 的高级窃贼
         通过 GitHub 存储库的高级窃贼
         高级窃贼(来自 GitHub Gist)
         这些配置文件中的每一个都利用基本文件搜索和暂存功能,通过实用程序进行压缩,并最终渗透到预期目标。当然,这些能力可以根据需要添加到其他操作中。
         支持渗透的能力和对手配置文件已添加到现有的 Stockpile 插件中,添加了以下能力:
         高级文件搜索和暂存器
         查找 Git 存储库并压缩 Git 存储库(本地主机)
         压缩暂存目录(受密码保护)- 7z 和 tar+gpg
         压缩暂存目录(受密码保护)并分解为更小的文件
         Exfil 压缩存档到 FTP(:这可以在不需要 V4 中引入的新 FTP C2 通道的情况下使用)
         将压缩存档导出到 Dropbox
         Exfil 压缩存档到 GitHub 存储库 | 要点
         另外:Exfil 目录文件到 GitHub
         通过 AWS CLI 将压缩存档导出到 S3
         通过 AWS CLI 将压缩存档传输到单独的 S3 存储桶
         计划渗漏(使用标准 HTTP C2 通道)
         为了进一步增强这些新功能, GitHub上提供了新的事实源该事实来源包含这些能力所利用的所有事实。它也可以在 Stockpile 中使用 - 只需取消 YAML 文件中与您要使用的功能相关的行的注释,并根据需要填写详细信息即可。
图1:一站式来源
          渗透能力将以这种格式将文件传送到最终目的地:YYYYMMDDHHmmss-exfil-agentpaw-filename这有助于确保跨代理或同一代理的多个 exfil 消除文件冲突。

三、一些技巧

         技能名称高级文件搜索和暂存器

Windows 有效负载          Windows 有效负载Linux有效负载
          Stockpile 的收集能力现在是全新且改进的。利用单个源文件,用户可以执行文件搜索和暂存(T1119:自动收集;T1074:数据暂存)。此外,用户还可以对各种文件属性进行过滤。
作为一个新选项,此功能还支持安全模式,用户可以在操作的事实源中指定特定的文件后缀。如果启用,该功能将仅暂存文件名末尾包含此标识符的文件,以避免渗透测试期间潜在的泄漏。举个例子,我们可以为事实pseudo.data.identifier指定值“_pseudo”,并将safe.mode.enabled 设置为“true”,以告诉Caldera忽略文件“interesting_file.docx”,但提取文件“other_file_pseudo” .docx。”
此功能还包括一些性能优势、扩展搜索参数以及在 Caldera 中作为单个操作运行而不是作为多个链接运行。使用所提供的源文件中的事实,用户可以控制以下选项作为该功能的参数:

         能力名称压缩暂存目录(受密码保护)

          APT29、BRONZE BUTLER 和 Mustang Panda 等 APT 组织在泄露之前使用密码对档案进行加密。为了增强现有的存档能力,Caldera 现在提供加密选项(T1560.001:通过实用程序存档)。Linux 命令使用 tar 和 gpg 来创建和加密存档。Windows 命令利用 7-Zip 文件存档器来创建存档,该存档也被 Fox Kitten、HAFNIUM 和 PowerShower 等 APT 组织使用。
由于普遍存在的压缩工具的限制,此功能有一些注意事项:Linux 需要 gpg 版本 2.1 或更高版本,Windows 需要 7-Zip。如果不满足这些要求,这个能力就会失败。

         能力名称预定渗透

          攻击者已安排了可能逃避注意的时间进行渗漏,或定期更新他们之前更新的数据。为此,Caldera 现在支持通过现有 HTTP C2 通道进行计划渗漏功能( T1029 :计划传输)。此功能增强了 Stockpile 中现有的 Exfil Staged Directory 功能,通过 Linux 的 cron 和 Windows 的 cmdlet 添加计划任务。
         

         能力名称:压缩暂存目录(受密码保护)并分割成更小的块

当被盗数据达到令人印象深刻的大小时,即使是在压缩状态下,Carbanak 等攻击者也会利用某种形式的文件分块或分割来促进从受害者中窃取大文件。这种速率限制可以帮助更好地隐藏流量或满足所选协议或介质的限制。因此,Caldera 使用户能够将存档文件分解为更小的、用户定义的块(T1030:数据传输大小限制)。
          注意:由于操作过程中所需事实的冲突消除,此功能首先在创建块之前归档暂存目录,并在完成后删除较大的归档。因此,它应该用来代替任何其他归档功能。

         能力名称将临时存档导出至 FTP 服务器

          对手名称Advanced Thief via FTP
          Caldera 现在包含通过 FTP 泄露数据的功能(T1048.003:通过未加密/模糊的非 C2 协议泄露)。此功能独立于 Caldera 新的 FTP C2 选项。一旦提供了 FTP 服务器地址、用户名和密码,此功能即可将压缩存档泄露到指定的 FTP 服务器。这种渗漏方法已被各种 APT 组织使用,包括 APT33、Cherry Picker、FIN8 和 PoetRAT。
          预测:云可能会丢失数据
          随着当今组织中云存储的普遍合法使用,攻击者有充分的机会利用这些数据存储为自己谋取利益。例如,APT31 利用自定义远程访问木马 DropboxAES,在清除任何泄露证据之前将暂存文件传送到其实例。

         技能名称将临时存档导出至 Dropbox

          对手名称Advanced Thief via Dropbox
          您的组织允许使用 Dropbox 吗?好吧,那么对手也是允许的。为了解决越来越多地使用云存储作为渗漏目的地的问题,Caldera 添加了一项将压缩存档渗漏到 Dropbox 的新功能(T1567.002:通过云存储渗漏)。此功能需要一些用户设置,包括具有连接的 API 密钥的 Dropbox 帐户和 Dropbox 内具有适当访问控制的目标文件夹,以允许通过 API 写入。
         

         能力名称通过 AWS CLI 将压缩存档导出到 S3以及通过 AWS CLI 将压缩存档传输到单独的 S3 存储桶

          作为另一个流行的云服务提供商,亚马逊网络服务 (AWS) 也成为了泄露信息的目的地。Caldera 中的两项新功能解决了这种泄露路径,一种是利用受害者计算机上的 AWS 命令行界面 (CLI) 传输到对手拥有的存储桶,另一种是使用受害者作为经过身份验证的存储桶进行存储桶到存储桶的传输用户。与此更新中添加的其他渗透功能一样,需要进行一些组装才能确保适当的软件 (CLI) 或身份和访问管理 (IAM) 权限可用。

         能力名称Exfil 目录文件到 GitHub 存储库Exfil 压缩存档到 GitHub 存储库Exfil 压缩存档到 GitHub Gist

          对手简介通过 GitHub Repo 的 Advanced Thief通过 GitHub Gist 的 Advanced Thief
Caldera 现在支持通过 REST API将数据渗透到 GitHub Gists 和存储库( T1567.001 :渗透到代码存储库)。存储库能力需要四个事实:用户名、存储库名称、个人访问令牌和存储库分支。对于 Gists,您只需要一个简单的用户名和具有创建 Gists 权限的令牌即可。存储库渗漏将按原样上传整个文件(或多个文件);渗透到 Gist 会首先使用 Base64 对二进制数据进行编码,然后将其作为字符串渗透。对于 Linux,这需要磁盘上有一个临时文件才能与 curl 一起使用。
          除了渗透能力之外,还添加了专门针对 Git 存储库的单独收集能力,以及使用正确事实的归档能力。这些功能将识别本地系统上的所有存储库,并系统地将它们存档,以便以后通过任何可用渠道进行渗透(使用事实host.dir.compress)。

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

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

相关文章

Git版本控制系统之分支与标签(版本)

目录 一、Git分支(Branch) 1.1 分支作用 1.2 四种分支管理策略 1.3 使用案例 1.3.1 指令 1.3.2 结合应用场景使用 二、Git标签(Tag) 2.1 标签作用 2.2 标签规范 2.3 使用案例 2.3.1 指令 2.3.2 使用示例 一、Git分支&…

55基于matlab的1.高斯噪声2.瑞利噪声3.伽马噪声4.均匀分布噪声5.脉冲(椒盐)噪声

基于matlab的1.高斯噪声2.瑞利噪声3.伽马噪声4.均匀分布噪声5.脉冲(椒盐)噪声五组噪声模型,程序已调通,可直接运行。 55高斯噪声、瑞利噪声 (xiaohongshu.com)

“第六十六天”

这个我记得是有更优解的&#xff0c;不过还是明天发吧&#xff0c;明天想一想&#xff0c;看看能不能想起来 #include<string.h> int main() {char a[201] { 0 };char b[201] { 0 };scanf("%s %s", a, b);int na strlen(a);int nb strlen(b);int i 0, j …

基于SpringBoot+Vue的在线学习平台系统

基于SpringBootVue的在线学习平台系统的设计与实现~ 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBootMyBatisVue工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 主页 用户界面 登录界面 管理员界面 摘要 本文设计并实现了一套基于Spri…

C语言——贪吃蛇

一. 游戏效果 贪吃蛇 二. 游戏背景 贪吃蛇是久负盛名的游戏&#xff0c;它也和俄罗斯⽅块&#xff0c;扫雷等游戏位列经典游戏的⾏列。 贪吃蛇起源于1977年的投币式墙壁游戏《Blockade》&#xff0c;后移植到各种平台上。具体如下&#xff1a; 起源。1977年&#xff0c;投币式…

Leetcode421. 数组中两个数的最大异或值

Every day a Leetcode 题目来源&#xff1a;421. 数组中两个数的最大异或值 解法1&#xff1a;贪心 位运算 初始化答案 ans 0。从最高位 high_bit 开始枚举 i&#xff0c;也就是 max⁡(nums) 的二进制长度减一。设 newAns ans 2i&#xff0c;看能否从数组 nums 中选两个…

数据结构—二叉树的模拟实现(c语言)

目录 一.前言 二.模拟实现链式结构的二叉树 2.1二叉树的底层结构 2.2通过前序遍历的数组"ABD##E#H##CF##G##"构建二叉树 2.3二叉树的销毁 2.4二叉树查找值为x的节点 2.5二叉树节点个数 2.6二叉树叶子节点个数 2.7二叉树第k层节点个数 三.二叉树的遍历 3.1…

基于SpringMVC模式的电器网上订购系统的设计

大家好我是玥沐春风&#xff0c;今天分享一个基于SpringMVC模式的电器网上订购系统的设计&#xff0c;项目源码以及部署相关请联系我&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 本系统利用现在比较广泛的JSP结合后台SpringMybatisAjax编写程序的方式实现的。 在…

深度学习基于python+TensorFlow+Django的花朵识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 花朵识别系统&#xff0c;基于Python实现&#xff0c;深度学习卷积神经网络&#xff0c;通过TensorFlow搭建卷积神经…

Think-on-Graph:基于知识图的大型语言模型的深层可靠推理11.12

Hink-on-Graph&#xff1a;基于知识图的大型语言模型的深层可靠推理 摘要1 引言2 方法2.1图上思考2.1.1图的初始化2.1.2 探索2.1.3推理 2.2 基于关系的Think on graph 摘要 尽管大型语言模型&#xff08;LLM&#xff09;在各种任务中取得了巨大的成功&#xff0c;但它们经常与…

jupyter lab配置列表清单

❤️觉得内容不错的话&#xff0c;欢迎点赞收藏加关注&#x1f60a;&#x1f60a;&#x1f60a;&#xff0c;后续会继续输入更多优质内容❤️ &#x1f449;有问题欢迎大家加关注私戳或者评论&#xff08;包括但不限于NLP算法相关&#xff0c;linux学习相关&#xff0c;读研读博…

【 第十章】软件设计师 之 软件工程概述

文章底部有个人公众号&#xff1a;热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享&#xff1f; 踩过的坑没必要让别人在再踩&#xff0c;自己复盘也能加深记忆。利己利人、所谓双赢。 备考资料导航 软考好处&#xff1a;软考的…

“总线仲裁”——以CAN总线为例

总线仲裁 1.什么是总线仲裁2.为什么要总线仲裁3.怎么进行总线仲裁&#xff08;总线仲裁机制&#xff09;3.1 如何确定冲突3.1.1 确定冲突前提3.1.2 同时冲突3.1.3 延时冲突 3.2 冲裁逻辑3.2.1 避免延时冲突3.2.1 避免同时冲突 1.什么是总线仲裁 提到总线仲裁的概念&#xff0c…

基于Qt 多线程(继承自QThread篇)

# 简介 我们写的一个应用程序,应用程序跑起来后一般情况下只有一个线程,但是可能也有特殊情况。比如我们前面章节写的例程都跑起来后只有一个线程,就是程序的主线程。线程内的操作都是顺序执行的。恩,顺序执行?试着想一下,我们的程序顺序执行,假设我们的用户界面点击有某…

leetcode-链表经典题

1.反转单链表 206. 反转链表https://leetcode.cn/problems/reverse-linked-list/这里我们使用创建一个变量cur来遍历原链表&#xff0c;再创建一个新节点newnode&#xff0c;首先使用一个循环来遍历原链表&#xff0c;cur为NULL是循环结束&#xff0c;每次进入循环将cur的下一…

nRF5 SDK 入门(三、理解 nRF5 SDK 应用与协议栈分开烧录)

说明一下 Nordic nRF5 SDK 软件 应用程序 和 协议栈分开烧录的理解前言 上一篇文章我们了解了 Nordic nRF5 SDK 目录结构&#xff0c;在那之前我们也已经搭建好了开发环境&#xff0c;实际上我们就已经可以进入我们的开发之旅了&#xff0c;但是如果刚接触 Nordic 蓝牙开发的小…

DeCLIP 论文阅读

DeCLIP:supervision exists everywhere:a data efficient contrastive language-image pre-training paradigm 贡献&#xff1a; 论文是为了充分利用单模态和多模态&#xff0c;充分利用单模态特征用自监督&#xff08;SIMSAM和MLM&#xff09;&#xff0c;多模态用图像文本对…

Vue简单使用Echart图表柱形图 vue使用柱形图 vue使用 echart图表柱形图 vue使用柱形图

Vue简单使用Echart图表柱形图 vue使用柱形图 vue使用 echart图表柱形图 vue使用柱形图 1、安装依赖2、页面Demo使用3、效果图 1、安装依赖 官方文档&#xff1a;https://echarts.apache.org/zh/option.html#title 官方在线示例&#xff1a;https://echarts.apache.org/exampl…

windows系统winget一键安装和使用

winget命令概述 用户可以在 Windows 10 和 Windows 11 计算机上使用 winget 命令行工具来发现、安装、升级、删除和配置应用程序。 此工具是 Windows 程序包管理器服务的客户端接口 在 Windows 沙盒上安装 winget Windows 沙盒提供了一个轻型桌面环境&#xff0c;可以安全地独…

使用python电脑轻量级控制手机—adb命令和手机投屏

文章目录 一、通过无线连接手机和电脑二、使用adb命令轻量级控制手机二、使用scrcpy控制手机 通过电脑控制手机有多种方式如appnium等&#xff0c;本文介绍的是两种轻量级的方案&#xff0c;使用adb命令刚和手机投屏。 一、通过无线连接手机和电脑 1、手机设置 开发者选项—us…