HTTP数据包

简介:由w3c制定的一种网络应用层协议,定义了浏览器与web服务器之间通信时所使用的数据格式。

0x00 数据包格式

1、请求行:请求类型/请求资源路径、协议的版本和类型

2、请求头:一些键值对,一般有w3c定义,浏览器与web服务器之间都可以发送,表示特定的某种含义

3、空行:请求头与请求体之间用一个空行隔开

4、请求体:要发送的数据(一般post方式会使用)如:UserName=123&PAssWord=123

0x01 请求头介绍

Hsot:表示请求的服务器域名/ip地址+端口

User-Agent:表示用户本地系统浏览器环境

Accept:表示浏览器可解析的应用环境

Accept-Language:表示浏览器可解析的语言类型

Accept-Encoding:表示浏览器可解析的编码方式

Referer:表示请求页面是从哪里来的

Cookie:表示服务器和浏览器之间的会话转台,该状态可以表示用户是否登陆过,一般都是服务器给配置的,具有时效性,只要失效就需要用户重新登录,会得到一个新的Cookie值,只要登录成功之后,浏览器就会保存cookie,妹子去服务器请求都会带上cookie,并且该cookie是需要在服务器中验证的

X-forwarded-for:表示用户真实ip

content-type:表示该请求数据的类型

0x02 响应包response

用户发送的请求包到达服务器,服务器处理该请求,处理之后返回发送给用户浏览器,讲该结果成为响应包。

响应包=状态行+响应报头+空行+响应正文(响应内容)

响应报头参数含义:

data:响应时间

server:服务器环境

content-length:响应数据包长度

connection:连接状态

content-type:返回响应数据类型,告诉浏览器该使用哪种方式去解析或打开盖响应数据的内容

location:表示要跳转到的页面

set-cookie:表示服务器给浏览器设置的cookie值

0x03 状态码的分类,由3位数字组成:

1xx 表示服务器已接收到请求,并需要继续处理

2xx 表示服务器已成功接收到请求,并处理了请求

3xx 表示重定向,url要跳转到其他页面去请求

4xx 表示用户请求客户端有问题

5xx表示服务器端内部错误

常见状态码:

200 表示请求已成功,请求所希望的响应头或数据将响应返回

203 表示服务器已成功处理了请求,但返回的试题头部元信息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝

302 表示请求的资源现在临时从不同的url响应请求,由于这一的重定向是临时的,客户端应继续向原有地址发送以后的请求

304 表示如果客户端发送了一个带条件的get请求且请求已被允许,而文档的内容并没有改变

400 表示语义有误,当前请求无法被服务器理解,或者请求的参数有误

401 表示当前请求需要用户验证,该响应必须包含一个适用于被请求资源的信息头用以询问用户信息

403 表示服务器已经理解请求,但是被拒绝执行,与401不同的事,身份验证并不能提供任何帮助,而这个请求也不应该呗重复提交

404 请求失败,请求所希望得到的资源未被在服务器上发现

500 服务器遇到一个未曾预料的状况,导致了它无法完成对请求的处理,一般是服务器的程序码出错时出现

PS:此博客是博主的学习记录过程,如有错误烦请大佬们纠正。

部分参考资料来源于其他博主

HTTP协议数据包的更多相关文章

  1. TCP/IP协议数据包文件PCAP分析器

    一.设计原理 1.PCAP文件构成 参考http://blog.csdn.net/gulu_gulu_jp/article/details/50494909 PCAP文件由一个PCAP文件头和多个PC ...

  2. 使用网络监视器(IRSI)捕捉和分析协议数据包

    转载请注明原地址. 实验名称:  理解子网掩码.网关和ARP协议的作用             一.实验目的和要求 (1) 熟悉IRIS的使用 (2) 验证各种协议数据包格式 (3) 学会捕捉并分析各 ...

  3. 史上最全最强Charles截取手机https协议数据包教程(附上利用此技术制作最近微信比较火的头脑王者辅助外挂)!

    纯原创,思路也是本人花了半个小时整理出来的,整个完成花费了本人半天时间,由于不才刚大学毕业,所以有的编码方面可能不入大牛们的眼,敬请原谅!如有转载请附上本地址,谢谢! 最近微信朋友圈刚刚被跳一跳血洗, ...

  4. 从零开始学安全(四十二)●利用Wireshark分析ARP协议数据包

    wireshark:是一个网络封包分析软件.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料.Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换,是目前 ...

  5. TCP协议数据包及攻击分析

    TCP/IP协议栈中一些报文的含义和作用 URG: Urget pointer is valid (紧急指针字段值有效) SYN: 表示建立连接 FIN: 表示关闭连接 ACK: 表示响应 PSH: ...

  6. 2019-9-23:渗透测试,基础学习,http协议数据包的认识,html css的认识,笔记

    Burp suite功能模块Dashboard:扫描Proxy:拦截包,代理 drop:放弃Intruder:爆破Decoder:编码,解码repeater:重放comparer:比较 BP,prox ...

  7. 使用wireshark在windows平台下捕获HTTP协议数据包中的帐号密码信息

    1.打开wireshark软件,从Interface List中选择相应的网卡,例如我的PC机上是“本地连接”,然后选择”Start”启动抓包程序. 2.打开学校主页,输入账号和密码登录校内邮箱. 3 ...

  8. fiddler设置抓取HTTPS协议数据包

    1.打开工具里的选项 2.选择弹窗中的HTTPS选项,如下图进行勾选 3.若浏览器显示不安全链接则需要添加证书 提示如下点击确定证书安装成功,可以查看安装的证书,点击Action 下图即可查看fidd ...

  9. 用Java代码实现拦截区域网数据包

    起因: 吃饭的时间在想如果区域网内都是通过路由器上网,那如何实现拦截整个区域网的数据包,从而实现某种窥探欲. 思路:      正常是通过电脑网卡预先设置或分配的IP+网关对路由器进行通讯,比如访问百 ...

随机推荐

  1. uniapp使用axios以及封装错误重试解决方案

    在uniapp中,使用axios进行请求时,uniapp无法使用axios的适配器,需要基于uni.request来定义适配器. 安装完成axios后在项目utils目录下建一个axios文件夹 文中 ...

  2. Flink的sink实战之一:初探

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  3. 手写Koa.js源码

    用Node.js写一个web服务器,我前面已经写过两篇文章了: 第一篇是不使用任何框架也能搭建一个web服务器,主要是熟悉Node.js原生API的使用:使用Node.js原生API写一个web服务器 ...

  4. php之策略模式

    策略模式:封装算法,选择所用具体实现的置业由客户对象承担. 将算法具体类,然后互相替换,不影响客户. <?php /** * 设计模式之策略模式 * User: 小狗蛋儿 * Date: 201 ...

  5. Python面试题及答案汇总整理(2019版)

    发现网上很多Python面试题都没有答案,所以博主花了很长时间搜集整理了这套Python面试题及答案,由于网上的Python相关面试题大多数都是2019年的,所以我这个也是2019版的,哈哈~ (文末 ...

  6. [python学习手册-笔记]002.python核心数据类型

    python核心数据类型 ❝ 本系列文章是我个人学习<python学习手册(第五版)>的学习笔记,其中大部分内容为该书的总结和个人理解,小部分内容为相关知识点的扩展. 非商业用途转载请注明 ...

  7. 2,flask URL进阶

    video5 flask特点: 1,为框架,简介,高扩展性. 2,flask相关依赖(jinja2,werkzeug)设计优秀. 3,开发高效,如SQL的ORM video6 debug模式 我只推荐 ...

  8. 自定义泛型方法, 三级排序, low版,待升级

    package com.jd.dashboard.util; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken ...

  9. Innodb之线程独享内存

    引用链接: https://blog.csdn.net/miyatang/article/details/54881547 https://blog.csdn.net/wyzxg/article/de ...

  10. EOF和scanf函数

    EOF和scanf函数 scanf函数的返回值 scanf函数返回成功读入的数据项数,读入数据时遇到了"文件结束(end of file)"或者错误则返回EOF,EOF定义为int ...