分享

国民教父郭盛华:为什么PowerShell在攻击者中如此受欢迎?

 太平洋资讯 2019-10-23

中国教父级网络黑客安全专家郭盛华在广州2019互联网安全大会上透露:当今,恶意PowerShell脚本是最普遍的威胁之一。有许多高级持久威胁(APT)参与者已使用PowerShell作为交付或迁移机制。商品恶意软件也使用PowerShell已有很长时间了。在许多情况下,Microsoft Office宏恶意软件使用PowerShell脚本继续进行进一步的攻击。MITER ATT&CK矩阵很好地总结了这些趋势。有一些攻击工具包,例如PowerShell Empire和PowerSploit,它们使用PowerShell作为主要实现语言。

为什么PowerShell在攻击者中如此受欢迎是有很多原因的。从Windows 7开始,Windows平台默认已安装PowerShell。PowerShell在与Windows子系统交互方面非常强大。使用PowerShell可以轻松实现大多数常见的恶意软件活动,例如删除文件并运行它们,以及与命令与控制(C&C)服务器进行通信。一些攻击框架通过将下载的可执行文件反射地加载到内存中来支持无文件操作。通过这些方面,PowerShell是执行无文件非现场攻击的理想工具。反恶意软件行业的传统防御机制非常关注基于文件的威胁,在覆盖这种新的无文件趋势方面仍然存在巨大的技术差距。

从攻击者的角度来看,PowerShell的唯一问题是源代码易于公开。为了避免简单的分析和检测,他们花了很多精力来混淆PowerShell脚本。他们还将脚本分成许多部分,并一一交付。在多次混淆的PowerShell执行之后交付最终威胁。这些策略在许多情况下都非常有效。由于这些事实,在大多数情况下,分析和理解基于PowerShell的威胁是非常耗时的工作。

通过本文,我们将分析使用混淆和有效负载拆分的最典型情况之一,并将讨论一种可以帮助分析师更有效地执行工作的新方法。混淆的PowerShell代码,以下代码显示了通过Office Excel VBA脚本传递的PowerShell威胁之一。黑客安全专家郭盛华透露:“使用沙盒技术可以很好地观察到这种威胁的行为。例如,通过any.run会话,您可以观察Excel如何运行PowerShell脚本来运行进一步的攻击。在命令提示符下将混淆的脚本设置为Windows环境变量后,将使用PowerShell实例。”

PowerShell脚本代码被高度模糊处理,手动消除这种威胁可能需要人类研究人员付出巨大的努力才能完全理解这些威胁。许多因素使此脚本很难分析。首先,它将PowerShell类和函数名称拆分为多个字符串,并即时进行组合。其次,它使用base64编码来编码下一阶段的脚本并随机化其顺序,以防止对该脚本进行暴力破解。第三,它使用压缩来防止对编码的base64代码进行部分解码。而且,它使用多个变量在代码的不同位置拆分逻辑。PowerShell ISE中使用调试功能提供了很好的指导。可以使用ISE分析恶意PowerShell代码。国民教父郭盛华表示:“大多数情况下,您需要某种程度的自动化,自定义PowerShell调试器可能会更好地工作。”(欢迎转载分享)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多