中间件安全—Apache常见漏洞

本文详细介绍了Apache服务器的几个关键漏洞,包括换行解析漏洞、多后缀解析漏洞、路径穿越漏洞(CVE-2021-41773和CVE-2021-42013)以及SSI远程命令执行漏洞。通过环境搭建、漏洞复现步骤,展示了如何利用这些漏洞,并提供了相应的修复建议。
摘要由CSDN通过智能技术生成
中间件安全—Apache常见漏洞
  • 1.Apache常见漏洞
  • * 1.1.Apache介绍
    
    • 1.2.Apache HTTPD 换行解析漏洞(CVE-2017-15715)
    •   * 1.2.1.漏洞介绍
      
      • 1.2.2.漏洞环境
      •     * 1.2.2.1.运行漏洞环境
        
        • 1.2.2.2.访问漏洞环境
      • 1.2.3.漏洞复现
      •     * 1.2.3.1.拦截
        
        • 1.2.3.2.添加换行
        • 1.2.3.3.访问文件
    • 1.3.Apache多后缀解析漏洞(apache_parsing_vulnerability)
    •   * 1.3.1.漏洞介绍
      
      • 1.3.2.漏洞环境
      •     * 1.3.2.1.运行漏洞环境
        
        • 1.3.2.2.访问漏洞环境
      • 1.3.3.漏洞复现
      •     * 1.3.3.1.拦截
        
        • 1.3.3.2.添加后缀
        • 1.3.3.3.访问文件
    • 1.4.Apache HTTP 路径穿越漏洞(CVE-2021-41773)
    •   * 1.4.1.漏洞介绍
      
      • 1.4.2.漏洞环境
      •     * 1.4.2.1.运行漏洞环境
        
        • 1.4.2.2.访问漏洞环境
      • 1.4.3.漏洞复现
      •     * 1.4.3.1.抓包
        
        • 1.4.3.2.读取任意文件
        • 1.4.3.3.执行任意命令
    • 1.5.Apache HTTP 路径穿越漏洞(CVE-2021-42013)
    •   * 1.5.1.漏洞介绍
      
      • 1.5.2.漏洞环境
      •     * 1.5.2.1.运行漏洞环境
        
        • 1.5.2.2.访问漏洞环境
      • 1.5.3.漏洞复现
      •     * 1.5.3.1.抓包
        
        • 1.5.3.2.读取任意文件
    • 1.6.Apache SSI 远程命令执行漏洞
    •   * 1.6.1.漏洞介绍
      
      • 1.6.2.漏洞环境
      •     * 1.6.2.1.运行漏洞环境
        
        • 1.6.2.2.访问漏洞环境
      • 1.6.3.漏洞复现
      •     * 1.6.3.1.编辑文件
        
        • 1.6.3.2.上传文件
        • 1.6.3.3.访问文件

1.Apache常见漏洞

1.1.Apache介绍

简单介绍一下apache是什么,Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将python等解释器编译到服务器中。

1.2.Apache HTTPD 换行解析漏洞(CVE-2017-15715)

1.2.1.漏洞介绍

Apache
HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。

1.2.2.漏洞环境

这里采用Vulhub一键搭建漏洞测试靶场,来进行漏洞复现。

1.2.2.1.运行漏洞环境
docker-compose build
docker-compose up -d

![在这里插入图片描述](https://img-
blog.csdnimg.cn/3b354888ab454b7a8c5f9dc0caae8f87.png#pic_center)

1.2.2.2.访问漏洞环境
http://your-ip:8080

![在这里插入图片描述](https://img-
blog.csdnimg.cn/0acc9e9c0400442997e28236c1a3f105.png#pic_center)

1.2.3.漏洞复现
1.2.3.1.拦截

正常上传php文件就会出现上传失败。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/c98f2e8e3b1f43c5a332f55c4a93f51c.png#pic_center)

1.2.3.2.添加换行

在1.php后面插入一个\x0A(注意,不能是\x0D\x0A,只能是一个\x0A),不再拦截,这里只需要选中0d,右击选择insert
byte…后,输入0a即可插入至里面,然后发送。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/fbbf551a2c39414992122683d23493ca.png#pic_center)

1.2.3.3.访问文件

这里访问地址即可。

链接:http:ip地址:端口/文件名.php%0a

![在这里插入图片描述](https://img-
blog.csdnimg.cn/845e1d100db444d9b4238abf6308c0d1.png#pic_center)

1.3.Apache多后缀解析漏洞(apache_parsing_vulnerability)

1.3.1.漏洞介绍

apache
httpd支持一个文件多个后缀,windows对于多后缀的识别是看最后一个“.”之后的后缀名。apache对于多后缀文件的识别是从后往前识别,最后一个后缀不能被识别时,会往前识别。

1.3.2.漏洞环境
1.3.2.1.运行漏洞环境
docker-compose up -d

![在这里插入图片描述](https://img-
blog.csdnimg.cn/975c7d1469ee4869a434cdb3bb4c86a4.png#pic_center)

1.3.2.2.访问漏洞环境
http://your-ip

![在这里插入图片描述](https://img-
blog.csdnimg.cn/ad184a8315ca4b0fa53094fc0ccb7186.png#pic_center)

1.3.3.漏洞复现
1.3.3.1.拦截

由于设置了白名单,正常在上传php后缀文件后,会被拦截,无法正常进行上传。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/554b3f2da3fe4a21a2edcfab19650fb8.png#pic_center)

1.3.3.2.添加后缀

由于特性原因,我们可以在后面添加不认识的后缀,或者其它后缀均可。这里我添加.jpg,形成1.php.jpg文件。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/4e7c4877ae634098bd502619e79332f7.png#pic_center)

1.3.3.3.访问文件

通过返回的信息得到,我们是成功上传了我们的文件,并返回一个路径,我们在浏览器中访问一下文件,验证一下是否正常执行为php文件。

http://IP地址/uploadfiles/1.php.jpg

![在这里插入图片描述](https://img-
blog.csdnimg.cn/0b4da3522803489cb8c0828734c2db83.png#pic_center)

1.4.Apache HTTP 路径穿越漏洞(CVE-2021-41773)

1.4.1.漏洞介绍

在其2.4.49版本中,引入了一个路径穿越漏洞,满足下面两个条件的Apache服务器将会受到影响:
版本等于2.4.49
穿越的目录允许被访问(默认情况下是不允许的)
攻击者利用这个漏洞,可以读取位于Apache服务器Web目录以外的其他文件,或者读取Web目录中的脚本文件源码,或者在开启了cgi或cgid的服务器上执行任意命令。

1.4.2.漏洞环境
1.4.2.1.运行漏洞环境
docker-compose build
docker-compose up -d

![在这里插入图片描述](https://img-
blog.csdnimg.cn/c61a50dae25847aab581cd70104b7993.png#pic_center)

1.4.2.2.访问漏洞环境
在这里插入代码片

http://your-ip:8080
![在这里插入图片描述](https://img-
blog.csdnimg.cn/139d64ab3b734c35b006e26406d6b6c4.png#pic_center)

1.4.3.漏洞复现
1.4.3.1.抓包

首先这里先抓原始的包。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/ee4af34b26d2461282689c23b20e8d53.png#pic_center)

1.4.3.2.读取任意文件

在GET处插入POC,用来读取任意文件,但是需要注意/icons必须是一个存在且可访问的目录。

POC:/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd

![在这里插入图片描述](https://img-
blog.csdnimg.cn/eb576457e65347ea9b0bc1137cca7e06.png#pic_center)

1.4.3.3.执行任意命令

在服务端开启了cgi或cgid这两个mod的情况下,这个路径穿越漏洞将可以执行任意命令。

POC:/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh   最下面添加echo;id

![在这里插入图片描述](https://img-
blog.csdnimg.cn/4a37f6a4e57748f8b69207a23e22208c.png#pic_center)

1.5.Apache HTTP 路径穿越漏洞(CVE-2021-42013)

1.5.1.漏洞介绍

Apache官方在2.4.50版本中对2.4.49版本中出现的目录穿越漏洞CVE-2021-41773进行了修复,但这个修复是不完整的,CVE-2021-42013是对补丁的绕过。
攻击者利用这个漏洞,可以读取位于Apache服务器Web目录以外的其他文件,或者读取Web目录中的脚本文件源码,或者在开启了cgi或cgid的服务器上执行任意命令。
这个漏洞可以影响Apache HTTP Server 2.4.49以及2.4.50两个版本。

1.5.2.漏洞环境
1.5.2.1.运行漏洞环境
docker-compose build
docker-compose up -d

![在这里插入图片描述](https://img-
blog.csdnimg.cn/0e1feea946454caf85a416fee65ee2b6.png#pic_center)

1.5.2.2.访问漏洞环境
http://your-ip:8080

![在这里插入图片描述](https://img-
blog.csdnimg.cn/724230186312472bae4924536d09706f.png#pic_center)

1.5.3.漏洞复现

这里总体来说和CVE-2021-41773步骤都是一样的,只是将.%2e替换为.%%32%65,若使用原先的payload无法使用,那么就说明2.4.50进行了修复。

1.5.3.1.抓包

首先这里先抓原始的包。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/02171b6cd8c24caa8fe89f73918c3410.png#pic_center)

1.5.3.2.读取任意文件

在GET处插入POC,用来读取任意文件,但是需要注意/icons必须是一个存在且可访问的目录。

POC:/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd

![在这里插入图片描述](https://img-
blog.csdnimg.cn/a4644e7f77714efd9e8f1a854c35f0f6.png#pic_center)

1.6.Apache SSI 远程命令执行漏洞

1.6.1.漏洞介绍

在测试任意文件上传漏洞的时候,目标服务端可能不允许上传php后缀的文件。如果目标服务器开启了SSI与CGI支持,我们可以上传一个shtml文件,并利用<!--#exec cmd="id" -->语法执行任意命令。

1.6.2.漏洞环境
1.6.2.1.运行漏洞环境
docker-compose up -d

![在这里插入图片描述](https://img-
blog.csdnimg.cn/6a122fb660074e4ea6c41a6337cd812c.png#pic_center)

1.6.2.2.访问漏洞环境
http://your-ip:8080

![在这里插入图片描述](https://img-
blog.csdnimg.cn/22251d2caa374018bf9840502db6e183.png#pic_center)

1.6.3.漏洞复现
1.6.3.1.编辑文件

正常上传PHP文件是不允许的,我们可以上传一个shell.shtml文件,然后在文件中写入命令。

命令:<!--#exec cmd="ls" -->
1.6.3.2.上传文件

这里我们将文件进行上传,可以看到是成功上传了。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/809cf7b6b29a41ecbcb6f57ee3ce4afa.png#pic_center)

1.6.3.3.访问文件

可以看到成功显示目录下存在的文件。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/c5ead972166448ffb0c69d924746ea56.png#pic_center)

最后

从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。

因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,需要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。

干货主要有:

①1000+CTF历届题库(主流和经典的应该都有了)

②CTF技术文档(最全中文版)

③项目源码(四五十个有趣且经典的练手项目及源码)

④ CTF大赛、web安全、渗透测试方面的视频(适合小白学习)

⑤ 网络安全学习路线图(告别不入流的学习)

⑥ CTF/渗透测试工具镜像文件大全

⑦ 2023密码学/隐身术/PWN技术手册大全

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

扫码领取

  • 19
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值