Commit Graph

102 Commits

Author SHA1 Message Date
zhengchao
2f45768d2a 支持虚拟表建立在多个不同类型物理表上。 2020-09-27 23:02:02 +08:00
zhengchao
0713a4a576 FQDN Plugin加载、扫描、更新测试通过,遗留FQDN_engine后缀匹配不命中的Bug待修复。 2020-09-19 21:11:38 +08:00
zhengchao
58daab14ad 引入FQDN Engine,以支持FQDN Plugin。 2020-09-19 10:08:56 +08:00
fengweihao
e9fbcfc743 对外提供BOOL_MATCH头文件 2020-09-02 20:16:08 +08:00
liuxueli
0c694b5f98 增加增强数值扫描功能及对应测试用例
增加changelog到rpm包
2020-08-22 18:52:25 +08:00
zhengchao
a44e14f82d 删除IP Plugin表项时,未能及时更新ip_matcher,也未能正确同步uthash和ip_matcher的状态,导致ip_matcher返回了已被删除的ex_data。解决方案:
- 在IP Plugin的table runtime中增加垃圾回收队列,延迟删除EX_data,并延后ip_matcher在扫描线程的生效时机。
- 在scanner中增加ip_plugin_update_q_size,在IP Plugin的table runtime中增加changed_flag,以判断ip_matcher是否需要更新
2020-08-19 22:57:37 +08:00
zhengchao
121cfea4fc fix #23 Maat_plugin_exdata的回调使用以'\0'结尾的key。 2020-07-07 17:57:11 +08:00
zhengchao
2962c6c90a 修复删除region时,笔误导致错误计算rulescan expr_id的bug,该bug导致rulescan_update失败的assert。 2020-07-06 19:46:55 +08:00
zhengchao
41b3628b53 region_rule_inner中增加magic_num,以诊断region配置删除时可能发生的野指针访问;同时hierarchy增加对region_id查找的判空,以避免在一个region扫描命中后,hierarchy中该region又被删除,产生的空指针访问。 2020-07-06 16:46:41 +08:00
zhengchao
207f99714e EX_data系列函数使用uthash替代MESA_htable,实现哈希表的动态伸缩。 2020-06-28 22:10:33 +08:00
zhengchao
73d27d983c redis内部key改为unsigned long,适配性能测试用例。 2020-06-22 20:26:44 +08:00
zhengchao
af27d7197c Maat command支持批量提交 2020-06-22 20:26:44 +08:00
zhengchao
2dbbd55c95 version3单元测试通过。 2020-06-22 20:26:44 +08:00
zhengchao
df19a8ce71 通过原有功能的单元测试。 2020-06-22 20:26:43 +08:00
zhengchao
2c80ba4c0a 代码适配Maat command、maat json。 2020-06-22 20:26:43 +08:00
zhengchao
7e1cb56d4f 完成Maat_hierarchy规则加载重构的代码编写,未编译。 2020-06-22 20:26:42 +08:00
zhengchao
6b3dd3d0b6 准备用sqlite3替代MESA_htable进行Maat hierarchy构建。 2020-06-22 20:26:42 +08:00
zhengchao
2a10f85aa0 抽象垃圾回收模块,新增Maat_garbage_collection.cpp/h 2020-06-22 20:26:42 +08:00
zhengchao
8a89dcfdae 尝试分离hierarchy的中间版本 2020-06-22 20:26:41 +08:00
zhengchao
a69ab5c609 使用glibc中的remove函数替代rm命令;清理无用代码,垃圾回收方式删除外键文件功能,在不支持MAAT_OPT_FOREIGN_CONT_LINGER选项后已不使用。 2020-06-22 20:26:41 +08:00
zhengchao
1179e9c76a 在编译配置级别支持合取范式,编译配置最多8个子句(Clause)组成,子句内的分组是“或”运算,子句之间是“与”运算。 2020-06-22 20:26:41 +08:00
zhengchao
48881faafe 头文件中keyword和district为'\0'多保留1个字节。 2020-06-22 20:26:40 +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
zhengchao
54c5cf9d86 新增composition类型表,支持IP构成功能,可将Source和Destination两个子表组合为待扫描的IP表,子表可以是虚拟表。 2020-03-11 23:26:55 +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
zhengchao
32f4e4507e 执行顺序术语修改:将execute sequence修改为evaluation order。 2020-02-04 16:36:29 +08:00
zhengchao
017a2a3816 增加Maat_rule_sort_by_exec_seq函数,可以按执行顺序对策略排序。 2020-02-04 11:00:57 +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
2f10504d64 1、修复bug:virtual table扫描时,未能正确识别上一次命中的compile的bug,导致compile多次返回。2、修复bug:在进行virtual table+ Expr plus的扫描时,由于笔误,错误的认为table id不合法 2019-11-21 18:48:22 +08:00
zhengchao
fb9f5587ef 修复bug:上次提交未彻底解决配置ID重用时外键文件无效的bug。 2019-09-19 20:09:01 +08:00
zhengchao
6002ff094f 修复bug:当包含外键的一个配置先无效再有效时,即配置ID重用,外键生成的本地文件会被错误的删除。 2019-09-19 18:23:55 +08:00
zhengchao
abdfa9a183 域配置命中缓存由64增加到4096。 2019-08-30 14:19:07 +08:00
zhengchao
eadab7ecba 深度遍历group graph时,若分组不被其它分组引用,执行快速处理路径,提高加载性能。 2019-07-28 20:42:17 +06:00
zhengchao
3473cf6dd4 增加性能测试用例,处理无法获取redis time的异常。 2019-07-28 19:13:04 +06:00
zhengchao
4c4222a302 将scanner中的运行态数据拆分到Maat_table_runtime.cpp中。 2019-07-28 11:45:57 +06:00
zhengchao
2909cb1997 重构Maat table相关代码。 2019-07-25 14:49:11 +06:00
zhengchao
24b2b4c1b6 不再兼容无group表的情况,重构region_compile函数。 2019-07-23 12:40:05 +06:00
zhengchao
b5ad82afe9 移除compile快速路径相关代码:在支持子分组、“非”运算后,该特性对性能提升有限,却大幅增加代码复杂度。 2019-07-11 17:05:38 +08:00
zhengchao
14a2691577 修复BUG:删除compile时,未置空group中的shortcut,导致region compile段错误(#16) 2019-07-11 17:05:38 +08:00
zhengchao
1bd09a501e 优化加载和扫描超大型分组(100万)的性能。 2019-07-11 17:05:37 +08:00
zhengchao
93da3eea24 修复延迟更新执行判断的bug,修复 #15 2019-07-11 17:05:37 +08:00
zhengchao
0ed7476e0d 在compile_group_relation中增加magic num,编写更为复杂的SubGroup测试用例用于调试 #15 的死锁情况。 2019-07-11 17:05:37 +08:00
zhengchao
8e0d69eec1 修复扫描现场死锁的bug,通过延迟删除方式销毁compile_group_relation。 2019-07-11 17:05:37 +08:00
zhengchao
0992c8a14b 1、增加Maat_command_raw_set_xx系列函数,可以操作sub-group、分组复用,增加sub-group增删的测试用例。 2、fix #13。 2019-07-11 17:05:36 +08:00
zhengchao
a238b357d7 重构编译配置表的加载和扫描逻辑,fix #12, 设置igraph_es_pairs_small最后一个参数为-1, fix #11。 2019-07-11 17:05:36 +08:00
zhengchao
05f51e8372 重构group的申请和销毁代码。 2019-07-11 17:05:35 +08:00