web请求流程与http方法剖析

目录

web请求流程与http方法剖析

http请求与响应

HTTP超文本传输协议

请求消息头(header)

http方法,URL,cookie,状态码

HTTP方法(可以用于安全测试)

概念

知识点

静态 动态语言区别

3.3.1 常见的脚本语言有那些

3.3.1 常见的数据库有那些

3.3.1 常见的数据库与脚本语言搭配

3.3.1 系统、脚本语言、中间件如何组合

3.3.1 渗透测试过程中如何查看对方网站平台


http请求与响应

HTTP超文本传输协议

是今天所有WEB应用程序使用的通信协议

使用一种用于消息的模型:客户端发出一条请求,服务端返回一条相应消息,该协议基本不需要连接,虽然HTTP使用有状态的TCP协议作为他的传输机制,但是每次请求与响应都会自动完成,并且有可能使用不同的TCP连接

请求消息头(header)

GET+页面     请求这个页面内容

或POST     表示提交

HTTP/1.1 协议的版本

1.1版本必须使用Host请求头

HOST+域名或者IP地址

Conection   close或者keep    close更好

获取到数据之后 服务器与客户断开为 close

keep用户量大会出现问题

Cache-control

用于向浏览器传送缓存指令

若没有则为no-cache

其他为有

Upgrade -Insecure-Requests:1

用于自动升级请求从HTTP升级到HTTPS,起到过渡作用,解决安全性问题

内容账户密码都是加密的,抓包都是加密数据包

Use-Agent

表示本机操作系统内核版本,浏览器等信息

可能有Mozilla,因为历史浏览器遗留问题

Accept

表示浏览器支持的MIME类型

若*/*则表示支持任何类型

优先顺序从左到右

如果服务端没有客户端需要的类型,406错误

0.8后面没有则可以任意类型

MIME类型分类

Text:用于标准化表示文本信息,文本消息可以是多重字符集或格式的

text/html:表示html文档

applicition:表示传输应用程序数据或者二进制数据

application/xhtml+xml

表示xhtml文档

application/xml

表示xml文档

Refer

到目标的页面之前一开始的起始页面

防下载,盗链

可以判断非法链接

ACCEPT-Encoding

压缩字段,代表请求的页面是压缩的

展示效果好

服务器压力大

ACCEPT-Language

优先语言

zh-cn简体中文

zh中文

从0到1优先级从小到大,0为不接受

Cookie

登录时用到,用户信息内容可能存在本地Cookie

x_FORWARDED_FOR

是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端的最原始的IP地址的一个请求头字段

突破阿里云云WARF

加127.0.0.1,假装是本地访问,不会被拦截

Authorization

为一种内置HTTP身份验证向服务器提交证书

Origin

指出请求的域

响应消息头

http/1.1 200 ok

可以访问

Server

对方服务器型号

Data

日期

与缓存有关,并不同步

Connect-type

请求和返回类型,还有编码格式

Expires

控制缓存失效时间,指出响应内容已经过期

Pragmar

用于向浏览器传送缓存指令,指示浏览器不要将响应保存在缓存中

例如no-cache

Cache-control

缓存控制

X—Powered By

使用的框架

Vary:Accept-Encoding

表示网站启用了GZip压缩

Content_Length

HTML大小

ETag

浏览器根据HTTP请求的ETag验证请求资源是否变化

未变化

返回304 Not Modified响应,并且紫圆葱浏览器缓存中读取,这样就不必再次下载请求

Location

说明重定向访问的目标

WWW-Authenticate

用在带401状态码响应中,提供与服务器所持的身份验证有关的信息

跟服务器的身份验证有关

X-Fram-Options

指示浏览器框架是否以及如何加载当前响应

http方法,URL,cookie,状态码

HTTP方法(可以用于安全测试)

get

请求获取某一资源

post

提交表单

opptions

返回服务器各种信息

put

生成上传文件数据包

move

改名数据包

copy

复制数据包

delete

删除数据

propfind

生成返回有浏览目录权限的内容目录的数据包,最后点提交数据包把生成的数据包提交到服务器

URL

web资源唯一标识符,可通过它获取其标识的资源

默认80端口,写在域名后

?id=1 取出数据库id为1的数据返回

cookie

概念

HTTP是无状态协议,客户端和服务器交换数据完毕就会断开连接,再请求,再连接,这就造成服务器单从网络连接上无法知道用户身份

为了解决,每次有新用户来的时候,就给它发一个身份证,下次访问就知道如何处理了

本质是一个很小的文本文件,储存在用户机器上

会话cookie

临时

持久cookie

可以设置有效时间

属性

域domain

可以控制哪些站点可以使用

路径PATH

可以为服务器特定文档指定cookie

secure

只能在HTTPS协议加密情况下才会发送

第三方cookie

cookie的域域地址栏中的域不匹配

通常用在第三方广告网站,为了追踪记录收集浏览习惯

状态码

1XX

提供信息

2XX

请求被成功提交

3XX

客户端被重定到其他资源

4XX

请求包含某种错误

5XX

服务器执行请求遇到错误

特殊状态码

100Continue

表示已经收到请求消息头

200OK

成功提交请求

201Created

put请求已经成功提交

301Moved Permanently

将浏览器永久重定向另外一个在Location消息头中制定的URL ,之后的客户端使用新的URL替换原有的

302found

恢复原始URL

304NOT Modifide

使用缓存中保存的所请求的资源的副本

400 Bad Request

提交了一个无效的HTTP请求

401 Unauthorized

HTTP身份验证

403 Forbidden

不管是否通过身份验证,禁止任何人访问被请求资源,主页没有配置

404 Not Found

资源已经被删除

405 Method Not Allowed

指定URL不接受请求中使用的方法

413 Request Entity Too Large

请求主体过长

414 Request URI Too long

请求中URL过长

500 Internal Server Error

服务器执行请求时遇到错误

仔细检查响应内容

503Service Unavaiable

web服务器正常,应用程序无法响应

检查网关,服务器,中间件

HTTPS

使用普通非加密TCP作为传输机制,安全传输机制是安全套接层SSL

http身份验证

Basic

请求消息头中随每条信息以Base64编码字符串形式发送用户证书

NTLM

NTLMV2 与Kerberos验证体系

Digest

响应式机制

web应用程序编码

URL编码(许多工具都可以转换)

%3d

=

%25

%

%20和+

空格

%0a

换行

%00

空字节

Unicode编码

HTML编码

跨站脚本漏洞时发挥作用

Base64

十六进制编码

远程和序列化框架

知识点

静态 动态语言区别

动态语言:服务端和客户端代码不一致(如 html)

静态语言:服务端和客户端代码一致(如: asp,php,aspx,jsp)

3.3.1 常见的脚本语言有那些

asp 、php、 aspx、 jsp、 cgi、 war、 do、 py、 pl

3.3.1 常见的数据库有那些

access mysql mssql(sqlserver) oracle postsql db2

3.3.1 常见的数据库与脚本语言搭配

asp+access,asp+mssql,php+mysql,aspx+mssql aspx+oracle,jsp+oracle, jsp+mssql 等

3.3.1 系统、脚本语言、中间件如何组合

Windows2003/2008/2012+asp、aspx、php+iis6.0/7.0+7.5

Apache+Windows/Linux+PHP Windows/Linux+Tomcat+JSP

3.3.1 渗透测试过程中如何查看对方网站平台

1、工具(RASS、天镜、NMAP、X-SCAN) 2、第三方平台(seo.chinaz.com) 3、通过 ping 观看 TTL 值

web请求流程与http方法剖析相关推荐

  1. web请求流程与http方法剖析(更新版)

    web请求流程与http方法剖析 (因为之前的排版太差了,又用的富文本编辑器,整理效果不好,抽了时间重新整理一下,这信息头也太难记了哈哈,最近要减少新知识摄入量,把总结都整理复习一遍,还是要学扎实点, ...

  2. web请求流程与HTTP方法刨析

    web请求流程与HTTP方法刨析 1.HTTP HTTP超文本传输协议,是访问万维网使用的核心通信协议,也是今天所有web应用程序使用的通信协议. HTTP使用一种用于消息的模型:客户端发送一条请求信 ...

  3. php如何处理查询请求,PHP如何处理Web请求流程

    PHP世界里涌现了很多开发框架,比如Laravel.ThinkPHP等,但不论何总框架,他们在处理Web请求时的模式都是一样的,本文首先阐述PHP开发Web应用的基本架构,然后分别分析Laravel和 ...

  4. springboot 请求路径有后缀_SpringBoot中配置Web静态资源路径的方法

    介绍: 本文章主要针对web项目中的两个问题进行详细解析介绍:1- 页面跳转404,即controller转发无法跳转页面问题:2- 静态资源文件路径问题. 项目工具: Intelij Idea, J ...

  5. bim 模型web页面展示_一种基于BIM模型的Web端轻量化展示方法与流程

    本发明涉及基坑结构模型技术领域,尤其涉及一种基于bim模型的web端轻量化展示方法. 背景技术: 建筑信息模型(buildinginformationmodeling,bim)技术在土木工程领域快速推 ...

  6. springMVC九大组件及一次请求流程

    一.九大组件 HandlerMapping(处理器映射器) HandlerMapping 是⽤来查找Handler的,也就是处理器,具体的表现形式可以是类,也可以是⽅法.⽐如,标注了@RequestM ...

  7. struts2 处理请求流程分析(结合源码)

    http://zhxing.iteye.com/blog/541059 struts2 源码版本2.0.11.1 本文是综合网上部分人的分析成果,然后再自己结合源码进行的,分析中如有错误,请指正. 从 ...

  8. springMVC请求流程详解

    SpringMVC框架是一个基于请求驱动的Web框架,并且使用了'前端控制器'模型来进行设计, 再根据'请求映射规则'分发给相应的页面控制器进行处理.核心流程: 第一步:发起请求到前端控制器(Disp ...

  9. 启动jboss_3种启动JBoss BPM流程的基本方法

    启动jboss 这一集提示和技巧将帮助您了解根据需要启动流程实例的最佳方法. 规划项目可能包括流程项目,但是您是否考虑过可以启动流程的各种方式? 也许您的JBoss BPM Suite在您的体系结构中 ...

最新文章

  1. 反射拷贝对象的思路:
  2. c++list支持索引吗_还在为不懂Python切片操作及原理而苦恼吗?漫画帮你立马理解掌握...
  3. 《高质量java程序设计》读书笔记之----异常处理(1)
  4. 【备用】关于BOM替代物料与CK11N取数逻辑
  5. HANA全面上市,成为SAP史上用户数量增长最快的产品之一
  6. 你有一笔新订单 语音_上市即成爆款 哪吒V首日订单突破1200辆_搜狐汽车
  7. 2018年10月28日宁波dotnet社区活动回顾及下次活动预告
  8. [2021-09-04 AtCoder Beginner Contest 217] 题解
  9. idea关闭页面显示的浏览器图标
  10. oracle 取系统当前年份_Oracle 获取当前日期及日期格式
  11. 2019手把手教你Java面试通关BAT
  12. python与线性代数 线性方程组的解集
  13. OceanBase云平台简介
  14. 网站地图生成器_10个相见恨晚的PPT网站 让你看一眼就心动
  15. struts2之chain的使用
  16. Spring AOP(五)之Around增强处理
  17. html中空格符号以及空格字符实体的总结
  18. 网易云音乐网站项目问题整理
  19. 注塑模具设计师要懂得的四个概念
  20. 阿里云ECS静态建站学习

热门文章

  1. Android Studio 打包生成APK方法
  2. 苹果系统自带的计算机怎么恢复出厂设置方法,Mac电脑初始化、恢复出厂设置方法...
  3. 满了18岁你就要这样
  4. 数据格式_初识生信常见数据格式知多少?
  5. unity 图片旋转(180度翻转)
  6. java优化登录注册,Java-Web(项目)优化登录注册
  7. echarts Java编写
  8. 中科每时每客WiFi客流系统首次配置教程
  9. Photoshop极坐标滤镜巧绘三维游泳圈
  10. 新能源充电桩兴起,智能车牌识别相机助力其发展