背景
CGI(Common Gateway Interface)公共网关接口,是外部扩展应用程序与 Web 服务器交互的一个标准接口。httpoxy是cgi中的一个环境变量,作为一段程序运行在服务器上,为客户端提供接口。在CGI(RFC 3875)的模式的时候, 会把http头部, 加上HTTP_ 前缀, 注册为环境变量。 如果在Header中发送一个Proxy:xxxxxx, 那么PHP就会把他注册为HTTP_PROXY环境变量,篡改着就可以在该代理服务器上监听这些请求。
工作原理:
1.客户浏览器访问url,向web服务器发出请求;
2.服务器接收到后解析request包,并将数据包中的各个参数写进进程的环境变量,服务器调用CGI程序处理请求;
3.CGI程序生成动态内容,交给服务器,服务区返回response包给浏览器。

测试复现
1.正常请求

服务器返回请求的IP
2.头部加入Proxy

Proxy填写的ip会将http请求代理,此时我的返回包没有origin,和复现要求有所区别,原因不详,猜测可能是实验环境的问题,望大佬告知!
3.使用nc监听可捕获请求数据,有可能捕获到敏感数据
