上一页 1 2 3 下一页 当 LOCATION 段的协议、端口等 buffer 值增加时,可以开始观察到访问冲突现象。寄存器(EAX和ECX)将包含被改写内存的地址,在 "mov" 指令 svchost.exe 程序将访问一个错误的内存地址。引起访问冲突的原因是目标地址是一个被改写的指针,但在0X41414141什么也没有。
在测试中,我们还发现了多个溢出点,利用stack overflow和heap overflow都可以编写有效的攻击程序。在heap overflow 的情况下,我们发现了指针被覆盖。
SSDP服务器程序同样也监听广播和多播接口,所以攻击者可以同时攻击多个机器而不需要知道单个主机的IP地址。UPnP服务运行在SYSTEM的上下文,攻击者如果利用漏洞成功,可以完全控制主机。
解决方案:
下载并安装补丁:
Microsoft Windows 98/98SE:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=34991
Microsoft Windows ME:
http://download.microsoft.com/download/winme/Update/22940/WinMe/EN-US/314757USAM.EXE
Microsoft Windows XP:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=34951
2.导致DoS和DDoS攻击
UPNP 由多个协议组成,其中之一是 SSDP(Simple Service Discovery Protocol),当一个启动了 UPNP 的设备连上网络后,无论它是电脑、网络设备还是家电,它都会发送一个广播消息宣告其存在。
通过构造含有 SSDP 广播的恶意 UDP 包,攻击者能强迫 XP/ME 客户连接指定的 IP 地址并传送一个指定的 HTTP/HTTPS 请求。
An example session:
NOTIFY * HTTP/1.1
HOST: 239.255.255.250:1900
CACHE-CONTROL: max-age=1
LOCATION: URL
NT: urn: schemas-upnp-org:device:InternetGatewayDevice:1
NTS: ssdp:alive
SERVER: EEYE/2001 UPnP/1.0 PASSITON/1.1
USN: uuid:EEYE
以上的数据包象UDP包那样发送到XP/ME主机的1900端口,当 XP主机收到这样的请求时,它将会解析跟在 LOCATION 头后的 URL,然后它会被传递给 Windows Internet Services API 里的函数。这样,将会创建一个新的会话。
上一页 1 2 3 下一页 |