AppLocker

前几篇文章中,我介绍了AppLocker(AL)如何阻止进程创建操作的一些基本知识,在本文中,我将分析AL如何阻止DLL加载。
在上一篇文章中,我大概介绍了AL如何阻止进程创建操作,但没有解释AL如何处理相关规则,以确定特定用户是否可以创建进程。这方面内容其实非常重要,这里我们将按照与上一篇文章相反的顺序来介绍。
这里我们将开始深入研究具体细节,分析AL如何阻止策略不允许的进程创建操作。
AppLocker是Windows 7企业版及更高版本中添加的一个功能,是替代SRP(Software Restriction Policies,软件限制策略)的较为复杂的一种应用程序白名单解决方案。
对抗的意义可以从两个维度去考究:从运维人员的视角来看往往采用SRP或者AppLocker等安全策略提高系统的安全性;从黑客攻击的视角来看攻击者们的行动,它们的终极目标只有一个“实现恶意软件在低权限下突破安全策略运行”。
我曾深入分析过AppLocker,想从中找到绕过PowerShell约束语言模式的方法,本文介绍了我在该过程中发现的一种技术。我已将该问题反馈至微软,但对方并不想为此提供服务方案,不认为该问题满足解决标准。
约束语言模式是限制PowerShell的一种方法,可以限制PowerShell访问类似Add-Type之类的功能或者许多反射(reflective)方法(攻击者可以通过这些方法,在后续渗透工具中利用PowerShell运行时作为攻击媒介)。
在大型组织的安全领域中,AppLocker正在扮演越来越重要的角色。应用AppLocker规则可以显著降低企业的安全风险。不幸的是,对于蓝队来说除了默认规则以外,AppLocker还涉及到许多自定义配置,而这些配置很有可能成为目标安全的突破口。