2小时前来源:安全牛网
Windows一直是罪犯和安全研究人员钟爱的攻击目标,但微软在让该操作系统安全漏洞更难以利用上交出了一份不错的答卷。
php?url=0EFxpFVFA6" alt="介绍一下令高级黑客都肃然起敬的 Windows 10 安全机制" />
只要Windows依然是流行攻击目标,安全研究人员和黑客就会继续冲击该平台,找到高明的策略来颠覆微软的防御。
但随着微软在 Windows 10 中加入用以摒除各类攻击的多种高级缓解措施,安全门槛已比过去抬高了很多。虽然今年的黑帽大会上,黑客们携各种高端漏洞利用技术汹汹而来,却也默认:如今想开发对 Windows 10 有效的攻击技术已经困难许多了。甚至仅仅几年前,通过操作系统漏洞攻入Windows就已更难实现。
采用内置反恶意软件工具
微软开发出了反恶意软件扫描接口(AMSI)工具,可以在内存中捕捉恶意脚本。任何应用程序都可以调用这个接口,任何注册反恶意软件引擎都能处理提交给AMSI的内容。Windows Defender 和AVG目前正在使用AMSI,这一接口应该被更广泛地采纳。
NoSoSecure渗透测试员兼助理顾问在黑帽大会的演讲上说:“AMSI是Windows系统上封锁脚本攻击的一大步。”
网络罪犯们越来越依赖于脚本攻击,尤其是那些用PowerShell执行的脚本,这些脚本组成了他们攻击行动中不可或缺的部分。由于很难与合法行为区分开来,公司企业很难发现采用PowerShell的攻击。而且,因为PowerShell脚本可用于管理系统和网络的方方面面,恢复起来也十分困难。尤其是现在每个版本的Windows都预载了PowerShell,基于脚本的攻击就变得更加常见了。
罪犯们开始采用PowerShell,在内存中加载脚本,但防御者想要赶上却还需要时间。直到几年前,才有人开始注意到PowerShell。恶意脚本根本就不会被检测到。杀毒软件厂商直到3年前才开始领会到PowerShell的能量。
检测存在硬盘上的脚本不难,但阻止内存中的脚本运行就不容易了。AMSI试图在主机层级捕获脚本,也就是说,输入方式――无论是存在硬盘上,留在内存里,还是交互启动,无关紧要!AMSI是游戏规则颠覆者。
然而,AMSI不能独立运行,因为其有用性依赖于其他安全方法。执行脚本攻击很难不产生日志,所以,Windows管理员定期检查PowerShell日志就显得十分重要了。
AMSI并不完美――经混淆编码的脚本,或者从WMI名字空间、注册表、事件日志等非常规位置加载的脚本,就不太会被AMSI检测出来。不用powershell.exe执行(可用网络策略服务器之类的工具)的PowerShell脚本也会使AMSI失效。绕过AMSI的方法也有很多,比如修改脚本签名、使用 PowerShell 2 、或者禁用AMSI。但无论如何,AMSI是Windows管理的未来。
保护活动目录
活动目录(AD)是Windows管理的基石,随着公司企业持续将工作负载移动到云端,它也成为了愈加关键的组件。AD如今不再用于处理内部公司网络的身份验证和管理,而是协助微软Azure中的识别与认证。
Windows管理员、安全从业人员和攻击者,全都对活动目录有着不同的理解。对管理员来说,重点在于系统正常运行时间和确保AD在合理的窗口时间内响应查询。安全从业人员则监视域管理员组,并保持软件更新。攻击者瞩目企业安全态势以找出脆弱点。这三类人基本都只见树木不见森林,没有完整的大局观。
全部已验证用户都对活动目录里近乎全部的对象和属性有读取权限。标准用户账户可能会因为不恰当地被赋予了对域连接的组策略对象和组织单元的修改权限,而破坏整个活动目录域。通过自定义的组织单元(OU)权限,用户和组甚至可以不用权限升级就能被修改,或者可以遍历SID历史,查询AD用户账户对象属性,获取权限提升。
如果活动目录没受到很好的保护,那AD就更有可能被侵入。
企业规避常见错误的方法很多,总结起来其实也就是保护好管理员凭证,隔离关键资源。保持软件更新,尤其是解决权限提升漏洞的补丁,以及进行网络分段以让攻击者的横向移动更加困难。
安全从业人员应该弄清谁有AD和托管虚拟域控制器的虚拟环境的管理员权限,以及谁能登录域控。他们应扫描活动目录域、AdminSDHolder对象和组策略对象(GPO),查找不合适的自定义权限;还应确保域管理员(AD管理员)从不以他们的敏感凭证登录诸如工作站等不可信系统。服务账户权限也应受到限制。
只要搞定AD安全,很多常见攻击就能被缓解或是减轻效果。
虚拟化以限制攻击
微软引入了基于虚拟化的安全(VBS),也就是融入到 Window 10 管理程序中的一组安全特性。VBS的攻击界面与其他虚拟化实现的有所不同。
尽管范围有限,VBS却十分有用――如果没有它,某些特定攻击就能长驱直入了。
Hyper-V对根分区有控制权,能实现额外的限制并提供安全服务。开启VBS的时候,Hyper-V会创建一台特别的虚拟机,具备高信任级别,可以执行安全指令。与其他虚拟机不同,这台特别的虚拟机不受根分区侵扰。Windows 10 能对用户模式的二进制文件和脚本强制执行代码完整性,而VBS处理内核模式代码。VBS就是要让任何未签名代码都不能在内核环境执行,无论内核是否被破坏。基本上,运行在特别虚拟机的可信代码,将根分区扩展页表执行权限授予存放签名代码的页面。由于页面不能同时既可写又可执行,恶意软件也就不能进入内核模式了。
因为整个概念铰合在即使根分区被染指也能继续运行的能力上,从已侵入根分区的攻击者角度――比如说,攻击者绕过安全启动功能加载了带木马的管理程序,便会得到以下的评价:
“VBS的安全态势看起来不错,它改善了系统安全――毫无疑问,想找到合适的漏洞来绕过它,还需要额外的非凡努力。”
现有文献显示:安全启动(Secure Boot)还是需要的,定向输入输出虚拟化技术(VTd)和可信平台模块(TPM)则是开启VBS的可选项,但事实并非如此。管理员需要开启VTd和TPM来保护管理程序不受被攻破的根分区侵扰。简单地开启凭据保护(Credential Guard)对VBS来说是不足够的。必须加上额外的配置以确保凭据不会清晰地出现在根分区里。
微软已投入大量努力让VBS尽可能地安全,但非一般的攻击面依然令人担忧。
安全门槛更高了
闯入者――包括罪犯、研究人员和想试试自己能做什么的黑客,就是在跟微软跳探戈。一有闯入者找到规避Windows防御的途径,微软就马上堵上这个安全漏洞。通过实现创新性安全技术来让攻击更难,微软迫使闯入者不得不挖掘更深。多亏了这些新特性,Windows 10 是迄今为止最安全的Windows系统。
犯罪分子正辛勤挖掘,恶意软件祸根也没显露出任何慢下脚步的迹象,但值得指出的是,今天的大多数攻击,都是没打补丁的软件、社会工程或者错误配置惹的祸。没有软件应用会是完全零漏洞的,但当内置防御让漏洞利用更加困难,就是防御者的胜利。过去数年,微软在封杀对操作系统的攻击上做出了大量努力,而 Windows 10 就是这些改变的直接受益者。
考虑到微软增强了 Windows 10 周年更新版中的隔离技术,成功利用现代Windows系统里的漏洞似乎是更艰难了。
相关阅读