Web渗透_HTTP协议基础

HTTP协议基础

  • 静态WEB
  • 动态WEB
    • 应用程序
    • 数据库
    • 每人看到的内容不同
    • 根据用户输入返回的不同结果
  • Web攻击类型有数百种
Web攻击面
  • Network------网络
  • OS------操作系统
  • Web Server------服务器端
  • App Server------服务器端软件
  • Web Application------中间件软件
  • Database-----数据库
  • Browser------浏览器
HTTP协议基础
  • 明文
    • 无内建的机密性安全机制
    • 嗅探或代理截断可查看全部明文信息
    • https只能提高传输层安全
  • 无状态
    • 每一次客户端和服务器端的通信都是独立的过程
    • WEB应用需要跟踪客户端会话(多步通信)
    • 不适用cookie的应用,客户端每次请求都要重新身份验证(不现实)
    • Session用于在用户身份验证后跟踪用户行为轨迹
      • 提高用户体验,但增加了攻击向量
  • Cycle
    • 请求 / 响应
  • 重要的header
    • Set-Cookie:服务器发送客户端的SessionID(被窃取的风险)
    • Content-Length:响应body部分的字节长度
    • Location:重定向用户到另一个页面,可识别身份认证后允许访问的页面
    • Cookie:客户端发回给服务器证明用户状态的信息(头:值成对出现)
    • Referrer:发起请请求之前用户位于哪个页面,服务器基于此头的安全限制很容易被修改绕过
HTTP状态码
  • 服务端响应的状态码表示响应的结果类型(5大类50多个具体响应码)
  • 100S:服务器响应的信息,通常表示服务器还有后续处理,很少出现
  • 200S:请求被服务器成功接收并处理后返回的响应结果
  • 300S:重定向,通常在身份认证成功后重定向到一个安全页面(301/302)
  • 400S:表示客户端请求错误
    • 401:需要身份验证‘
    • 403:拒绝访问
    • 404:目标未发现
  • 500S:服务器内部错误(503:服务不可用)
【Web渗透_HTTP协议基础】状态码查看
HTTP/1.1: Status Code Definitions




    推荐阅读