asp相关
A. 数据库泄露:
网站使用Access数据库 —-> ASP网站使用固定路径访问数据库 —> 泄露后通过路径访问下载数据库
公开源码 —> 泄露数据库的默认路径 —> 访问网站数据库的默认路径进而下载数据库
IIS相关
A. HTTP.SYS 蓝屏漏洞(CVE-2015-1635):
漏洞成因
远程执行代码漏洞存在于 HTTP 协议堆栈 (HTTP.sys) 中,当 HTTP.sys 未正确分析经特殊设计的 HTTP 请求时会导致此漏洞
漏洞危害
攻击者只需要发送恶意的http请求数据包,IIS服务器在处理数据包的过程中可能越界读取内存数据,而此时的操作位于操作系统内核中,从而使服务器系统蓝屏崩溃。
影响版本
任何安装了微软IIS 6.0以上的的Windows 7、Windows Server 2008 R2、 Windows Server 2012 R2 、Windows Server 2012、Windows 8、2、Windows 8.1 系统
漏洞测试
curl -v 远程服务器ip -H "Host:远程服务器i p" -H "Range:bytes=0-184467440737095516 15"
B. IIS短文件
https://www.freebuf.com/articles/web/172561.html
受影响的版本:
IIS 1.0,Windows NT 3.51
IIS 3.0,Windows NT 4.0 Service Pack 2
IIS 4.0,Windows NT 4.0选项包
IIS 5.0,Windows 2000
IIS 5.1,Windows XP Professional和Windows XP Media Center Edition
IIS 6.0,Windows Server 2003和Windows XP Professional x64 Edition
IIS 7.0,Windows Server 2008和Windows Vista
IIS 7.5,Windows 7(远程启用<customErrors>或没有web.config)
IIS 7.5,Windows 2008(经典管道模式)
以上受影响范围主要是针对HTTP GET方法,且需要同时安装ASP.NET应用程序注意:IIS使用.Net Framework 4时不受影响
IIS 8.0,Windows 8, Windows Server 2012
IIS 8.5,Windows 8.1,Windows Server 2012 R2
IIS 10.0,Windows 10, Windows Server 2016
IIS全部版本都存在短文件名泄漏的问题
漏洞原因
Windows 支持以 8.3 格式生成与 MS-DOS 兼容的(短)文件名,以允许基于 MS-DOS 或 16位 Windows的程序访问这些文件。在cmd下进入IIS网站根目录C:\inetpub\wwwroot输入”dir /x”即可看到短文件名的效果
漏洞危害
由于短文件名的长度固定(xxxxxx~xxxx),因此攻击者可直接对短文件名进行暴力破解 ,从而访问对应的文件。
举个例子,有一个数据库备份文件 backup_20180101.sql ,它对应的短文件名是 backup~1.sql 。因此攻击者只要暴力破解出backup~1.sql即可下载该文件,而无需破解完整的文件名。
漏洞利用
攻击者使用通配符“*”和“?”发送一个请求到IIS,当IIS接收到一个文件路径中包含“~”请求时,它的反应是不同的,即返回的HTTP状态码和错误信息不同。基于这个特点,可以根据HTTP的响应区分一个可用或者不可用的文件。如下图所示不同IIS版本返回信息的不同:
访问构造的某个存在的短文件名,会返回404; 访问构造的某个不存在的短文件名,会返回400;
扫描工具
https://github.com/lijiejie/IIS_shortname_Scanner
https://github.com/irsdl/IIS-ShortName- Scanner
IIS 6.0解析漏洞
基于文件名
IIS6.0默认不解析;号后面的内容,例如1.asp;.jpg会当成1.asp解析,相当于分号截断
注意!! 这是IIS这个软件自身的行为,和操作系统无关,操作系统仍然将1.asp;.jpg 当做图片打开
IIS文件解析漏洞:(IIS10.0 8.5都可能存在,属于PHP版本解析漏洞)*.asp;.xxx,像这样的文件 IIS会把它当作xxx.asp文件执行而不会看分号后边的内容。
基于文件夹
IIS6.0会将/*.asp/文件夹下的文件当成asp解析。
IIS目录解析漏洞:以.asp命名的文件夹中的文件都会被当作asp文件执行。
IIS 7 解析漏洞
IIS7.*在FastCGI运行php的情况下,php默认配置cgi.fix_pathinfo=1,导致在任意文件后面添加 /.php,服务器就会解析成php。
在一个文件路径(/xx.jpg)后面加上/xx.php会将/xx.jpg/xx.php解析为php文件应用场景:配合文件上传获取Webshell
IIS 6.x 写权限漏洞
原因
配置不当导致的PUT任意上传。
漏洞条件
- 开启webdev,使得用户可以使用put上传文件
- 开启写权限,授予用户写入文件夹的权限
使用put请求上传文件