记录一次http协议学习过程

Web技术发展

1.静态Web

  • 攻击手段都是针对Web应用程序,lls服务,apache等程序

2.动态Web

  • 动态Web最大的特点就是可以接受客户端提交的数据,,根据用户的输入返回不同的结果,从而实现各式各样的应用。

  • 针对web应用程序代码进行寻找漏洞,从而攻击等等。

动态Web攻击面

  • Network
  • Os
  • Web server
  • App server
  • Web application
  • Database
  • Browser

http协议

1.明文

  • 没有任何内建的机密性安全机制,完全以明文的方式传输信息不管是客户端的请求,还是服务端的返回,全部都是明文传输。

  • 在相关的节点上进行嗅探或代理截断可查看全部明文信息

  • https只能对传输过程进行加密,对应用程序段以及服务端的漏洞完全是无能为力的

2.无状态

  • 每一次 客户端和服务端的通信都是独立的过程

  • Web状态需要跟踪客户端会话(多步通信)

  • 不使用cookie的应用,客户端每次请求都要重新进行身份验证,访问一个页面提交一次验证码,导致没人使用。

  • Session用于在用户身份验证后跟踪用户的行为轨迹(保持回话使用到的),session id从某种意义上来说等同于cookie,实际上cookie可以存放session id,真正的session是存放在服务端的,客户端拿到的只是一个session id 。

3.http协议基础

Cycle

  • HTTP请求或响应,一请求一响应就构成了http的基本单元,通常把这个单元叫做cycle

Header头部信息

  • 客户端发出请求的时候通常都会带着标准的http头,服务端响应的时候也会有http头,请求和响应都是由header及body组成的,一次请求都会包含多个http头部分

  • Set-cookie:服务端发给客户端的session id,session id就是放在set-cookie这个头里面(存在容易被盗取的风险)

  • Content-length :响应body部分的字节长度(已经排除header部分的字节)

  • Location:重定向用户到另一界面,可识别身份认证 后允许访问的页面

  • Cookie:客户端发回给服务器证明用户状态信息的(头:值 成对出现,一个头对应一个值)

  • Referrer:发起新的请求之前,表示用于位于的上一个页面是哪里,服务器基于此头的安全限制很容易被修改绕过(因为这个头是由客户端来发送的,可以认为进行修改)

4.状态码

服务端响应的状态码表示响应的结果类型(5大类50多个具体响应码)

  • 100s:服务器响应的信息,通常表示服务器还有后续的处理,很少出现

  • 200s:请求服务器成功接收并处理后返回的响应结果

  • 300s:重定向,通常在身份认证成功后重定向到一个安全界面(301/302)

  • 400s:表示客户端请求错误

    • 401:需要身份认证
    • 403:拒绝访问
    • 404:目标未发
  • 500s:服务器内部错误(服务不可用)

  • 跟多的状态码可以去该网站查询:http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

  • 想要了解http访问流程的可以移步这个文章https://blog.csdn.net/weixin_44344395/article/details/103386625

发布了12 篇原创文章 · 获赞 0 · 访问量 579

猜你喜欢

转载自blog.csdn.net/weixin_44344395/article/details/103776853
今日推荐