一.Browser(浏览器)Server(服务器)架构

        1.为什么会有HTTP和HTTPS协议:

                定义了浏览器和客户端传输数据的格式,类似统一语言

        2.HTTP超文本传输协议

       特点

  • 基于TCP/IP协议
  • 默认端口号为80,HTTPS的默认端口是443
  • 请求和响应一一对应
  • 每次请求相互独立,是无状态协议
        3.报文分析--原始数据--流数据

        浏览器自带的开发者模式均无法完整查看原始报文,故需要借助BurpSuite

二.请求消息request

       1.请求行
请求方式 请求uri 协议及版本
GET /pages/search.jsp?wk=SQL HTTP/1.1
        2.请求头
  • Host:www.yijinglab.com-->域名
  • User-Agent:
  • Accept:
  • Cookie:
  • Referer:
  • Accept-Encoding:
  • Accept-Language:
        3.请求空行

        这里就是个空行

        4.请求体

        可以为空

        

        5.请求行
  • URL:统一资源定位符。eg.https://www.yuque.com/jingla-jpftq/gqa0ee/ru8orle8g6vewwfp-->网址
  • URI:统一资源标识符。eg./jingla-jpftq/gqa0ee/ru8orle8g6vewwfp-->访问的具体页面/访问的具体路径
  • wk=SQL-->wk为搜索关键词,sql为搜索参数
  • HTTP/1.1:协议版本-->1.1 2.0 2.2
  • 网址有http:// or https:// -->版本都是HTTP
  • 常用的请求方式:
                1.GET:请求参数在URL地址中,URL有长度限制;GET请求只能传输字符数据

                2.POST:请求参数在请求体中,无大小限制; POST请求可以传输字符或字节数据

                Content-Type:你传送的类型-->MIMEl类型

                Content-Length:你传送的字符数

               3.切换请求方式
  • 右键 

6.请求头
  • Host:请求主机域名/IP地址
  • User-Agent:告诉服务器浏览器的版本信息,供服务器解决浏览器兼容问题-->告诉服务器你是什么
  • Accept:传输文件类型  eg.xhtml
  • Cookie:储存在用户本地终端上的数据-->用户凭据,相当于虎符
    • 造成漏洞:伪造/窃取cookie-->伪造:jwt(加密)  session(一半) 窃取:XSS漏洞 ONLY
  • Referer:告诉服务器从哪里来-->可列入统计
7.响应消息

响应状态码:服务器告诉浏览器本次请求和响应的状态

  • 2xx:成功
  • 3xx:重定向-->跳转
  • 4xx:客户端错误
  • 5xx:服务器错误
200

OK

客户端请求成功,即处理成功

302

Found

只是所请求的资源已移动到由Location响应头给定的URL,浏览器会自动重新访问到这个页面

304

Not Modified

告诉客户端,你请求的资源至上次取得后,服务端并未更改,你直接用你本地缓存吧。隐式重定向

400

Bad Request

客户端请求有语法错误,不能被服务器所理解

403

Forbidden

服务器收到请求,但是拒绝提供服务,比如:没有权限访问相关资源-->不允许你访问

404

Not Found

请求资源不存在,一般是URL输入有误,或者网站资源被删除了

405

Method Not Allowed

请求方式有误,比如:应该用GET请求方式的资源,而用了POST

428

Precondition Required

服务器要求有条件的请求,告诉客户端要想访问资源,必须携带特定的请求头

429

Too Many Requests

太多请求,可以限制客户端请求某个资源的数量,配合Retry-After(多长时间后可以请求)响应头一起使用

431

Request Header Fields Too Large

请求头太大,服务器不愿意处理请求,因为它的头部字段太大。请求可以在减少请求头域的大小后提交

500

Internal Server Error

服务器发生不可预期的错误,表示服务器出异常了

503

Service Unavailable

服务器尚未准备好处理请求,比如:服务器刚刚启动,还未初始化好

四.SQL注入可能存在的地方

  • GET漏洞
  • UAl漏洞
  • Cookie漏洞
  • Referer漏洞

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐