zhengchao
e09b31e8f9
准备用sqlite3替代MESA_htable进行Maat hierarchy构建。
2020-06-06 18:13:33 +08:00
zhengchao
0cf4b2bb24
抽象垃圾回收模块,新增Maat_garbage_collection.cpp/h
2020-06-05 11:44:54 +08:00
zhengchao
65af4bfd13
尝试分离hierarchy的中间版本
2020-06-05 11:44:54 +08:00
zhengchao
cad9604695
使用glibc中的remove函数替代rm命令;清理无用代码,垃圾回收方式删除外键文件功能,在不支持MAAT_OPT_FOREIGN_CONT_LINGER选项后已不使用。
2020-06-05 11:44:54 +08:00
zhengchao
54504a9d77
在编译配置级别支持合取范式,编译配置最多8个子句(Clause)组成,子句内的分组是“或”运算,子句之间是“与”运算。
2020-06-05 11:44:54 +08:00
zhengchao
091a19fd4c
头文件中keyword和district为'\0'多保留1个字节。
2020-06-05 11:43:15 +08:00
zhengchao
a96c3fc3b6
修复读取epxr配置时,关键字长度超过1024字节后导致内存越界 TSG-1893
2020-06-05 10:42:47 +08:00
zhengchao
5c304dfe14
修复创建ip_matcher时导致的内存泄漏。Close #22
v2.9.1
2020-06-05 10:24:37 +08:00
zhengchao
de9cee06b6
更新Maat版本号到2.9
v2.9
v2.9.0
2020-05-13 19:37:38 +08:00
郑超
593e891cf2
Merge branch 'feature-ip-plugin' into 'master'
...
Feature ip plugin
See merge request MESA_framework/maat!42
2020-05-13 16:37:10 +08:00
zhengchao
de53e4676b
更新ip_matcher,解决IPv6字节序问题。
...
根据rfc2553,ipv6地址是一个16字节的数组,用网络序存储。
3.2 IPv6 Address Structure
A new in6_addr structure holds a single IPv6 address and is defined
as a result of including <netinet/in.h>:
struct in6_addr {
uint8_t s6_addr[16]; /* IPv6 address */
};
This data structure contains an array of sixteen 8-bit elements, which make up one 128-bit IPv6 address. The IPv6 address is stored in network byte order.
IPv6地址由高位到低位存储在第0至15个uint8_t中。例如地址2001:0db8:1234::5210,rfc2553存储为(通过inet_pton):
static const uint8_t myaddr[16] = { 0x20, 0x01, 0x0d, 0xb8, 0x12, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x10 };
上述地址转换为uint32_t网络序后:
static const uint32_t myaddr_network_byte_order[4]={ 0xb80d0120, 0x3412, 0x0, 0x10520000}
再转换为主机序后,这也是MAAT输入ipmatcher和rulescan的格式:
static const uint32_t myaddr_host_byte_order[4]={ 0x20010db8, 0x12340000, 0x0, 0x5210}
目前,ip_matcher中int数组高位到低位的顺序是a[3]a[2]a[1]a[0],与RFC2553、Linux都不一致。
2020-05-13 14:53:26 +08:00
zhengchao
4b4d25b691
合并plugin和ip_plugin的处理逻辑,抽象为Maat_ex_data.h/cpp。
2020-05-13 14:53:25 +08:00
zhengchao
9d0d510348
新增IP回调表,可以进行IPv4和IPv6的区间匹配。
2020-05-13 14:53:25 +08:00
郑超
8729ebfbbe
Merge branch 'bugfix-loss-hit-compile' into 'master'
...
scan_hit_status_update_by_compile函数的循环中,未重置n_exsited_path,导致丢失命中的compile。
See merge request MESA_framework/maat!41
v2.8.1
2020-04-20 16:57:21 +08:00
zhengchao
8205efb1b3
scan_hit_status_update_by_compile函数的循环中,未重置n_exsited_path,导致丢失命中的compile。
2020-04-20 16:56:51 +08:00
刘学利
5a450d2d15
Merge branch 'CI' into 'master'
...
Ci
See merge request MESA_framework/maat!40
v2.8.0
2020-04-15 15:40:45 +08:00
liuxueli
6932f3d29b
修正CMakeList.txt及Package.cmake
2020-04-15 15:00:32 +08:00
liuxueli
2421e1ae83
安装openssl-devel
2020-04-15 14:44:12 +08:00
liuxueli
4a65c4d671
修改环境变量
2020-04-15 13:59:32 +08:00
liuxueli
264dff07c8
安装sapp-devel;使用sapp头文件
2020-04-15 13:49:49 +08:00
liuxueli
ae84f93ea5
安装依赖库
2020-04-15 13:45:27 +08:00
liuxueli
8fab23085d
安装依赖库
2020-04-08 10:13:16 +08:00
liuxueli
58c0b6e30f
安装依赖库
2020-04-08 09:33:14 +08:00
liuxueli
60574646f2
安装依赖库
2020-04-08 09:23:23 +08:00
liuxueli
f825b22e34
安装依赖库的devel版本
2020-04-07 16:12:10 +08:00
liuxueli
125494b9f8
add autorevision.sh
2020-04-07 16:06:22 +08:00
liuxueli
0ffb995693
支持CI及上传rpm至yum源
2020-04-07 16:04:09 +08:00
郑超
576ba6c0de
Merge branch 'bugfix-hit-path-miss-no-reference-group' into 'master'
...
修复bug:命中未被compile或其它group引用的group时,未将其加入hit path。
See merge request MESA_framework/maat!39
2020-04-03 19:45:19 +08:00
zhengchao
7f46a386cf
修复bug:命中未被compile或其它group引用的group时,未将其加入hit path。
2020-04-03 19:44:59 +08:00
郑超
737f377511
Merge branch 'feature-ip-composition' into 'master'
...
Feature ip composition
See merge request MESA_framework/maat!38
2020-03-31 19:54:53 +08:00
zhengchao
ecaab32f02
解决Maat JSON加载时间过长的问题:由json转换的iris格式用\n换行,但是读取iris格式时先搜索"\r"后搜索"\n",导致搜索时间过长。
2020-03-31 19:52:26 +08:00
zhengchao
54c5cf9d86
新增composition类型表,支持IP构成功能,可将Source和Destination两个子表组合为待扫描的IP表,子表可以是虚拟表。
2020-03-11 23:26:55 +08:00
zhengchao
7bf6dd6278
增加IP virtual的测试用例。
2020-03-11 15:45:43 +08:00
郑超
590157e5c5
Merge branch 'bugfix-hit-path-duplicate' into 'master'
...
编译配置命中更新hit path流程,在复制共享region_id的hit path时,重复复制。
See merge request MESA_framework/maat!37
2020-03-09 20:47:15 +08:00
zhengchao
91a186d2d3
编译配置命中更新hit path流程,在复制共享region_id的hit path时,重复复制。
2020-03-09 20:45:59 +08:00
郑超
e20bb224e7
Merge branch 'feature-hit-path' into 'master'
...
Feature hit path
See merge request MESA_framework/maat!36
2020-03-05 09:04:13 +08:00
zhengchao
ad2e957d2f
修复bug:IPv4和IPv6规则未正确加载源端口,IPv6规则未正确加载目的端口。
2020-03-04 19:39:39 +08:00
zhengchao
af6f23fd13
Evaluation Order为0时,策略执行顺序最靠后。
2020-02-28 18:00:44 +08:00
zhengchao
b6fd57ffb9
增加hit path功能的单元测试用例。
2020-02-11 18:00:06 +08:00
zhengchao
278a6b9203
为支持命中路径功能,重构scan_status相关函数,用TAILQ替代dynamic_array。
2020-02-11 00:14:56 +08:00
郑超
2cd54ae7cf
Merge branch 'feature-execute-sequence' into 'master'
...
执行顺序术语修改:将execute sequence修改为evaluation order。
See merge request MESA_framework/maat!35
2020-02-04 16:37:51 +08:00
zhengchao
32f4e4507e
执行顺序术语修改:将execute sequence修改为evaluation order。
2020-02-04 16:36:29 +08:00
郑超
f0866dae76
Merge branch 'feature-execute-sequence' into 'master'
...
增加Maat_rule_sort_by_exec_seq函数,可以按执行顺序对策略排序。
See merge request MESA_framework/maat!34
2020-02-04 11:01:58 +08:00
zhengchao
017a2a3816
增加Maat_rule_sort_by_exec_seq函数,可以按执行顺序对策略排序。
2020-02-04 11:00:57 +08:00
郑超
02b9914210
Merge branch 'feature-encrypt-maat-json' into 'master'
...
Feature encrypt maat json
See merge request MESA_framework/maat!33
2020-01-22 20:55:54 +08:00
zhengchao
0b15441525
Merge branch 'feature-encrypt-maat-json' of git.mesalab.cn:MESA_framework/maat into feature-encrypt-maat-json
2020-01-22 20:54:48 +08:00
zhengchao
987cb5708a
maat json文件支持aes-256-cbc加密,密码通过MAAT_OPT_DECRYPT_KEY选项指定,只在内存中解密,iris格式的中间状态文件也被加密。
2020-01-22 20:51:05 +08:00
zhengchao
d914fa1cb2
重构渲染iris文件的代码,逐条写入内存后,再一次性写入文件。
2020-01-22 20:51:04 +08:00
zhengchao
94f11e5a7b
支持maat json文件加密。
2020-01-22 20:51:04 +08:00
zhengchao
cc40446df7
maat json文件支持aes-256-cbc加密,密码通过MAAT_OPT_DECRYPT_KEY选项指定,只在内存中解密,iris格式的中间状态文件也被加密。
2020-01-22 20:49:45 +08:00