目录

解析漏洞:  

原理:

变化因素:

熟知的中间件(解析漏洞) 

 0x01    IIS5.x-6.x解析漏洞:

(1)目录解析漏洞(IIS6.0)

        原理:

        利用过程:

(2)文件解析漏洞

        原理:

        利用过程:

(3)可被解析的文件类型

 0x02   IIS 7.0/IIS 7.5/ Nginx <8.03畸形解析漏洞 

        原理:

        漏洞利用:

 0x03   apache解析漏洞 

(1)文件解析规则漏洞

        原理:

        利用过程:

(2)文件配置漏洞:

        原理:

        利用过程:

 0x04    Nginx解析漏洞

空字节代码执行漏洞(Nginx <8.03 )

        原理:

        利用过程:

Nginx漏洞利用基本是:

CMS漏洞: 

cms: 

        原理:

        利用过程:

其他漏洞: 

编辑器漏洞: 

常见的编辑器:

Ewebeditor(为例)

原理:

核心:

利用过程:

CVE等漏洞: 

简介:

CVE兼容

原理:

 

解析漏洞:

原理:

(中间件漏洞)

对于用户精心构造的文件,web容器将这些文件(其他格式的文件)解析为可执行脚本进行执行

(配合文件上传功能使用,以获取服务器的权限)

变化因素:

搭建平台,命名原则

不同的搭建平台、命名原则会有不同的解析漏洞

熟知的中间件(解析漏洞)

IIS5.x-6.x、IIS7.5、apache、Nginx解析漏洞

 

 

0x01        IIS5.x-6.x解析漏洞:

(1)目录解析漏洞(IIS6.0)

原理:

在网站目录*.asp、*.asa文件夹下,无论任何扩展名文件格式都会被解析为asp并执行

利用过程:

www.xxx.com/xxx.asp/xxx.txt

(2)文件解析漏洞

原理:

分号后面的不被解析

构建在可解析执行文件后面加上;.jpg等,也会被按照前面解析格式进行解析

利用过程:

111.asp;.jpg

(会以.asp文件格式执行)

(3)可被解析的文件类型

.asp

.asa

.cer

.cdx

 

0x02        IIS 7.0/IIS 7.5/ Nginx <8.03畸形解析漏洞

原理:

正常情况cgi.fix_pathinfo=1,作用是为了当文件不存在时,阻止Nginx将请求发送到后端的PHP-FPM模块(这个不是中间件漏洞,而是配置漏洞,php.ini在/usr/local/php/lib下)

漏洞利用:

在Fast-CGI运行模式下,在浏览器URL地址栏的文件路径后面加上/xxx.php会将解析为php文件执行

……/xxx.jpg

……/xxx.jpg/xxx.php

(是因为php.ini配置文件中,开启了cgi.fix_pathinfo,但是这并不是Nginx或IIS7.5本身漏洞)

 

0x03        apache解析漏洞

(1)文件解析规则漏洞

原理:

Apache 解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断。

利用过程:

……/1.php.aaa.abc

(会被解析为php文件执行)

(2)文件配置漏洞:

原理:

顾名思义,即在Apache的conf里配置文件疏忽导致的漏洞

利用过程:

Apache的conf里添加一行

①AddHandler php5-script .php

那么只要文件名里包含.php就会以PHP文件解析执行。

(test.php.jpg 也会以 php 来执行)

②AddType application/x-httpd-php .jpg

即使扩展名是 jpg,也以php 方式解析执行

 

0x04        Nginx解析漏洞

(Nginx对url是从左往右读取,并先读取文件名一直读到最后一个文件后缀才是该文件的后缀,而Apache,对url是从右往左读取,并先读取文件后缀读取第一个,默认前面都是文件名)

 

空字节代码执行漏洞(Nginx <8.03 )

原理:

使用PHP-FastCGI执行PHP时,如果url里面存在%00空字节时会与FastCGI的处理不一致,导致可在非PHP文件中嵌入PHP代码,在地址栏访问url+%00.PHP来执行其中的PHP代码

利用过程:

制作一张图片马

……/xxx.jpg%00.php

(将图片马当成php文件执行)

Nginx漏洞利用基本是:

……/1.jpg/1.php

……/1.jpg/1.php

……/1.jpg/%20\0.php

 

CMS漏洞:

cms:

内容管理系统(content management system,CMS),是一种位于WEB前端(Web 服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统

原理:

在判断CMS类型后,百度相关版本的漏洞,看是否存在漏洞,并利用

利用过程:

判断CMS类型------->查询该CMS出现过漏洞-------->尝试是否存在这样的漏洞-------->利用漏洞获取用户名、密码后进入管理员界面查找注入(或上传一句话木马后使用蚁剑或者菜刀进行连接,再尽可能连接数据库)

 

其他漏洞:

编辑器漏洞:

常见的编辑器:

Ewebeditor,fckeditor,ckeditor,kindeditor……xxxditor

Ewebeditor(为例)

原理:

在网上百度所使用的编辑器是否存在相关漏洞,并进行测试

核心:

找到编译器的地址(Ewebeditor为例) 默认后台:ewebeditor/admin_login.asp 默认数据库:ewebeditor/db/ewebeditor.mdb 默认账号密码:admin admin/admin888

利用过程:

先扫描目录管理后台---->逐一尝试登录-------->找后台,弱口令-------->寻找网站是否有编译器,以及编译器类型------->网上搜索相关漏洞------>对编译器目录扫描------再次寻找到后台登陆界面,用弱口令尝试登陆------>寻文件上传界面------>上传小马并连接,上传大马getshell

 

CVE等漏洞:

简介:

(类似于字典)

CVE的英文全称是Common Vulnerabilities & Exposures(公共漏洞和暴露)

如果在一个漏洞报告中指明的一个漏洞,如果有CVE名称,你就可以快速地在任何其它CVE兼容的数据库中找到相应修补的信息,解决安全问题

CVE兼容

也就是一个工具、网站、数据库或者其它安全产品使用CVE名称,并与其它使用CVE命名方式的产品交叉引用。

CVE兼容后可以实现:

CVE查询  通过CVE名称在产品中搜索相关的信息

CVE输出   在产品提供的信息中包括相关的CVE名称

CVE映射  CVE的条目和产品中的信息完全对应

原理:

有些CVE漏洞没有被厂家所采用或修复,则可能存在相关的漏洞可利用

 (实操将会在后面更新)

系列推荐:

1.

【原理】【利用过程】后端检测绕过:文件头检测、二次渲染、条件竞争、突破getmagesize()之隐写术、突破exif_imagetype()

2. 

【后端黑白名单绕过】【WEB 漏洞利用/原理】不懂原理都是没灵魂的方法躯壳?文件上传漏洞利用过程

3. 

文件上传漏洞:原理、原因、常见触发点分析,vulhub、upload、公开cms上传漏洞多种方法测试

好文推荐

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。