Apache(总联想到武直那个)是最常见,使用人数最多的一款web服务器软件。跨平台,多扩展,开源,用过的人都说好

Apache的漏洞主要集中在解析漏洞这一块

1.未知扩展名解析漏洞

Apache的一个有名的解析特性:一个文件可以有多个以点分隔的后缀,当最右侧后缀无法识别的时候,继续向左识别,知道识别到认识的合法后缀才进行解析

很好理解不截图了   我上传了一个名字叫lcx.php.qqq 的文件,当此特性存在的时候,一看.qqq不认识,继续解析,.php我认识,解析成php文件了。访问也是同理,比如访问phpinfo.php.qqq可成功显示phpinfo

那么哪些后缀Apache不认识?

不在mime.types当中的都不认识 (Multipurpose Internet Mail Extensions)

到安装Apache的目录下找这个文件

里面有一堆

但是这里有一个问题

当PHP与Apache的结合方式为fastcgi时,测试结果如图,不存在此解析漏洞

而PHP与Apache的结合方式为module时是存在此解析漏洞的

除了结合方式,此漏洞存在与否还与默认Apache解析方式有关,没有认识的后缀就会按照默认方式解析

这点要注意

所以可利用的点emmm......

防御的话,修改Apache配置文件 httpd.conf 禁止PHP文件的访问权限,或者改上传的文件名

2.AddHandler解析漏洞

在httpd.conf中

AddType application/x-httpd-php .jpg     (.jpg可以换成.txt什么的   将扩展名为.jpg的文件按PHP执行)

或者

AddHandler php5-script .php    (只要文件名中包含.php就会按照PHP执行)

防御:修改Apache配置文件 httpd.conf 禁止PHP文件的访问权限

要么

伪静态试试,把有什么php的文件重写吧

如图是开启了rewrite功能

新建.htaccess文件,语法网上找吧

3.CVE2017-15715

2.4.0~2.4.29版本的Apache受灾

熟悉正则的老哥都知道,$匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n'换行或 '\r'回车(要匹配 $ 字符本身,请使用 \$)

于是,在解析PHP时,例如1.php\x0a将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略

例: 上传一个文件1.php ,用burp抓包, 找到上传的文件名后面加个什么东西,比如加个.变成 1.php. ,再send to repeater ,把新加的. 位置的hex十六进制编码处改成0a,再传上去

之后访问 /1.php%0A   ( %0A为换行的URL编码)即可按照PHP执行此文件

只要用正则来匹配后缀进行php解析的Apache就可能存在这个问题

也算是新时代的Apache解析漏洞,对应老版的本文第1点

防御 :避免使用这些版本的Apache,或者前面那些思路还可以利用

随便转载,请标明作者出处

常见web中间件漏洞(二)Apache漏洞的更多相关文章

  1. 常见web中间件漏洞(四)Tomcat漏洞

    这部分好久没写了,继续更新web中间件漏洞思路整理(不复现) ,争取...整理完 前几篇指路链接: nginx: https://www.cnblogs.com/lcxblogs/p/13596239 ...

  2. 常见web中间件漏洞(三)Nginx漏洞

    nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,有  开源,内存占用少,并发能力强,自由模块化,支持epoll模型,可限制连接数,支持热部署,简单 ...

  3. 常见web中间件漏洞(一)IIS漏洞

    web中间件作为web安全的重要一块,经常会有人问balabala,虽然有很多已经人尽皆知并且基本不再构成威胁了,但是还是有必要说一下,了解历史,了解我们从哪里来 鉴于内容实在是太多,本来打算一起写完 ...

  4. 常见web中间件漏洞(五)weblogic漏洞

    继续整理有关中间件漏洞思路(仅做简单思路整理,不是复现,复现请参考大佬们的长篇好文,会在文章中列举部分操作) WebLogic是Oracle公司出品的一个application server,确切的说 ...

  5. Web中间件 - 常见漏洞总结

    *文章来源:https://blog.egsec.cn/archives/472 *本文将主要说明:Web中间件常见漏洞的产生原因以及修复方案 什么是Web中间件? 百度百科是这样解释的:中间件是介于 ...

  6. Web中间件常见漏洞总结

    一.IIS中间组件: 1.PUT漏洞 2.短文件名猜解 3.远程代码执行 4.解析漏洞 二.Apache中间组件: 1.解析漏洞 2.目录遍历 三.Nginx中间组件: 1.文件解析 2.目录遍历 3 ...

  7. 常见WEB开发安全漏洞 原因分析及解决

    目 录 1 会话标识未更新 3 1.1 原因 3 1.2 解决 3 2 SQL注入 3 2.1 原因 3 2.2 解决 5 3 XSS跨站脚本编制 5 3.1 原因 5 3.2 解决 5 4 XSRF ...

  8. 常见 WEB 安全漏洞(转)

    SQL注入 成因:程序未对用户的输入的内容进行过滤,从而直接代入数据库查询,所以导致了sql 注入 漏洞 . 思路:在URL处可以通过 单引号 和 and 1=1 and 1=2 等语句进行手工测试s ...

  9. 十大常见web漏洞及防范

    十大常见web漏洞 一.SQL注入漏洞 SQL注入攻击(SQL Injection),简称注入攻击.SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞.在设计程序,忽略了 ...

随机推荐

  1. hadoop安装前的准备

    1.操作系统安装 2.hostname设定 3.hosts文件设定 4.ssh免密码登录 5.NTP时间同步设定 6.iptables永久关闭 7.selinux永久关闭

  2. spring boot j集成seagger 加入拦截器后 swagger 不能访问

    一开始我是这样排除拦截的,但是发现没用 后来我发现swagger的真实访问路径是这样的 转自: https://blog.csdn.net/ab1991823/article/details/7906 ...

  3. mac sudo: /etc/sudoers is world writable

    今天误操作修改了/etc/sudoers的权限,将它的权限改成了777,结果就导致执行所有sudo的命令都报错. sudo: /etc/sudoers is world writable sudo: ...

  4. php弱类型比较

    前言:今天XCTF题目中出现了弱类型比较,特别过来记录一下, 0x01: == 是弱类型比较,两个不同类型比较时,会自动转换成相同类型后再比较值 ===是强比较,需要比较值和类型 0x02: 看下图案 ...

  5. C#下通过wbemtest和WMI Code Cretor更加高效的访问WMI

    能找到这篇博客的,相信都是有操作WMI需求的了.但是不知道如何快速验证.并集成到C#来操作WMI.我们分为3步: ##第一步:官网(或跟硬件开发WMI的人沟通你需要的接口和参数定义,如果是和硬件开发的 ...

  6. MYSQL注入技巧备忘录

    MYSQL一些技巧 仅仅是作为自己备忘录,如果错误,敬请斧正. 0)基础饶过 1.大小写绕过 2.双写绕过 3.添加注释 /*!*/ or /*!小于mysql版本*/ 5.宽字节.Latin1默认编 ...

  7. Kubernetes全栈架构师(二进制高可用安装k8s集群部署篇)--学习笔记

    目录 二进制高可用基本配置 二进制系统和内核升级 二进制基本组件安装 二进制生成证书详解 二进制高可用及etcd配置 二进制K8s组件配置 二进制使用Bootstrapping自动颁发证书 二进制No ...

  8. 微信小程序云开发-云存储-获取带图片的商品列表

    一.将商品图片上传至云存储 如下图,已准备5张商品图片,并且已经将商品图片上传至云存储  二.数据库表添加图片字段 在数据库表goods添加字段image,该字段用来存储图片的url信息 image在 ...

  9. SpringBoot之了解自动配置原理

    承接上文: import注解的使用: 作用:引用时,容器自动创建出这填写的类型的组件,默认组件的名字就是全类名. 往容器中添加两个组件 @Import({User.class, DBHelper.cl ...

  10. 极致简洁的微前端框架-京东MicroApp开源了

    前言 MicroApp是一款基于类WebComponent进行渲染的微前端框架,不同于目前流行的开源框架,它从组件化的思维实现微前端,旨在降低上手难度.提升工作效率.它是目前市面上接入微前端成本最低的 ...