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 响应的格式