受影响系统:
Microsoft Windows NT 4.0SP6a
Microsoft Windows NT 4.0SP6
Microsoft Windows NT 4.0SP5
Microsoft Windows NT 4.0SP4
Microsoft Windows NT 4.0SP3
Microsoft Windows NT 4.0SP2
Microsoft Windows NT 4.0SP1
Microsoft Windows NT 4.0
Microsoft Windows 2000SP3
Microsoft Windows 2000SP2
Microsoft Windows 2000SP1
Microsoft Windows 2000
Microsoft Windows .NET Standard Server Beta 3
描述:
--------------------------------------------------------------------------------
BUGTRAQ ID: 5712
RDP(远程桌面协议,Remote Desktop Protocol)是终端服务器和客户端之间的通信协议,它使得远程用户可以使用键盘和鼠标通过网络在应用程序之间进行通信。
Microsoft Windows远程桌面协议5.0在新增的简化方式指定通用命令和输入事件实现上存在问题,远程攻击者可以利用这个漏洞进行按键注入攻击。
在RPC 4.0中,当通用命令和输入事件在RDP会话中被发送的时候,会对来自事件的每个包增加相应校验码,而且这个校验码还包含按照T.128标准唯一的时间戳信息,所以意味着每个包拥有不同的校验码。
在Microsoft Windows RDP 5.0版本中,增加了新的方法可通过简化的方法指定通用命令和输入事件,不过当计算校验码的时候没有使用唯一的时间戳信息。这些包由0x84开头,通信加密使用同样方法,但是只有键代码和键时间类型被发送,而且没有时间戳,因此发送的包只有12字节长。
由于对每个键类型使用同样的校验码,攻击者就可以通过嗅探网络并推断猜测出下一个要发生的事件,并导致攻击者在发生的事件中插入恶意构建的包到会话中,并有可能获得用户的密码信息。
<*来源:Ben Cohen (bc@skygate.co.uk)
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=103235960119404&w=2
*>
建议:
--------------------------------------------------------------------------------
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 由于Microsoft Terminal Services Client4.0版本不存在此漏洞,如果可能的情况下使用旧的版本协议RDP会话。
厂商补丁:
Microsoft
---------
下载采用Microsoft Windows XP service pack 1,根据报告,SP1把RDP包转换为4.0版本使用的形式:
Microsoft Upgrade Windows XP Service Pack 1
http://www.microsoft.com/WindowsXP/pro/downloads/servicepacks/sp1/default.asp