运用魔多 AWS 检测内网的要挟运动 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

运用魔多 AWS 检测内网的要挟运动

申博_安全防护 申博 71次浏览 未收录 0个评论

运用魔多 AWS 检测内网的要挟运动

目标

· 回忆一下关于魔多(Mordor)的背景学问

· 诠释 AWS 对魔多设想的孝敬以及它是多么的重要

· 诠释怎样启动 AWS 环境

· 诠释在这个环境是可用的情况下可以做到的事变

背景

魔多(Mordor) 是一个由罗伯特·罗德里格斯和他的兄弟 Jose Rodriguez 竖立的项目。

“ 魔多项目供应预先录制的平安事宜,这些事宜是由模仿匹敌手艺以 JSON 文件的情势天生的,以便于研讨人员运用。”预先纪录的数据依据 ATT&CK 框架定义的平台、敌手组、战略和手艺举行分类。”

魔多项目许可任何人导出模仿匹敌手艺后天生的数据,并将数据导入任何剖析平台。 这可以经由历程应用 Kafkacat 来完成,而且在这篇文章中的罗伯特·罗德里格斯有细致的诠释(Enter Mordor 😈: Pre-recorded Security Events from Simulated Adversarial Techniques 🛡)。 这是社区在数据收集和剖析方面的一个庞大奔腾。 魔多项目 使个人和团队可以经由历程预先纪录的数据集以天真和简朴的体式格局测试他们的检测战略。

尽人皆知,魔多项目标重要目标是存储和同享预先录制的数据集,你可以马上下载和重放这些数据。 然则,假如你想竖立并与社辨别享你本身的数据集,如今还没有一个简朴的要领来复制 魔多的设置。 所以,本文的一个目标就是竖立一个可反复且易于用户运用的环境。 另外,我愿望可以运用 魔多 设置来剖析我正在收集的数据。

因而,我竖立了一个 Terraform 自动化脚本,它应用 AWS 内部预先构建的 AMI 构建了一个环境。 这许可用户在约莫10到12分钟内竖立和撤除 魔多环境。这个环境是动态构建的,因而将来的任何更新都很轻易添加到个中。

什么是 Terraform

“ Terraform 是一个用于平安和有效地构建、变动和治理基础设施版本的东西。 Terraform 可以治理现有的和盛行的效劳供应商以及自定义的内部解决方案。”—— Terraform

由于构建环境云云疾速,因而用户可以疾速测试匹敌手艺,收集发作或天生的数据,或运用环境也剖析预先纪录的数据集,由于 魔多 设置已有一个 HELK 可用作其重要剖析平台。 这许可用户竖立本身的数据集,而不须要构建和保护测试环境。

是什么使得魔多 AWS 环境异乎寻常? 又是什么让我挑选运用这类环境?

魔多会继续不断进化。 因而,AWS 中的 魔多项目 的目标是为防备者们供应一个不仅可以竖立或重放数据集,而且还可以协助他们剖析数据和竖立检测战略的环境。 数据是发明要挟历程的基础症结。 这类先数据后东西的战略将魔多 AWS 项目与其他项目辨别开来。

东西驱动的要挟佃猎 Vs 数据驱动的要挟佃猎

东西有很大的代价,可以在要挟佃猎历程当中供应异常大的协助,但我们老是过于依托东西。 一个好的防备不该当基于我们在环境中具有的东西的数目,由于从数据的角度来看,十有八九我们不知道这个东西能供应给我们什么。 东西应当只是一种协助,但它们不该当为我们做事情。 依托它们来检测歹意行为为我们制作了一个庞大的盲点。 假如我们依托于一个东西,我们就会遗忘潜伏的进击面。 我们应当可以依据进击供应的数据,而不是依托于署名,寻觅匹敌性进击行为。 我们应当阔别东西驱动的要挟佃猎,转向更多的数据驱动的要挟 佃猎要领。

魔多和其他项目一样,把核心转移到了数据驱动要挟佃猎这个更大的图景上:

· 经由历程OSSEM相识我们的数据传感器和数据泉源。

· 在我们的数据源和已知的进击手艺之间竖立关联。

· 运用要挟佃猎脚本竖立一个要挟佃猎脚本,供应佃猎上下文,以及纪录进击背景和竖立要挟佃猎笔记。

· 魔多 AWS 环境许可用户纪录匹敌性进击手艺,以便竖立一个数据集来同享给社区,如许其他人就可以明白在某次进击中涉及到的数据

基础设施:

 运用魔多 AWS 检测内网的要挟运动

AWS 内部的魔多基础设施

在上图中,你可以看到 AWS 内里的魔多基础设施。 图中的线示意数据和日记在环境中的运动体式格局。 每台机械(除了 WECServer 以外)都有一个 Windows 事宜转发器战略,个中的机械被示知将日记转发到 WECServer。 WECServer 运用 Windows Event Collector (WEC)效劳,该效劳经由历程定阅吸收来自其他机械的日记。 以后,在 WEC 效劳器里的日记,将被经由历程 winlogbeat 转发到 HELK。

关于 AWS 环境的细致概述,我发起你浏览 AWS 文件夹下的 GitHub 项目标自述文件。 内容比较多,扼要的概述以下:

这个环境包含:

AD 环境:

· 1个 AD/DC (运动目次或域控制器)

· 1 个WEC (Windows Event Collector)

· 3 个 Windows 10事情站

每一个 Windows 事情站都有一个叫做VulnerableService(软弱效劳)的效劳,可以用于权限提拔。 搜检目次和效劳权限。

3 台 Ubuntu 机械 (非域内机械) :

· 1 台 HELK (Ubuntu 18.04)

· 1 台 Apache Guacamole (为了适用于这个项目,我对 user-mapping.xml 举行了修正)

· 1 台红队操纵员机械(用于竖立 C2)。 如今在这个试验室里有两种 C2,一种是 Empire (帝国) 作者是 威尔 ,另一种是 Covenant (盟约) 作者是 瑞安 · 科布)

正如你所看到的,一切的机械都到场到了 shire.com 域中。 特定的审计和组战略是经由历程一个名为 import_gpo.ps1 的 powershell 脚本经由历程域控制器效劳器(HFDC1.shire.com)推送出去的。 假如你愿望看到应用于环境的审计战略列表(我在下面引用了这些战略) ,可以在这个 GitHub 代码堆栈中找到这个列表,以及本文中提到的任何脚本。

WEC 效劳器是经由历程名为 configure-wec.ps1 的 powershell 脚本举行设置的。WECServer 将一切纪录的事宜(Windows Security、 Sysmon、 PowerShell 等)从 HFDC1、 ACCT001、 IT001和 HR001发送到 HELK,在 HELK 中你可以查询特定事宜的数据。

须要注重的是,在 魔多 环境中,事情站WECShire.shire.com 不会将本身的日记发送给 HELK,只需其他一切的事情站会发送给 HELK。 它只充任事宜收集器和事宜转发器。 在实在的环境中,你会愿望启用这个功用。 我们决议不如许做,目标是使数据集的大小更小一些。

须要注重的另一个事变是,审计战略和 sysmon 设置没有过滤掉 a-lot。 这意味着,他们过滤掉了没必要要的噪音,比方 winlogbeat 流量,但这是设想特征的一部份,以确保收集到足够的数据。 当涉及到数据收集时,考虑到这一点是异常重要的。 这使得我们不会错过与我们正在收集的进击行为相干的细节。 当基于 魔多 数据集构建检测时,请相识清晰你的环境中启用了哪些数据源。

运用魔多 AWS 检测内网的要挟运动

HELK 内部的 Sysmon 控制面板

Windows 事情站是异常规范的。 它们被重新命名并添加到 shire.com 域。

启动 AWS 环境:

罗伯特·罗德里格斯和我愿望这个环境的设置历程尽量的简朴化。 为了完成这一点,我们尽量地做到自动化。 要启动环境,请依据项目文档中的步骤或依据下面的视频操纵:

在 AWS 中构建魔多

毛病消除技能可以在这里的自述文件中找到。

怎样才易于运用:

这个环境的目标之一是让最终用户可以疾速接见任何机械,而没必要手意向他们发送 SSH 或 RDP (固然,这个选项依然可用)。 为了完成这一点,terraform 将挪用一个预先构建的社区 Linux 机械,从头最先构建 Apache Guacamole。

什么是 Apache Guacamole

它是一个许可你经由历程 RDP、 SSH 和 VNC 在 web 浏览器上与客户机和事情站交互的效劳。 假如你从来没有运用过 Apache Guacamole,那末你只须要在 魔多 AWS 环境中经由历程你挑选的浏览器进翻开 https://apache_guacamole:8443/guacamole。 你可以运用以下凭据登录此页面:

guacadmin:guacadmin

然后你就可以衔接到你挑选的 Apache Guacamole 界面,并与之举行交互!

[视频] Apache Guacamole 引见

在这个可用的环境中,用户可以做些什么?

通过构造特殊的HTTP包来夹送恶意的HTTP请求(下)

(接上文) 请求存储 如果应用程序支持编辑或存储任何类型的文本数据,那么漏洞利用就非常容易。通过在受害者的请求前缀上加上一个精心设计的存储请求,我们可以让应用程序保存他们的请求并将其显示给我们,然后窃取任何身份验证cookie或标头。以下是使用其profile-edit编辑端点定位Trello的示例: POST /1/cards HTTP/1.1
Host: trello.com
Transfer-Encoding:[tab]chunked
Content-

这个环境有一个功用完全的 AD 环境,可以在几分钟内构建完成。 这可认为你供应几个选项,但最重要的是竖立和纪录数据集的完全可用性。 完成此操纵后,你可以查询数据,或许将其发送给其他人,以便他们可以查询数据。 但,这是怎样做到的?

竖立数据集:

1. 让你的进击预备在 Empire(帝国)框架或Covenant(盟约)框架内。 关于怎样启动这两个框架的步骤可以在 竖立–框架  中找到。

[视频]在魔多AWS 中启动 帝国或盟约框架

2. 在你挑选的机械上竖立接见权限

· 竖立一个监听器,然后将代办放在要进击的机械上。 如许做的缘由,是由于我们正在针对某一种特定的进击手艺收集数据,而不是可以登入某个机械的初始立足点。 假如你不知道怎样做到这一点,请检察帝国框架的文档:https://www.powershellempire.com/ 或许是盟约框架的文档:https://github.com/cobbr/Covenant/wiki。

3. 为你挑选实行的进击预备好模块。 先别焦急按实行键。

4. 切换到 HELK 机械并预备 kafkacat 用于最先收集数据。要做到这一点,请实行以下示例敕令:

kafkacat -b HELK-IP:9092 -t winlogbeat -C -o end > name_technique_$(date +%F%H%M%S).json

注重: 实行此操纵须要 root 权限。

关于本文中的这个例子,我们将运用以下敕令:

kafkacat -b HELK-IP:9092 -t winlogbeat -C -o end > kerberoast_(date +%F%H%M%S).json

5. 切换到帝国效劳器并实行进击手艺。

6. 进击胜利后,切回 HELK 机械。

7. 守候30-45秒,以便 kafkacat 有时候从此次进击中提取一切数据,然后按 Control-C。 这将住手提取数据的历程。 一切数据如今都以 json 花样存储,可以下载到当地机械上,也可以下载到你挑选的 SIEM,然后最先剖析数据并构建一个鲁棒的检测模子。

[视频]运用 kafkacat收集数据

疾速举行数据探究:

接下来,我们将对新纪录的数据集运转 uruk_hai_stats.py,以显现与此次进击相干的日记统计数据。 此脚本将依据日记称号、源称号、使命和纪录编号对数据举行排序。 这有助于我们明白在进击时期可以发作若干数据。 记着,并非一切这些数据在检测事情中都是有效的。

假如你想相识日记供应顺序和收集到的特定审计使命,可以运用项目中供应的脚本:

python3 uruk_hai_stats.py -f name_technique_$(date +%F%H%M%S).json

关于这个演习,可以实行以下敕令:

python3 uruk_hai_stats.py -f /home/aragon/kerberoast_2019–07–14005430.json

运用魔多 AWS 检测内网的要挟运动

Uruk-Hai 统计效果显现的是方才竖立的 Kerberoast 进击的数据集

假如你想在你本身的试验室里运转这个体系,一定要装置 pandas 和 python3。 在设置历程当中,这些库已装置在了魔多 AWS 中。

将数据集下载到当地机械:

末了,你可以将数据集保存在环境中并在 HELK 举行剖析,但也可以运用 SCP 将其下载到当地机械上。 这可以让你在你所挑选的任何 SIEM 中运用数据集,因而你可以最先构建你的检测事情。

要做到这一点,请实行以下敕令:

sudo scp [email protected]:path/to/dataset/ /path/to/destination

运用 kafkacat 将数据集推送到 SIEM:

在这个例子中,我们将运用 魔多 环境中的 HELK 实例。 只需你有一个Kafka broker,你就可以在 SIEM 上运转这个顺序。

1. 解压缩挑选的数据集:

tar -xzvf empire_kerberoast.tar.gz

2. 运用 kafkacat 将数据集发送给 Kafka broker:

kafkacat -b <HELK IP>:9092 -t winlogbeat -P -l kerberoast_2019–07–25200422.json

Kafka broker 提取数据约莫须要 30 秒的时候。 完成这些以后,你就可以最先查询数据了!

注重: 见下面的 kafkacat 视频,在演示中看到详细的操纵。

剖析数据

要挟佃猎前的运动:

在一个优越的要挟佃猎或检测竖立之前,有一些初始的行为会发作。 这就是相识你的数据传感器和它们运用的数据源——历程监控、文件监控等。 这是要挟佃猎前的运动中被跳过的次数最多的一个异常症结的部份。 在最先查询数据之前,我们必需相识这类进击手艺以及基于我们对数据的明白而可以触发的事宜。 我们该怎样做到呢?

1. 明白你正在检测的进击手艺。 它的进击面是什么? 是针对用户、机械照样 AD 的进击? 它是不是滥用认证协定? 这个进击是基于收集照样基于主机? 可以经由历程浏览当前公然的关于进击手艺的文档和博客做到这一点。 比方, MITRE ATT&CK 是研讨进击手艺的一个很好的资本。

2. 明白我们的数据源。 这可以经由历程 OSSEM 来完成。 竖立这个项目是为了向社区供应数据字典,并供应关于我们的数据传感器和数据源的上下文。 它协助我们将事宜映射到特定的数据源,这在我们的检测要领中是一个症结因素。

比方,在明白了某种进击手艺的事情道理,并将这类学问与 OSSEM 内部的信息结合起来以后:

· 我可以提出一个高等的假定,即 kerberoasting进击手艺将发作 Windows 平安事宜,特别是 4769 事宜: 要求效劳票证。 我们愿望查找具有0x0状况的事宜,这意味着已授与了效劳票证

· 我还知道这类进击正在滥用 Kerberos 身份验证协定,我还可以假定,由于这类进击要触发的事宜会纪录在 DC 机械上,由于密钥分发中间(KDC)就托管在 DC 机械上。

· 经由更多的研讨以后,我发明要求效劳票证的帐户不是机械($)帐户,他们试图接见的效劳票证称号一般不会是 krbtgt 帐户或机械($)帐户,毛病代码是0x0,票证加密一般以 RC4花样要求——这要么让我们找到敌手正在运用的帐户,要么限定搜刮效果,让你可以找出误报信息,从而更轻易找到敌手。 在实在的环境中,这必需依据环境参数举行调解,而且须要更好地指定查询前提,然则如许做可以设置一个优越的基线。

魔多 环境中实行查询又是什么样的?

event_id:4769 AND ticket_encryption_type_value: “RC4-HMAC” AND NOT (user_name.keyword:*$ AND service_ticket_name:krbtgt AND service_ticket_name:*$)

运用魔多 AWS 检测内网的要挟运动

在 Kibana 中对 Kerberoast 进击事宜的查询

运用魔多 AWS 检测内网的要挟运动

Kibana 中的 Windows 4769 平安事宜

下面这个简短的视频演示了 kafkacat 向 Kafka broker 供应日记以及对 kerberos 进击的查询:

总结和目标:

跟着 AWS 中 魔多环境的生长,AWS中魔多的目标是为防备者供应一个环境,使他们不仅可以开发出牢靠的检测战略,而且可以更好地进修和明白数据集。 数据是要挟佃猎历程的基础症结。 熟习OSSEM内部的数据字典,明白与进击手艺相干的数据关联,竖立一个与你挑选的进击手艺相干的数据集,并疾速剖析这个环境中的数据。 在你熟习了数据、数据流传的缘由以及数据关联以后,防备者就可以最先设置明白进击手艺和对应行为的基线。 这就是魔多设想脱颖而出的缘由,也是对社区的协助。 它可以让你习气并熟习数据进击手艺的流传。 如许,在将来发明进击手艺行为将最先变得越发轻易。

魔多 最初的主意是分享数据集。 因而,须要对用于竖立 / 纪录 / 导出数据集的初始环境举行很好的文档化,以确保我们明白了数据。 这个观点使得在 AWS 中复制环境变得异常轻易,而且运用雷同的纪录完全的规范设置供任何人运用,而且愿望可以同享他们本身的数据集。 另外,魔多 AWS 环境已有了一个像 HELK 如许的剖析平台。 为何不用它来剖析我们正在纪录的数据呢?

我愿望你喜好这个环境。 假如碰到任何问题,不要犹疑,竖立一个 issue 给我们。 我们中的某个人会尽快处置惩罚它的。

祝列位要挟佃猎兴奋!

 

本文翻译自:https://posts.specterops.io/aws-knocked-and-the-gates-of-mordor-have-answered-58540d8e3995如若转载,请说明原文地点: https://www.4hou.com/system/19757.html


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明运用魔多 AWS 检测内网的要挟运动
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址