background image

PHP 漏洞全解()-HTTP 响应拆分

本文主要介绍针对 PHP 网站 HTTP 响应拆分,站在攻击者的角度,为你演示 HTTP 响应拆分。

AD  

HTTP 请求的格式

1

)请求信息:例如 Get /index.php HTTP/1.1”,请求 index.php 文件

2

)表头:例如 Host: localhost”,表示服务器地址

3)空白行

4)信息正文

” “

请求信息 和 表头 都必须使用换行字符(CRLF)来结尾,空白行只能包含换行符,不可以有其他空

格符。

下面例子发送 HTTP 请求给服务器 www.yhsafe.com

GET /index.php HTTP/1.1  //

↙ 请求信息

Host:www.yhsafe.com  //

↙ 表头

 

↙ //空格行

↙符号表示回车键,在空白行之后还要在按一个空格才会发送 HTTP 请求,HTTP 请求的表头中只有
Host 表头是必要的饿,其余的 HTTP 表头则是根据 HTTP 请求的内容而定。
 
HTTP 请求的方法
1)GET:请求响应
2)HEAD:与 GET 相同的响应,只要求响应表头
3)POST:发送数据给服务器处理,数据包含在 HTTP 信息正文中
4)PUT:上传文件
5)DELETE:删除文件
6)TRACE:追踪收到的请求
7)OPTIONS:返回服务器所支持的 HTTP 请求的方法
8)CONNECT:将 HTTP 请求的连接转换成透明的 TCP/IP 通道
 
HTTP 响应的格式