
为了让IT人员能透过网路远端于工作站、服务器大量部署Windows作业系统,微软在服务器作业系统提供了Windows部署服务(Windows Deployment Services,WDS)的功能,但有研究人员发现,这项服务存在阻断服务(DoS)漏洞,可能导致企业网路遭到瘫痪,而且,过程中完全无须通过身分验证,也不需使用者互动。
此消息引发Daily CyberSecurity等资安媒体报导,通报此事的中国华中科技大学(HUST)副教授彭峙酿表示,他在今年2月发现WDS的资安弱点,攻击者有机会远端大量消耗记忆体,而能在未经身分验证的情况下,让WDS停摆。由于WDS在企业环境广泛运用,这样的弱点很有可能造成严重的灾难。彭峙酿向微软通报此事,4月下旬得到回覆,微软认定这项弱点为中度风险,并未达到安全服务水平而不予处理。对此,彭峙酿指出,由于目前没有其他的缓解措施,因此企业最好暂停使用WDS。
对于一般使用者而言,可能会透过DVD光碟或USB随身碟,安装或重灌Windows,而对于企业IT人员来说,他们可能要因应数百、数千台电脑,势必要透过自动化部署机制,大量派送作业系统安装文件并执行相关设定。而这种部署机制的运作,大致上是用户电脑透过预先启动执行环境(Preboot Execution Environment,PXE)开机,然后向提供WDS服务的服务器发出请求,透过网路取得作业系统的映像档。WDS服务器收到请求后,便透过TFTP及多播(??multicast)通讯协定,向用户电脑提供相关的映像档。
而彭峙酿发现的弱点,原因就在WDS使用了69埠,并透过UDP通讯协定建立TFTP服务,然后利用PXE向用户电脑传送Windows安装所需的映像档。但在用户电脑与WDS服务器建立连线的过程里,服务器会分配名为CTftpSession的物件,却没有限制连线(Session)的数量,而让攻击者有机可乘,只要伪造用户电脑IP位址及连接埠,并重複建立连线,就可能让服务器的系统资源耗尽。
为了验证这项弱点,彭峙酿设置具有8 GB记忆体的电脑,并不断发送恶意UDP封包来触发漏洞,当记忆体使用量达到15 GB后,就出现服务中断的现象。上述过程研究人员耗时7分钟,但若是透过多执行绪进行,将会加快攻击的速度。
另一方面,由于UDP服务器无法验证封包的来源,攻击者还能使用随机的IP位址及连接埠,强迫服务器在记忆体内产生更多连线阶段物件。