1[
2  {
3    "enabled":1,
4    "version_min":300000,
5    "title":"Testing Variables :: OUTBOUND_DATA_ERROR (1/2)",
6    "client":{
7      "ip":"200.249.12.31",
8      "port":123
9    },
10    "server":{
11      "ip":"200.249.12.31",
12      "port":80
13    },
14    "request":{
15      "headers":{
16        "Host":"localhost",
17        "User-Agent":"curl/7.38.0",
18        "Accept":"*/*"
19      },
20      "uri":"/?key=value&key=other_value",
21      "method":"GET"
22    },
23    "response":{
24      "headers":{
25        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
26        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
27        "Content-Type":"text/html"
28      },
29      "body":[
30        "no need."
31      ]
32    },
33    "expected":{
34      "debug_log":"Target value: \"0\" \\(Variable: OUTBOUND_DATA_ERROR\\)"
35    },
36    "rules":[
37      "SecRuleEngine On",
38      "SecResponseBodyAccess On",
39      "SecRule OUTBOUND_DATA_ERROR \"@eq 1\" \"id:1,phase:4,pass,t:trim\""
40    ]
41  },
42  {
43    "enabled":1,
44    "version_min":300000,
45    "title":"Testing Variables :: OUTBOUND_DATA_ERROR (2/2)",
46    "client":{
47      "ip":"200.249.12.31",
48      "port":123
49    },
50    "server":{
51      "ip":"200.249.12.31",
52      "port":80
53    },
54    "request":{
55      "headers":{
56        "Host":"localhost",
57        "User-Agent":"curl/7.38.0",
58        "Accept":"*/*",
59        "Content-Length":"330",
60        "Content-Type":"multipart/form-data; boundary=--------------------------756b6d74fa1a8ee2",
61        "Expect":"100-continue"
62      },
63      "uri":"/",
64      "method":"POST",
65      "body":[
66        "--------------------------756b6d74fa1a8ee2",
67        "Content-Disposition: form-data; name=\"name\"",
68        "",
69        "test",
70        "--------------------------756b6d74fa1a8ee2",
71        "Content-Disposition: form-data; name=\"filedata\"; filename=\"small_text_file.txt\"",
72        "Content-Type: text/plain",
73        "",
74        "This is a very small test file..",
75        "--------------------------756b6d74fa1a8ee2",
76        "Content-Disposition: form-data; name=\"filedata\"; filename=\"small_text_file.txt\"",
77        "Content-Type: text/plain",
78        "",
79        "This is another very small test file..",
80        "--------------------------756b6d74fa1a8ee2--"
81      ]
82    },
83    "response":{
84      "headers":{
85        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
86        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
87        "Content-Type":"text/html"
88      },
89      "body":[
90        "--------------------------756b6d74fa1a8ee2",
91        "Content-Disposition: form-data; name=\"name\"",
92        "",
93        "test",
94        "--------------------------756b6d74fa1a8ee2",
95        "Content-Disposition: form-data; name=\"filedata\"; filename=\"small_text_file.txt\"",
96        "Content-Type: text/plain",
97        "",
98        "This is a very small test file..",
99        "--------------------------756b6d74fa1a8ee2",
100        "Content-Disposition: form-data; name=\"filedata\"; filename=\"small_text_file.txt\"",
101        "Content-Type: text/plain",
102        "",
103        "This is another very small test file..",
104        "--------------------------756b6d74fa1a8ee2--"
105      ]
106    },
107    "expected":{
108      "debug_log":"Target value: \"1\" \\(Variable: OUTBOUND_DATA_ERROR\\)"
109    },
110    "rules":[
111      "SecRuleEngine On",
112      "SecResponseBodyAccess On",
113      "SecResponseBodyLimit 2",
114      "SecRule OUTBOUND_DATA_ERROR \"@eq 1\" \"id:1,phase:4,pass,t:trim\""
115    ]
116  }
117]
118
119