【译文】假定失陷:进攻性安全测试的变迁

admin 2024年5月24日22:03:09评论4 views字数 5617阅读18分43秒阅读模式

原文:https://trustedsec.com/blog/assumed-breach-the-evolution-of-offensive-security-testing
译者:白袍

这篇文章有一个单纯的目的:告知您(单纯看到文章的人、客户或竞争对手),我们正努力满足随着时间推移而增长的关于假定失陷测试的特定行业需求。

在我们这个信息安全世界中,充斥着源源不断的高技术性信息,这篇文章在结尾时采取了更具思考性和幽默的方式。没有 GPT 生成的东西,甚至没有表情包,只是一个乡村男孩以出奇快速的互联网连接和喜欢进行复杂思维活动的倾向,对进攻性安全行业进行的沉重而戏谑的反思。

我建议一边享用你喜欢的饮料一边阅读,但对于急躁的人,我会在“场景”章节下讨论我们的假定失陷测试模型的具体内容。

重温那段咸涩的记忆

目前,网络渗透测试主要分为两个主要类别:外部和内部。外部测试通常范围限定在 IP 地址或主机名,并以黑盒方式进行(没有凭据,没有远程访问权限,需要自行寻找),而内部测试通常是从一个网络植入设备上运行的,该设备被安置在客户方的网络中。这种设备通常包含一个 Linux 发行版,如 Kali 、 Ubuntu 或 BlackArch ,它会建立一个反向 SSH 隧道并返回到测试总部,测试人员使用该隧道连接并进行测试。

在2024年,大多数组织都已经对这些概念相当熟悉了。对于重大故障的担忧大多并未成真,尽管偶尔会出现一些被锁定的账户和一些愚蠢到在 Active Directory 中搞乱 Naming Contexts 配置的人,但总体而言,进攻性安全行业中最大的耻辱是那些根本不进行测试,而只是将 nmap 或 Nessus 的结果粘贴到报告中的测试公司。现在我依然能听到这类情况,这和10年前一样让人难堪。对于这些公司来说,额外的难堪是必要的,因为在基于行为的控制措施出现之前,渗透测试对于懂得黑暗艺术的人来说很容易,并且是极其愉快的。

进攻性行业多年来一直依赖那些午饭前就能获取域管理员的技艺,如 Responder 、 Mimikatz 和 PowerSploit 。每次红队成员在会议上发言时,都反复强调“基本功”(最低权限访问、系统打补丁、良好的安全基线等)的重要性,以至于让防御者感到羞愧,并在推特上发出类似“我们连基本的都做不好,还能怎么办?”的头条推文。防御者沉浸在自己的泪水和内疚中,注定要面对无尽的失陷披露、节假日值班噩梦,以及来自红队的“ McAfee LOL ”的嘲笑,同时屏幕上不断飞过一连串的哈希值,仿佛置身于充满红牛和狂欢的迷雾中。然而,这种幸灾乐祸的情形不会持续太久。

防御者不甘示弱,做了他们一直在做的事,有时还做得很好:即适应变化。就像摆脱了青春期的胆怯一样,防御者意识到杀毒软件不会拯救他们,于是开始大量摄取内部日志,决心增加关键位置的可见性(当时是终端)。整个行业开始重视重要的事件代码,如4688、4662和5145,明白了他们一直在寻找的宝贵数据其实只需要正确的组策略对象(GPO)来启用。

十几GB的日志被生成,再全部整齐地接入开源和商业 SIEM (如 Splunk 、 Graylog 和 ELK Stack )中。紫队的参与使检测能力得到增强和调整,高质量警报的 dashboard 首次被交到SOC的手中,而那些没有因为“它们从来没起过作用”而删除这些 dashboard 的SOC,至少享受到了更多的安稳睡眠。

但并不仅仅是内部防御团队在关注这些,安全供应商们也注意到现有的安全工具被阻止了……嗯,几乎所有层面都不够有效,所以就有了一个市场空缺,即需要能够真正检测和防止实际攻击的工具(不只是“阻止 mimikatz ”哈哈)。新产品被推出了,史上首次实现了企业信息安全的终极梦想:能买到的安全。EDR 以令人难以置信的力量出现在市场,并在短短几年内被大量采用。我们现在对绝大多数客户进行红队测试时,其使用基本上是两种终端控制之一:CrowdStrike 或 Microsoft 。两者都很有效。最终,防御者意识到了一直以来的真相:他们掌控着战场。

红队多年来曾经习惯于密码可以被轻易获取(在 CCDC 中甚至是直接交给他们,这对我们的自尊心毫无帮助),如今却被迫重新学习起好奇心的艺术,因为他们早已在 Responder 日志的源源不断供应中变得懒散。红队不习惯被检测到,于是启动了“幽灵协议”(译者注:碟中谍4片名梗),开始在社交媒体上隐藏其 TTPs 。对抗模拟(‘ AdSim ’)和‘ Red Team ’活动成为焦点,给予红队更多时间来适应防御并研究新的攻击方法。尽管自尊心受到打击,但防御能力的大幅提升迫使顶级红队团队在内部技艺和工具上进行重大投资,并利用这些改进显著提升客户的防御能力。那些利用这些改进的组织,其安全态势得到了巨大提升。

尽管人们对 OSTs (译者注:即 Outflank Security Tooling , Cobalt Strike 所属公司 Fortra 收购了 Outflank )大惊小怪,对 C2 和 bypass 等术语进行琐碎但滑稽的辩论,但红蓝方法论一次又一次地证明了自己的价值。改进红队,你就会改进蓝队(译者注:俗称“以攻促防”)。与此同时,防御者意识到红队确实是为他们的最大利益着想,制造的对抗实际上是一件好事。红队正确地得出结论,认为良好的防御是令人难以置信的(也许甚至有点…有趣…),而且如果他们仔细观察,防御者会帮助红队开发新的技艺。那么,我们如何继续这种改进的循环呢?

为了跟上似乎日益提高的防御水平,红队做出了第一个合乎逻辑的举措:增加参与时间。这在一定程度上有效,一些客户愿意签订为期数月的红队参与协议,更看重现实性和隐蔽性。但隐蔽性需要时间,而不是所有人都能负担在网络中进行最低限度和最缓慢的操作。随着行为检测基于数周和数月的用户活动基线,时间的优势不断被侵蚀。红队需要一种在不超出预算的情况下提供有针对性价值的方法。

引入假定失陷

假定失陷评估旨在模拟一种威胁情景,即攻击者已经通过某种方式获得对内部网络的访问权限。但我们说的是什么场景呢?这不就是内部渗透测试所做的吗?是的,有点类似。标准的内部渗透测试所模拟的最接近的威胁场景是物理入侵,但即便如此,重点仍在于覆盖面。也就是说,能发现多少提升权限的脆弱路径,以及在此过程中记录了哪些漏洞,如果进行修复可以封堵这些路径。要尽可能快地完成所有这些工作,针对尽可能多的系统,然后以准确和专业的方式交付结果。

一家公司的安全形势可以通过简单地修复渗透测试发现的问题得到极大改善,很多公司已经这样做了。很讽刺的是,我所认识的大多数优秀的渗透测试人员都严重低估了他们自己的技能。然而,这可能是一件好事(至少在一定程度上),因为渗透测试的表现如果与缺乏约束的道德结合起来,很容易走向犯罪活动,正如 LockBit 领导人在2022年接受 vx-underground 采访时所暗示的那样:

【译文】假定失陷:进攻性安全测试的变迁

  • Q: 你自己创建了 Lockbit 吗?还是说你有一个团队?
  • A: 我有一个团队,并且我是负责人,Lockbit 1.0并不是独自构建的。现在我们的团队已经有了10多名成员,包括渗透测试者、开发者、洗钱者、测试者和谈判者。

不好意思扯远了。那么,假定失陷和渗透测试之间的实质性区别是什么呢?简而言之,正如我之前提到的,渗透测试是基于覆盖面的,而假定失陷是基于场景的。假定失陷是渗透测试的“进化”吗?不完全是。只要存在企业环境,渗透测试就会继续提供价值。然而,如上所述,控制措施已经显著改善,迫使攻击团队调整其服务。即使是那些仍然存在非 IT 用户却有本地管理员权限的企业,也可以通过购买 EDR 立即提升其终端安全,从而让红队感到挫败。这仅仅意味着红队必须缩小入侵的重点,即针对成熟组织进行基于场景的测试。

我们已经确定了几种威胁场景:

  • 边界突破
  • 不满的员工/恶意内部人员
  • 成功的社会工程攻击
  • 凭证滥用
  • 内部设备的物理盗窃或丢失
  • 物理入侵

这些当然是失陷的高级类别,并且本意如此。它们之间也存在重叠。例如,很容易想象一次成功的社会工程攻击导致了凭证滥用。红队经常这样做。话虽如此,有些界限必须划定,而这次尝试是为了尽可能清晰地划定这些界限。

那勒索软件呢?!我知道这个问题,并且多次被客户问到类似的问题。难道勒索软件不是一个有效的威胁场景吗?直接的回答:不完全是。对,勒索软件代表了一种失陷后的高影响结果,但它本身不是失陷(译者注:即勒索病毒不是一种攻击,而是一种商业模式)。数据丢失也是一种可能的后果,但它不是一个威胁场景。正确分类我们的术语及其含义是很重要的。此外,部署勒索软件的要求与假定失陷或红队演练中的标准权限提升目标类似。在大规模部署勒索软件之前,攻击者必须在目标主机上拥有足够高的权限。底线是——修复在假定失陷演练中发现的权限提升路径,你就可以'遏制'勒索软件部署的'爆炸'。与和你关系好的本地红队成员交流,了解与备份系统相关的路径。

场景

TrustedSec 设计了七个假定失陷方案,目的是覆盖这些威胁情景。从下面的图表看,你可能会认为有些情景不在你的威胁模型中。这完全没问题(即使存在争议),因为目的是提供不同类型的针对性测试,这些测试将与你的威胁模型有重叠。

【译文】假定失陷:进攻性安全测试的变迁

  1. 单点登录失陷
    • 威胁场景:不满的员工、成功的社会工程攻击、凭证滥用
    • 描述:模拟一个 O365 账户失陷的情况下, TrustedSec 将尝试使用单点登录(SSO)访问附加到 O365 租户的第三方服务,外传并分析可访问的信息。如果实现内部网络访问,则不会执行内部网络分析
    • 最短时间:1周
    • 对客户的需求:
      • SSO 门户信息(Okta,Ping,O365)将作为目标
      • 失陷用户的有效凭证。为了获得最大价值, TrustedSec 建议使用现有的在职员工(首选)或最近被终止但仍保留访问权限的账户
      • 如果有必要,提供多因素认证(MFA)访问的联系人
  2. Network Pivot (译者注:Pivot指的是从一个被攻陷的系统或网络位置转移到另一个位置的行为,中文语境里似乎没有一个非常恰当的词对应它,所以暂不做翻译,后文同
    • 威胁场景:边界突破、不满的员工、成功的社会工程攻击、凭证滥用
    • 描述:TrustedSec 将与客户提供的员工合作,模拟通过成功的社会工程攻击可能实现的失陷。使用白名单基础设施和 payload ,利用一个用户机器建立 C2 通道并利用它针对网络进行攻击,目标是实现一个单一的后渗透目标。这次演练的重点在于后渗透活动和检测,而不是规避终端控制测试
    • 最短时间:2周
    • 对客户的需求:
      • 以下两个其一:
        • TrustedSec 将提前提交 payload 和基础设施细节以供加白
        • 内部员工(非 IT 员工优先)充当受损终端, TrustedSec 将与员工合作建立非侵入式C2
      • 提供一台笔记本电脑和/或一份具有域凭证(用户名/密码)的 Citrix VDI 镜像,其访问权限与现有工作角色相匹配
  3. 终端失陷和Pivot
    • 威胁场景:边界突破、不满的员工、成功的社会工程攻击、凭证滥用
    • 描述:TrustedSec 将与客户提供的员工合作,模拟可能通过成功的社会工程攻击实现的失陷。使用定制基础设施和规避性payload,利用一个用户机器建立C2通道并用于隐蔽地、有针对性地追求后利用目标的网络攻击
    • 最短时间:3周
    • 对客户的需求:
      • 内部员工(非 IT 员工优先)充当失陷终端, TrustedSec 将与员工合作建立非侵入式C2
      • 客户可以选择两个目标(应用程序、服务器、IP 地址、访问级别)进行追踪
    • 注意:在本评估中,不支持使用备用笔记本电脑或具有通用域凭证的标准镜像,因为攻击者很依赖于日常的使用来进行形势感知。
  4. 边界失陷
    • 威胁场景:边界突破、成功的社会工程攻击
    • 描述:模拟外部 Web 应用程序的失陷, TrustedSec 将利用指定Web服务器或数据库服务器建立 C2 通道(成功的 SQL 注入攻击),并尝试从各种角度入侵目标应用程序或网络环境。这可以采取各种形式,如 Webshell 或完整的 C2 通道
    • 最短时间:3周
    • 对客户的要求:
      • 以应用程序帐户权限,在所选的 Web 服务器或数据库服务器上执行木马
      • 根据防火墙规则,可能需要加白以允许必要的出站流量
  5. DevOps
    • 威胁场景:不满的员工、凭证滥用
    • 描述:TrustedSec 将使用客户提供的笔记本电脑连接到内部网络,并探测与开发和运营相关的漏洞,如存储库权限、硬编码凭据和不当的基础设施访问权限。攻击将针对客户的 DevOps 环境和相应基础设施进行高度定制
    • 最短时间:3周
    • 对客户的需求:
      • 具有开发者权限的帐户
      • 带有标准的开发者环境的笔记本电脑
      • 远程访问 DevOps 环境
  6. 工作站失陷
    • 威胁场景:不满的员工、内部设备的物理盗窃或丢失
    • 描述:TrustedSec 将测试物理工作站或 Citrix VDI 镜像,以查找各种安全错误配置,包括硬件和软件漏洞(如适用)。一般情况下,利用仅限于本地计算机,不会跨越网络边界。任何提供的硬件可能会被 TrustedSec 自行拆卸
    • 最短时间:2周
    • 对客户的要求:
      • 具有标准配置和/或 Citrix VDI 访问权限的笔记本电脑
      • 非管理员登录凭证
      • (可选)远程访问公司网络
  7. 物理入侵
    • 威胁场景:不满的员工、物理入侵
    • 描述:TrustedSec 将通过安置一种特殊设备模拟成功的物理入侵,该设备可以规避大多数 NAC系统,并且不需要出站防火墙加白。该设备目的是成为一个真正隐秘的设备植入物, TrustedSec 将利用相应的连接,使用标准技术来实现网络失陷
    • 最短时间:2周
    • 对客户的要求:
      • 具有持久内部网络连接的物理机器
      • 在 LTE 蜂窝服务范围内

总结

我希望这篇文章能给你们提供一些关于自身威胁模型的思考,并思考这些模型如何影响你们下一轮的攻击测试。如果在此过程中让你们会心一笑,那也是一个很不错的收获。如果你们是内部团队,可以灵活调整和利用这些场景,从中获得巨大的好处,因为你们肯定比第三方有更多的时间和能力。

如果你坚持读到这里,你应该去散散步,或喝一杯,随你喜欢。

干杯!

原文始发于微信公众号(弱口令安全实验室):【译文】假定失陷:进攻性安全测试的变迁

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年5月24日22:03:09
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【译文】假定失陷:进攻性安全测试的变迁https://cn-sec.com/archives/2774762.html

发表评论

匿名网友 填写信息