- 论坛徽章:
- 13
|
支持这样的配置:
- # pkt1: 1234567DE
- # pkt2: abcdef1234567\"ABCDEF
- # pkt3: xxsss
- # pkt4: hello
- # pkt5: 123haha~\d2\04\00\00..
- # pkt6: xxxhaha~
- # pkt7: olddie
- [http] {
- #u1: N(); u2: S(5, [1]"1234567"), S(0, [~]"\\\"\41\42\43"), S(-2, "EF"), C(5, "BCD"), SL(6,P(u1,0),7), CL(-6,P(u1,7),2)
-
- # xs s shello
- # xss s hello
- #[~]u1[~]: S(0, [~]"s" [0]"s" [~]"hello")
-
- #pkt1-------------pkt5
- #pkt1-------------pkt6------------------pkt7
- #pkt5-------------pkt6------------------pkt7
- #u1: S(0, "123"); [~]u2: S(3, "haha~"); u3: S(0,"olddie")
-
- # ( ( ( (21 +2)* (17--1))/9 )= 46)
- #u1: N(); u2: E(DIV(MUL(ADD(L(u2),2),SUB(17,-1)),L(u1)), 46)
-
- [4]u: E(V(8,2),1234)
- }
复制代码
配置解释:
- /*
- * 空特征:
- * N(),用于报文占位
- * 串特征:
- * S(a,"b"), !memcmp(a,"b","b"长度)
- * C(a,"b"), !strnstr(a,("b","b"长度),a长度)
- * SL(a,b,l),!memcmp(a,b,l);
- * CL(a,b,l),!strnstr(a,(b,l),a长度)
- * 值特征:
- * E(a,b), a=b
- * NE(a,b), a!=b
- * G(a,b), a>b
- * GE(a,b), a>=b
- * B(a,b), a<b
- * BE(a,b), a<=b
- * 正则特征:
- * R(a,b),a串符合b串描述的正则表达式
- * 编码特征:
- * D(a,b),a串符合b格式编码
- */
复制代码- // 字符串
- /******* "" *******/
- // 转义(在字符串内部使用)
- /******* \hex、\r、\n、\t、\\、\" *******/
- // 十进制数值
- /******* n *******/
- // 报文内偏移
- /******* +n、-n *******/
- // 报文命名(n为名字一部分,不表示位置)
- /******* un、dn *******/
- // 长度
- /******* L() *******/
- // 计算
- /******* ADD(,)、SUB(,)、MUL(,)、DIV(,) *******/
- // 取值
- /******* V(,) *******/
- // 位置
- /******* P(,) *******/
- // 跳过/范围
- /******* [n]、[~] *******/
- /*
- * 用于字符串,向后结合: [10]"haha" [~]"xx" [10]"haha"
- *
- * 用于报文前,表示位置: [7]u, 第7个上行报文
- * 默认[1], u=(前面u/前面d)+1, d=前面u/(前面d+1)
- * 用于报文后,表示范围: u[~], 当前上行报文及以后上行报文
- * 默认[1], 仅当前报文内容
- */
复制代码
已完成。。
|
|