当前位置: 首页 > news >正文

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

         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)。

相关文章:

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

CALDERA是一个由python语言编写的红蓝对抗工具(攻击模拟工具)。它是MITRE公司发起的一个研究项目,该工具的攻击流程是建立在ATT&CK攻击行为模型和知识库之上的,能够较真实地APT攻击行为模式。 通过CALDERA工具,安全…...

【数据结构】树与二叉树(十二):二叉树的递归创建(算法CBT)

文章目录 5.2.1 二叉树二叉树性质引理5.1:二叉树中层数为i的结点至多有 2 i 2^i 2i个,其中 i ≥ 0 i \geq 0 i≥0。引理5.2:高度为k的二叉树中至多有 2 k 1 − 1 2^{k1}-1 2k1−1个结点,其中 k ≥ 0 k \geq 0 k≥0。引理5.3&…...

Qt绘制网格和曲线

绘制网格: void Widget::drawGrid(QPainter &p, QRect &windRect) {QRect rect(windRect.left()m_margins.left(),windRect.top()m_margins.top(),windRect.width()-m_margins.left()-m_margins.right(),windRect.height()-m_margins.top()-m_margins.bo…...

2023-11-12

今日比较摆烂, 但是把自写管道的原理搞懂了, 主要是把 exp 完完全全看懂了, 还不错. 然后就没干啥了. 明日计划: 学校的作业. AFL 源码. 我真是服了我自己了, AFL 源码搁多久了, 操操操 然后把 seccomp 重新学习下...

[工业自动化-16]:西门子S7-15xxx编程 - 软件编程 - 西门子仿真软件PLCSIM

目录 前言: 一、PLCSIM仿真软件 1.1 PLCSIM仿真软件基础版(内嵌) 1.2 PLCSIM仿真软件与PLCSIM仿真软件高级版的区别? 1.3 PLCSIM使用 前言: PLC集成开发环境是运行在Host主机上,Host主机与PLC可以通过…...

运行npm install卡住不动的几种解决方案

在前端开发经常会遇到运行npm install 来安装工具包一直卡住不动,为此这里提供几种解决方案,供大家参考学习,不足之处还请指正。 第一种方案、首先检查npm代理,是否已经使用国内镜像 // 执行以下命令查看是否为国内镜像 npm con…...

[Android]_[初级]_[配置gradle的环境变量设置安装位置]

场景 在开发Android项目的时候, gradle是官方指定的构建工具。不同项目通过wrapper指定不同版本的gradle。随着项目越来越多,使用的gradle版本也增多,导致它以来的各种库也增加,系统盘空间不足,怎么解决? 说明 grad…...

docker更改存储目录原因及方案

为什么一定要将docker的存储目录挂载到其他目录 docker在安装时默认存储目录在/var/lib/docker,而该目录是在系统盘下的。docker安装后,会使用各种各样的镜像,动辄几个G,那么如此多的镜像文件,装着装着系统盘就撑爆了…...

HTTPS的工作流程

. HTTPS是什么? https是应用层中的一个协议,是在http协议的基础上引入的一个加密层。 为什么需要HTTPS 由于http协议内容都是按照文本的方式明文传输的,这就导致传输过程中会出现一些被篡改的情况。运营商劫持事件最开始百度,…...

C++语言的广泛应用领域

目录 1. 系统级编程 2. 游戏开发 3. 嵌入式系统 4. 大数据处理 5. 金融和量化分析 6. 人工智能和机器学习 7. 网络和通信 结语 C是一种多范式编程语言,具有高性能、中级抽象能力和面向对象的特性。由Bjarne Stroustrup于1979年首次设计并实现,C在…...

Lambertian模型(完美漫反射)

这里使用相乘的方式组合光照色和纹理色。根据这个模型,面朝光源的区域光照强度高,纹理色也相应增强。面背光源的区域光照弱,纹理色也被抑制。这样通过光照和纹理的结合,可以合成出具有照明效果的面部颜色,而不仅仅是固定的纹理本身的颜色。相乘方式可以近似实现不同光照方向下面…...

MATLAB的编程与应用,匿名函数、嵌套函数、蒙特卡洛法的掌握与使用

目录 1.匿名函数 1.1.匿名函数的定义与分类 1.2.匿名函数在积分和优化中应用 2.嵌套函数 2.1.嵌套函数的定义与分类 2.2.嵌套函数彼此调用关系 2.3.嵌套函数在积分和微分中应用 3.微分和积分 4.蒙特卡洛法 4.1.圆周率的模拟 4.2.计算N重积分(均匀分布&am…...

NFS服务器的搭建

架设一台NFS服务器,并按照以下要求配置 准备阶段:准备两台虚拟机,一台作为服务端,一台作为客户端 服务端(Server):192.168.75.139 客户端(Client):192.168.75.160 两…...

安卓Frida 常用脚本

打印调用堆栈, hook 某个方法,想看下调用堆栈,代码如下: function showStacks() {Java.perform(function () {send(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Exception").$new()));});} 二,需要hook okhttp3 HttpUrl …...

机器学习数据预处理——Word2Vec的使用

引言: Word2Vec 是一种强大的词向量表示方法,通常通过训练神经网络来学习词汇中的词语嵌入。它可以捕捉词语之间的语义关系,对于许多自然语言处理任务,包括情感分析,都表现出色。 代码: 重点代码&#…...

面试算法常考题之-------逆波兰式合集

逆波兰式背景介绍 逆波兰式是一种特殊的数学表达式表示法,它的诞生背景可以追溯到20世纪30年代。当时,波兰数学家Jan Wjtowicz和Wacław Sierpiński提出了一种新的数学表达式表示法,这种表示法将运算符放在操作数之后,而不是传统…...

独热编码和Word2Vec的区别

独热编码和Word2Vec都是自然语言处理中将词向量化的方式,但它们之间并没有直接的关系或依赖性。它们可以被视为在处理词向量时的两种不同方法或策略。 独热编码是一种简单直观的方法,每个词被表示为一个长向量,其中只有一个元素是1&#xff0…...

RestTemplate.postForEntity 方法进行 HTTP POST 请求

RestTemplate 是 Spring Framework 提供的一个用于处理 HTTP 请求的客户端工具。其中&#xff0c;postForEntity 是 RestTemplate 提供的用于发送 HTTP POST 请求并返回 ResponseEntity 对象的方法。 public <T> ResponseEntity<T> postForEntity(String url, Obj…...

盘点双11!阿里妈妈助这些品牌短视频赢增长!

刚刚&#xff01;一年一度的双11落下帷幕&#xff0c;很多新变化值得回味。 尽管天气在变凉&#xff0c;但市场出现了逐渐回暖的迹象。在此背景下&#xff0c;大量商家特别关心如何在双11打一场漂亮的胜仗。 卖方如何行动&#xff0c;关键在于买方的变化。在阿里妈妈发布的《…...

内网可达网段探测netspy- Mac环境

netspy是一款快速探测内网可达网段工具 当我们进入内网后想要扩大战果&#xff0c;那我们可能首先想知道当前主机能通哪些内网段。 netspy正是一款应用而生的小工具&#xff0c;体积较小&#xff0c;速度极快&#xff0c;支持跨平台&#xff0c;支持多种协议探测&#xff0c;…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

无法与IP建立连接,未能下载VSCode服务器

如题&#xff0c;在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈&#xff0c;发现是VSCode版本自动更新惹的祸&#xff01;&#xff01;&#xff01; 在VSCode的帮助->关于这里发现前几天VSCode自动更新了&#xff0c;我的版本号变成了1.100.3 才导致了远程连接出…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

Element Plus 表单(el-form)中关于正整数输入的校验规则

目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入&#xff08;联动&#xff09;2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

大数据学习(132)-HIve数据分析

​​​​&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4…...

华硕a豆14 Air香氛版,美学与科技的馨香融合

在快节奏的现代生活中&#xff0c;我们渴望一个能激发创想、愉悦感官的工作与生活伙伴&#xff0c;它不仅是冰冷的科技工具&#xff0c;更能触动我们内心深处的细腻情感。正是在这样的期许下&#xff0c;华硕a豆14 Air香氛版翩然而至&#xff0c;它以一种前所未有的方式&#x…...