原文标题:Maelstrom: An Introduction原文地址:ed4K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6H3M7X3g2Q4x3X3g2W2L8i4m8@1i4K6u0W2j5X3I4G2k6#2)9J5c8U0t1H3x3U0y4Q4x3V1k6E0j5h3g2D9M7%4c8J5L8$3#2Q4x3X3b7I4i4K6u0V1j5h3&6Q4x3X3c8A6L8Y4c8J5L8$3c8#2j5%4c8A6L8$3^5`.由于作者博客迁移的原因,原文中的图片已经失效,我在archive中找到了别人保存下来的网页:a5dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4k6h3u0Q4x3X3g2S2M7X3y4Z5K9i4k6W2i4K6u0W2L8%4u0Y4i4K6u0r3N6$3g2T1i4K6u0r3x3U0l9J5x3U0p5I4x3U0j5I4z5e0x3@1y4e0m8Q4x3V1k6Z5N6s2c8H3M7#2)9K6b7g2)9J5c8W2)9J5c8Y4m8J5k6g2)9J5k6h3g2E0M7s2c8Q4x3X3g2V1k6i4k6Q4x3V1k6H3L8%4y4@1M7#2)9J5c8X3#2S2k6h3I4K6N6s2u0G2L8g2)9J5k6r3q4F1i4K6u0V1K9h3&6@1M7X3!0V1N6h3y4@1K9h3!0F1i4K6u0r3本文由本人用chatgbt翻译而成,Maelstrom是一个概念验证的命令与控制框架,具有Python后端和C++植入程序。
指挥与控制(Command & Control,C2)框架在渗透测试、红队行动和高级持续性威胁(Advanced Persistent Threat,APT)中变得越来越常见和必要。通过结合避开防病毒/终端检测与响应(AV/EDR)机制、植入控制的实用性以及文件的创建、读取、更新和删除(CRUD)操作,C2极大地提高了操作人员在任务中的工作效率。这导致在过去的5年里,越来越多的攻击工具出现在互联网上,它们比以前的工具更先进、功能更强大。传统的咨询公司通常会通过购买现成的解决方案或使用自制的解决方案来填补C2的技术差距,例如使用定制的meterpreter dropper(使用msfvenom编码)来运行metasploit,或重新实现crackmapexec和impacket功能。然而,曾经是一种便利的方式现在变成了必要的方式,因为终端保护已经将旧的方法转变为一系列的障碍。随着行业在使用C2进行代码交付和内容检索的便利性之间取得平衡,黑客也越来越多地使用定制或破解的工具来进行自己的操作。
C2 Matrix试图尽可能跟踪不断增长的C2市场。截至撰写本文时,已经跟踪到 96102个C2。C2 Matrix的Google表格展示了社区的愿景,包括不同的植入语言、目标操作系统和用户界面/用户体验(UI/UX)。 在研究这些C2时,我们发现许多重要的C2都具有专有代码①,因为它们是咨询公司的研究项目或产品。为了保护这些商业资产的可行性,它们的源代码受到保护。这限制了防御者识别和应对使用这些C2或使用它们的研究开发的C2的能力,因为防御者必须获取和逆向分析C2植入物的样本,然后基于捕获的样本编写静态检测规则。此外,只有当这些检测规则向更广泛的社区发布(例如在VirusTotal上),每个人才能受到对这些尖端实现的保护。 一些厂商负责地解释他们的技术,这使得防御者可以推断出运行时的检测方法。偶尔,厂商会分享样本提交,这使得防御者可以编写静态检测规则,如YARA规则或更一般的防病毒签名。这些产品的最终目的是改善委托评估的客户的安全性,但当这些工具被盗、破解②③或合法购买时,对于防御者来说并没有帮助。作为对赋予攻击者权力的回报,防御者并没有免费获得相应的对策措施。 开源和破解的闭源C2广泛传播,它们的检测规则也被广泛传播。但在尖端领域,仍然存在一层迷雾。
早期的C2工具(例如Metasploit、Armitage和Empire)在测试中充当便利的工具,用于协调漏洞利用交付和信标管理。它们的复杂程度各不相同,操作人员通常能够理解它们的运作方式。著名的考试(如OSCP)侧重于直接与漏洞利用和反向Shell交互的基础知识。使用这些C2工具获取Shell所需的知识与编写自定义C2所需的知识并没有太大差距。只需要基本的Python或C#编程知识,并花一些时间重新编写反向Shell,就可以创建一个信标,该信标会返回一个Shell并且不会被反病毒软件检测到。然而,随着时间的推移,情况已经发生了变化,C2(命令与控制)已成为在安全测试中必备的工具。随着终端检测技术的改进,植入物(implant)也必须相应提升。随着植入物的改进,它们必须深入到Windows系统的更深层次。这需要更多的开发时间,从而促使闭源C2和C2模块的开发以实现投资回报。现代C2的内部行为几乎成为一个封闭盒子,因为开发所需的知识超过了操作它们所需的知识。在2010年代初,行业的工作流程主要围绕将植入物作为可执行文件或PowerShell脚本放置在磁盘上展开。而现代的分阶段工具包含了更复杂且定制化的方法来植入植入物,例如环境关键(environmental keying)、通过系统和Web代理进行的间接回调以及防止深度数据包检查的通道。现在,防御者必须使用高级的威胁指标(IOC)来检测和响应,而不仅仅是使用针对已知C2植入物的签名。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课