当前位置: 首页 > 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;…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话&#xff1a; “利润不是赚出来的&#xff0c;是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业&#xff0c;很多企业看着销售不错&#xff0c;账上却没钱、利润也不见了&#xff0c;一翻库存才发现&#xff1a; 一堆卖不动的旧货…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理&#xff1a;刘治强&#xff0c;浙江大学硕士生&#xff0c;研究方向为知识图谱表示学习&#xff0c;大语言模型 论文链接&#xff1a;http://arxiv.org/abs/2407.16127 发表会议&#xff1a;ISWC 2024 1. 动机 传统的知识图谱补全&#xff08;KGC&#xff09;模型通过…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾&#xff1a; 在上一篇中&#xff0c;我们成功地为应用集成了数据库&#xff0c;并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了&#xff01;但是&#xff0c;如果你仔细审视那些 API&#xff0c;会发现它们还很“粗糙”&#xff1a;有…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

以光量子为例,详解量子获取方式

光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学&#xff08;silicon photonics&#xff09;的光波导&#xff08;optical waveguide&#xff09;芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中&#xff0c;光既是波又是粒子。光子本…...

React---day11

14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store&#xff1a; 我们在使用异步的时候理应是要使用中间件的&#xff0c;但是configureStore 已经自动集成了 redux-thunk&#xff0c;注意action里面要返回函数 import { configureS…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档&#xff09;&#xff0c;如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下&#xff0c;风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...

Java毕业设计:WML信息查询与后端信息发布系统开发

JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发&#xff0c;实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构&#xff0c;服务器端使用Java Servlet处理请求&#xff0c;数据库采用MySQL存储信息&#xff0…...

动态 Web 开发技术入门篇

一、HTTP 协议核心 1.1 HTTP 基础 协议全称 &#xff1a;HyperText Transfer Protocol&#xff08;超文本传输协议&#xff09; 默认端口 &#xff1a;HTTP 使用 80 端口&#xff0c;HTTPS 使用 443 端口。 请求方法 &#xff1a; GET &#xff1a;用于获取资源&#xff0c;…...