增加IP Composition表的非规则测试用例

This commit is contained in:
zhengchao
2021-08-19 16:43:14 +08:00
parent 03d351f1ab
commit 3cc9c5dcb7
2 changed files with 100 additions and 2 deletions

View File

@@ -124,7 +124,59 @@
}
}
]
}
},
{
"group_name": "IPv4-composition-NOT-client-ip",
"regions": [
{
"table_type": "ip_plus",
"table_name": "IP_PLUS_CONFIG",
"table_content": {
"addr_type": "ipv4",
"saddr_format": "range",
"src_ip1": "192.168.58.19",
"src_ip2": "192.168.58.19",
"sport_format": "range",
"src_port1": "20000",
"src_port2": "20000",
"daddr_format": "mask",
"dst_ip1": "0.0.0.0",
"dst_ip2": "255.255.255.0",
"dport_format": "range",
"dst_port1": "0",
"dst_port2": "65535",
"protocol": 6,
"direction": "double"
}
}
]
},
{
"group_name": "IPv4-composition-NOT-server-ip",
"regions": [
{
"table_type": "ip_plus",
"table_name": "IP_PLUS_CONFIG",
"table_content": {
"addr_type": "ipv4",
"saddr_format": "range",
"src_ip1": "10.0.1.20",
"src_ip2": "10.0.1.25",
"sport_format": "range",
"src_port1": "1",
"src_port2": "443",
"daddr_format": "mask",
"dst_ip1": "0.0.0.0",
"dst_ip2": "255.255.255.0",
"dport_format": "range",
"dst_port1": "0",
"dst_port2": "65535",
"protocol": 6,
"direction": "double"
}
}
]
}
],
"rules": [
{
@@ -2032,7 +2084,29 @@
]
}
]
}
},
{
"compile_id": 185,
"service": 0,
"action": 0,
"do_blacklist": 0,
"do_log": 0,
"effective_rage": 0,
"user_region": "ipv4_composition.NOT_match",
"is_valid": "yes",
"groups": [
{
"group_name":"IPv4-composition-NOT-client-ip",
"virtual_table":"COMPOSITION_IP_SOURCE",
"not_flag":0
},
{
"group_name":"IPv4-composition-NOT-server-ip",
"virtual_table":"COMPOSITION_IP_DESTINATION",
"not_flag":1
}
]
}
],
"plugin_table": [
{

View File

@@ -977,6 +977,30 @@ TEST(IPScan, IPv4_composition)
Maat_clean_status(&mid);
return;
}
TEST(IPScan, IPv4_composition_with_NOT)
{
int table_id=0,ret=0;
const char* table_name="COMPOSITION_IP";
struct Maat_rule_t result[4];
scan_status_t mid=NULL;
struct ipaddr ipv4_addr;
struct stream_tuple4_v4 v4_addr;
ipv4_addr_set(&ipv4_addr, &v4_addr, "192.168.58.19", 20000, "10.0.1.26", 443);
table_id=Maat_table_register(g_feather, table_name);
EXPECT_GT(table_id, 0);
Maat_set_scan_status(g_feather, &mid, MAAT_SET_SCAN_LAST_REGION, NULL, 0);
ret=Maat_scan_proto_addr(g_feather, table_id, &ipv4_addr, 6, result, 4, &mid, 0);
EXPECT_EQ(ret, 1);
EXPECT_EQ(result[0].config_id, 185);
Maat_clean_status(&mid);
return;
}
TEST(IPScan, BugReport20210515)
{
//By Liu Mengyan 2021-5-15