6.31. HTTP2关键字¶
HTTP2帧根据流标识符分组到事务中(如果不是0)。对于流标识符为0的帧,其对连接的影响是全局的,将为每个帧创建一个事务。
6.31.1. http2.frametype¶
匹配事务中存在的帧类型。
实例:
http2.frametype:GOAWAY;
6.31.2. http2.errorcode¶
匹配GOWAY或RST_流帧中的错误代码
实例:
http2.errorcode: NO_ERROR;
http2.errorcode: INADEQUATE_SECURITY;
6.31.3. http2.priority¶
匹配priority或HEADERS框架中存在的HTTP2 priority字段的值。
此关键字在冒号后接受数字参数,并支持其他限定符,例如:
>
(大于)<
(小于)x-y
(值x和y之间的范围)
实例:
http2.priority:2;
http2.priority:>100;
http2.priority:32-64;
6.31.4. http2.window¶
匹配WINDOWUPDATE框架中存在的HTTP2值字段的值。
此关键字在冒号后接受数字参数,并支持其他限定符,例如:
>
(大于)<
(小于)x-y
(值x和y之间的范围)
实例:
http2.window:1;
http2.window:<100000;
6.31.5. http2.size_update¶
匹配HTTP2动态头表的大小。有关协议的更多信息,请访问: https://tools.ietf.org/html/rfc7541#section-6.3
此关键字在冒号后接受数字参数,并支持其他限定符,例如:
>
(大于)<
(小于)x-y
(值x和y之间的范围)
实例:
http2.size_update:1234;
http2.size_update:>4096;
6.31.6. http2.settings¶
匹配设置框中HTTP2设置的名称和值。
此关键字在冒号后接受数字参数,并支持其他限定符,例如:
>
(大于)<
(小于)x-y
(值x和y之间的范围)
实例:
http2.settings:SETTINGS_ENABLE_PUSH=0;
http2.settings:SETTINGS_HEADER_TABLE_SIZE>4096;
6.31.7. http2.header_name¶
匹配来自头帧的HTTP2头的名称(或PUSH_PROMISE或CONTINUATION)。
实例:
http2.header_name; content:"agent";
http2.header_name
是“粘性缓冲区”。
http2.header_name
可用作 fast_pattern
.
6.31.8. http2.header¶
匹配头帧中HTTP2头的名称和值(或PUSH-unmise或CONTINUATION)。名称和值由“:”、冒号和空格连接。名称或值中的每个冒号都应作为双冒号“:”进行转义以进行检测
实例:
http2.header; content:"agent: nghttp2";
http2.header; content:"custom-header: I love::colons";
http2.header
是“粘性缓冲区”。
http2.header
可用作 fast_pattern
.
6.31.9. 附加信息¶
有关协议的更多信息,请访问: https://tools.ietf.org/html/rfc7540