首页 > 其他分享 >HTTP协议违背

HTTP协议违背

时间:2023-07-14 10:04:38浏览次数:30  
标签:协议 HTTP 请求 chunk request 告警信息 违背 合规

  • HTTP协议违背

2.1 请求URI过长

告警信息:the requested URL's length exceeds the capacity limit

描述:HTTP请求URI长度超过默认缓冲区大小,认为其不合规

2.2 请求头部过长

告警信息:request exceeds system's limit

描述:HTTP请求头部长度超过默认的缓冲区大小,认为其不合规

2.3 响应头部过长

告警信息:request exceeds system's limit

描述:HTTP响应头部超过默认缓冲区大小,认为其不合规

2.4 请求方法字段不合规

告警信息:request method begin with non-capital letters or over load content-length

request method body contains non-capital letters

描述:HTTP请求方法不是大写的英文字符,比如:get、gET,GeT等

2.5 未知请求方法

告警信息:the requested method is unknown

描述:WAF允许的HTTP请求方法如下: GET、POST、HEAD、PUT、DELETE、MKCOL、COPY、MOVE、OPTIONS、PROPFIND、PROPPATCH、LOCK、UNLOCK、TRACE、SEARCH、CONNECT、CHECKOUT、LABEL、UPDATE、REPORT、CHECKIN、CHECKOUT、UNCHECKOUT、MERGE、MKACTIVITY、BPROPPATCH、MKWORKSPACE、VERSION-CONTROL、BASELINE-CONTROL

2.6 URL字段不合规

告警信息:request uri begin neither schema nor slash

request schema contain non-letters

request schema without slash

request schema with only one slash

request with bad host

request with bad port

描述:URI字段不合规包含以下几种情况:

<br>1、不是schema://host:port/path 形式且不以/开头,如GET abc、GET abc:def等;

<br>2、是schema://host:port/path 形式,但HOST字段无效,如:HTTP://2.2.abab.2;

<br>3、是schema://host:port/path 形式,但PORT字段无效,如:POST HTTP://2.2.2.2:2.3

2.7 HTTP版本字段不合规

告警信息:request protocol only has h,lost others

request protocol only has ht,lost others

request protocol only has htt,lost others

request protocol without splash

request protocol version major non-digit

request protocol version major too long

request protocol version minor non-digit

request protocol version minor too long

描述:HTTP版本字段不符合规范,比如:GET / H/1.1,GET / HTT/1.1,GET / HTTP/1.a,GET / HTTP/0.9(0.9版本不需要指明版本号,出现这种情况也视为不合规)

2.8 HTTP请求行不合规

告警信息:request end failed, bad CRLF

描述:HTTP请求头部首行格式为:GET+SPACE+URI-Path+HTTP/1.1+CRLF,当版本号后面不存在CRLF或CRLF不完整时,认为其不合规。

2.9 HTTP版本号不合规

告警信息:request with bad protocol version

描述:HTTP版本号不符合规范,目前只支持HTTP/1.0、HTTP/1.1这两种版本号

2.10禁止URL路径穿越

告警信息:request forbidden path through

描述:HTTP请求的URI-Path中不能出现../这样的字符,可能会造成路径穿越攻击

2.11 URI-Path包含CRLF

告警信息:request uri decode contain line feed

描述:HTTP请求的URI-Path中不能出现编码的回车换行字符,比如:GET /%0a

2.12 请求头部字段不合规

告警信息:request header end failed, bad CRLF

描述:HTTP请求头部字段中以\r\n结尾,比如:GET / HTTP/1.1\r\nHost:172.16.132.207:12345\rab\r\n\r\n

2.13 多余的请求头部

告警信息:request could not be understood

描述:HTTP请求头部中出现重复的HOST、Content-Length、Transfer-Encoding字段,认为其不合规

2.14 HTTP/1.1 缺少HOST头部

告警信息:request without header Host

描述:HTTP 1.1版本请求中不包含HOST头部时,认为其不合规

 

2.15 Content-Length不合规

告警信息:request method requires a valid Content-length

描述:POST和PUT请求中缺少Content-Length字段或者Content-Length数值不正确,比如:Content-Length: 或Content-Length:1.22,认为其不合规

 

2.16 请求chunk块size不合规

告警信息:request chunk size is erange!

request chunk size begin with not digit!

request chunk size CR without LF!

描述:HTTP请求chunk块size不以数字开头或\r\n不完整,认为其不合规

2.17 请求chunk块body不合规

告警信息:request chunk body end without CR!

request chunk body CR without LF!

描述:HTTP请求chunk块body结尾\r\n不完整,认为其不合规

 

2.18 请求last chunk块不合规

告警信息:request chunk last chunk end without CR!

request chunk last chunk CR without LF!

描述:HTTP请求last chunk块结尾\r\n不完整,认为其不合规

 

2.19 请求URI不可见字符

告警信息:request uri has invisible char!

描述:解码前的URI中包含0x00~0x1f等不可见字符认为其不合规

 

2.20 请求URI解码后不可见字符

告警信息:request decoded uri has invisible char!

描述:解码后的URI中包含0x00~0x1f等不可见字符认为其不合规

 

2.21 请求URI特殊字符

告警信息:request uri has special char!

描述:解码前的URI中包含%认为其不合规

标签:协议,HTTP,请求,chunk,request,告警信息,违背,合规
From: https://www.cnblogs.com/ballad/p/17552874.html

相关文章

  • 使用HttpUtil时报javax.net.ssl.SSLHandshakeException: No appropriate protocol异常
    在使用HttpUtil类时,针对某一个接口报错出现异常HttpGetInforesult=HttpUtil.getInfo(token,Url);但是这个getInfoUrl在postman上调用是成功的后来查找后发现问题是:在Java8及高版本以上的版本在调用ssl时会出现javax.net.ssl.SSLHandshakeException:Noappropriateprotoc......
  • 从需求去理解 Linux dbus与基于dbus协议的无agent软件管理
    从需求去理解Linuxdbus与基于dbus协议的无agent软件管理 转载 WhatisIPCIPC[Inter-ProcessCommunication] 进程间通信,指至少两个进程或线程间传送数据或信号的一些技术或方法。在Linux/Unix中,提供了许多IPC。Unix七大IPC:Pipe:无名管道,最基本的IPC,单向通信,仅在......
  • Vue项目配置Https双向认证
    访问双向认证的Https接口本地运行设置修改webpack配置 jsconstfs=require('fs')constoptions={//客户端密钥key:fs.readFileSync(path.join(__dirname,'../ca/key.pem')),//客户端公钥cert:fs.readFileSync(path.join(__dirname,'../ca......
  • vue配置https
    constpath=require('path');constfs=require('fs');consthttps=require('https');constoptions={key:fs.readFileSync(path.join(__dirname,'./ca/client.key')),cert:fs.readFileSync(path.join(__dirname,......
  • 六月学习之Haproxy高级功能(自定义HTTP报文)
    6、Haproxy高级功能6.8、自定义HTTP报文6.8.1、reqaddreqadd<string>[{if|unless}<crond>]在请求报文中添加指定首部实现原理:client-->haproxy-->reqadd(添加header)-->web1、在frontend中使用reqadd,将发往后端集群的请求中添加一个headercat/etc/haproxy/haproxy.cfgf......
  • HttpURLConnection绕过SSL验证,信任所有证书的工具类
    HttpURLConnection绕过SSL验证,信任所有证书的工具类发起https请求时经常会出现javax.net.ssl.SSLHandshakeException:java.security.cert.CertificateException这样的错误,那是因为环境中没有证书校验,我们可以在连接中设置绕过SSL校验来解决这个问题。publicclassSslUtil{......
  • minio 配置https访问
    官网文档:https://docs.min.io/docs/how-to-secure-access-to-minio-server-with-tls.html在${HOME}.minio/certs文件夹下1、生成私钥opensslgenrsa-outprivate.key20482、生成自签名证书创建一个以openssl.conf以下内容命名的文件。设置IP.1和/或DNS.1指向正确的IP/DNS......
  • urllib默认只支持HTTP/HTTPS的GET和POST方法
    URL编码转换:urllib的urlencode()urllib和urllib2都是接受URL请求的相关模块,但是提供了不同的功能。两个最显著的不同如下:urllib模块仅可以接受URL,不能创建设置了headers的Request类实例;但是urllib提供 urlencode 方法用来产生GET查询字符串,而urllib2则没有。(这是urll......
  • HTTP/HTTPS一文搞懂
    HTTP协议(HyperTextTransferProtocol,超文本传输协议):是一种发布和接收HTML页面的方法。HTTPS(HypertextTransferProtocoloverSecureSocketLayer)简单讲是HTTP的安全版,在HTTP下加入SSL层。SSL(SecureSocketsLayer安全套接层)主要用于Web的安全传输协议,在传输层对网络连接进行......
  • TCP协议的首部结构?
     源端口:占2字节。目的端口:占2字节。序号:占4字节。序号范围是[0,2^23-1],共2^23个序号。当序号达到2^23-1时候,下一个序号就回到0。TCP是面向字节流的,在一个TCP连接中传送的字节流的每一个字节都按顺序编号。整个TCP的起始序号必须在建立时确认,首部中的序号字段指的是这个报文段所......