• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
【我是谁】
博客园    首页    新随笔    联系   管理    订阅  订阅

分析Http 请求

1. 分析Http协议信息

首先需下载一个网络监听软件:Fiddler,然后我们进行安装并打开,软件会自动监80端口,即是 HTTP通讯协议端口,把我们访问每一个网站的请求都会被记录下来。

拦截了HTTP所有请求信息, 下面我们来选中已经拦截到访问的或提交的页面,点击右边的  选项卡  子选项,然后会看到类似下面这样的Http请求信息头:

(1)分析GET方式

GET请求信息:

//请求的URL地址
GET http://xxx.xxx.com/10.aspx?id=2
//请求HTTP的类型
HTTP/1.1
//浏览器可解析的格式, */*代表任何格式都可以,包括所有文档格式,例如Hhtml,Image,Wml都属于范围内
Accept: */*
//上级访问页面地址
Referer: http://demo.powereasy.net/
//浏览器所属地区语言
Accept-Language: zh-CN
//浏览器的信息
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; .NET4.0E)
//表示可以接收的编码格式,其中带有gzip则代表可以接收压缩的二进制编码文档
Accept-Encoding: gzip, deflate
//请求主机
Host: demo.powereasy.net
//连接的状态类型
Connection: Keep-Alive
//这个就是请求的Cookie信息,它不但能够存储临时常用信息,而且还是存放SessionID的地方
Cookie: UN=caeken; __gads=ID=6a9e1b703643f529:T=1288593931:S=ALNI_Mas3BBbquE6VVRzJuSRF_t6GowlCA; cnt_uid_www=443c1251113c777b15f6ff80f34b5ae9; __message_sys_msg_id=764; __message_gu_msg_id=0; __message_cnel_msg_id=0; __message_in_school=0; LastVisitedForum=3036657c-277c-476c-982d-75f154e09050*3036657c-277c-476c-982d-75f154e09050
GET返回信息:
这些信息由客户端发送到服务器的请求信息,接下来我们分析一下服务器返回的信息头:
//请求状态
HTTP/1.1 200 OK
//服务类型
Server: nginx/0.7.65
//处理信息的日期时间
Date: Thu, 11 Nov 2015 02:48:26 GMT
//文档格式和语言编码
Content-Type: text/html; charset=utf-8
//连接状态
Connection: keep-alive
//内容长度
Content-Length: 161

//返回HTML信息
document.write('<li><a target="_blank" href="#" onclick="LogClickCount(this,165);">示例</a></li>');

(2)分析POST方式

我们通常都把表单提交的方式都设为POST请求方式

POST http://zzz.xxx.com/Login.aspx HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/QVOD, application/QVOD, */*
Accept-Language: zh-cn,en;q=0.5
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQPinyin 730; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.2; .NET4.0C; .NET4.0E)
Host: zzz.xxx.com
Content-Length: 683
Connection: Keep-Alive
Pragma: no-cache
Cookie: ASP.NET_SessionId=o5smmubh3cxhd4vs3jzc21sb; ClientKey=40b7dfb5-b1eb-4f91-91ae-018b4f384c9d

//这里就是提交表单的详细信息;数据在报文体中提交
__LASTFOCUS=&&__VIEWSTATE=%2FwEPBXxlTnI3ejhqUHlxMXJhRzVwWm1ScVptbG15cDhpeHNURURDVFptRmo1K2NXWTVBU2Q4L05LaXZKelF2TERFbk15VXhKTFVsazVDc3dzakxKTTBpeFNVcGpZUUlya0dWZzVvVUpaQmtCQmRxZ2dGMHpNeUNnbEJRQ2hveFpoGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYBBQlJYnRuRW50ZXKQ4XrnXRpYSLnjHShJa6adUxfAJg%3D%3D&__EVENTVALIDATION=%2FwEWBQKH2573BwKtiIODCgLG7PzDDQKv9dqIDwK%2F%2BoyFDI4kI9dsW1GGISQ51mtFzgj9HeYA&p682j4f8=admin&682j4f8j0=123456&82j4f8j022=8888&IbtnEnter.x=21&IbtnEnter.y=2

 GET与POST区别:

GET安全性较低,POST安全性较高。因为GET在传输过程,数据被放在请求的URL中;GET传送参数值是有限制的,只能用于从服务器上传送较少的数据和获取数据。而POST是在报文体中向服务器传送数据的,理论上来说POST数据是没有限制的,起限制作用的是服务器处理程序的处理能力,因此提交复杂数据可以使用POST方法。

 

 

posted @ 2018-03-20 23:41  【我是谁】  阅读(528)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3