[vulhub]:CVE-2012-1823 php-cgi远程代码执行
Author:badbird
Time:2020-2-6
该漏洞只出现在以cgi模式运行的php中。影响范围 < 5.3.12 < 5.4.2
0x01 预备知识
什么是CGI?
Common Gateway Interface 即“通用网关接口”。用于处理浏览器(客户端)向服务器发送的数据,在服务器上部署。CGI实际上是一种数据处理的协议,相当于Web服务器“背后的女人”。
CGI做了什么工作?
大佬理解
浏览器用户提交的表单数据发送到服务器后,CGI从环境变量和标准输入获取数据进行处理(比如写入数据库),然后再向标准输出发送数据,由于Web服务已经做了重定向,将标准输出重定向给Web服务器与浏览器连接的socket,所以在浏览器就可以看到用户刚刚提交的数据的处理结果了。
浏览器用户提交数据(POST)–>服务器上的CGI程序从标准输入获取数据–>CGI程序处理数据–>返回响应到Web服务器–>Web服务器向客户端发送html响应
浏览器用户提交数据(GET)–>服务器上的CGI程序从环境变量获取数据–>CGI程序处理数据–>返回响应到Web服务器–>Web服务器向客户端发送html响应
基本框架已