zhengchao
|
0037646ef6
|
因使用MAAT_SET_SCAN_NO_COUNT后,在Group移除region id时会出现误命中,移除对MAAT_SET_SCAN_NO_COUNT的支持。 回调表使用feather中的垃圾回收队列,便于观察队列长度。
|
2021-07-21 14:48:08 +08:00 |
|
zhengchao
|
1e2e3a1798
|
改进Hierarchy的多线程扫描性能: Hierarchy使用rwlock来保证更新线程和扫描线程间的线程安全, 测试发现在不发生读写锁冲突的情况下, 读写锁的固有开销会导致并发扫描速度降低。
reference:
https://stackoverflow.com/questions/11866486/how-many-simultaneous-readers-can-a-pthread-rwlock-have
|
2021-07-19 20:55:12 +08:00 |
|
zhengchao
|
e21db4ddf7
|
去掉不必要的memset,避免性损失。
|
2021-07-19 20:55:12 +08:00 |
|
zhengchao
|
233bc2f0ef
|
Maat_set_scan_status可以设置MAAT_SET_SCAN_NO_COUNT类型参数, 指示下一次扫描不进行计数,以减少hit path的存储开销。
|
2021-07-19 20:55:12 +08:00 |
|
郑超
|
6d5a42fb4a
|
提高expr_plus和interval_plus表的扫描性能
|
2021-07-15 03:59:09 +00:00 |
|
zhengchao
|
00f782b0cf
|
修复配置数量为0时,流式扫描句柄计数错误。
|
2021-06-18 15:11:52 +08:00 |
|
zhengchao
|
f2fac87894
|
修复bug: TSG-6324 在流式扫描过程中,发生版本号回滚导致的全量更新后,Maat_stream_scan_string_end释放rulescan流式扫描句柄时,会非法访问已被销毁的rulescan句柄内存,从而导致段错误。
|
2021-05-13 16:11:37 +08:00 |
|
zhengchao
|
1460f891c6
|
支持加载使用gzip命令压缩的maat JSON文件。允许先压缩、后加密,不支持先加密后压缩。
|
2021-04-28 21:44:04 +08:00 |
|
zhengchao
|
c1355dd3e5
|
为了便于单元测试,支持设置垃圾回收时间,默认10秒。
|
2021-04-28 12:06:34 +08:00 |
|
zhengchao
|
cd5f2c7c26
|
Maat Hierarchy中的compile mid结构体保留了Hier的指针,可能指向已被释放的hier,导致扫描线程死锁。
|
2021-04-20 12:47:05 +08:00 |
|
zhengchao
|
80576aafbc
|
扫描expr_plus表时,避免对rulescan result的不必要的拷贝。
|
2021-03-09 13:44:43 +08:00 |
|
zhengchao
|
460831ea23
|
处理expr_plus中的district时,使用了memmove,当命中region较多时,显著影响性能。 #25
|
2021-03-08 18:59:51 +08:00 |
|
zhengchao
|
a925ed039d
|
region_compile中compile_rule缓存数组的大小,调整为与调用参数相同。去除部分无效代码。
|
2020-12-05 16:54:04 +06:00 |
|
liuxueli
|
c18fe6e945
|
修复返回错误命中个数的BUG
|
2020-11-24 19:13:20 +06:00 |
|
zhengchao
|
4fbcf21ef5
|
MAAT_OPT_SCAN_DETAIL选项的默认值错误的初始化为2,应该为0。
|
2020-10-19 19:51:53 +08:00 |
|
刘学利
|
b29714d006
|
Feature fqdn plugin
|
2020-09-28 16:53:40 +08:00 |
|
liuxueli
|
0c694b5f98
|
增加增强数值扫描功能及对应测试用例
增加changelog到rpm包
|
2020-08-22 18:52:25 +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
|
aef9f80891
|
Maat_hierarchy总是返回可用的compile_rule,以同步修复master分支中的bug:在对编译配置排序时,如果其已被删除,compile_sort_para_set会访问空指针,导致段错误。
|
2020-07-02 20:59:59 +08:00 |
|
zhengchao
|
207f99714e
|
EX_data系列函数使用uthash替代MESA_htable,实现哈希表的动态伸缩。
|
2020-06-28 22:10:33 +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
|
2a10f85aa0
|
抽象垃圾回收模块,新增Maat_garbage_collection.cpp/h
|
2020-06-22 20:26:42 +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
|
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
|
8205efb1b3
|
scan_hit_status_update_by_compile函数的循环中,未重置n_exsited_path,导致丢失命中的compile。
|
2020-04-20 16:56:51 +08:00 |
|
zhengchao
|
7f46a386cf
|
修复bug:命中未被compile或其它group引用的group时,未将其加入hit path。
|
2020-04-03 19:44:59 +08:00 |
|
zhengchao
|
54c5cf9d86
|
新增composition类型表,支持IP构成功能,可将Source和Destination两个子表组合为待扫描的IP表,子表可以是虚拟表。
|
2020-03-11 23:26:55 +08:00 |
|
zhengchao
|
91a186d2d3
|
编译配置命中更新hit path流程,在复制共享region_id的hit path时,重复复制。
|
2020-03-09 20:45:59 +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 |
|
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
|
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
|
6002ff094f
|
修复bug:当包含外键的一个配置先无效再有效时,即配置ID重用,外键生成的本地文件会被错误的删除。
|
2019-09-19 18:23:55 +08:00 |
|
zhengchao
|
abdfa9a183
|
域配置命中缓存由64增加到4096。
|
2019-08-30 14:19:07 +08:00 |
|
zhengchao
|
9e0ae6f10d
|
增加异常处理,修复#19
|
2019-08-27 09:24:42 +08:00 |
|
zhengchao
|
912556ea33
|
使用cJSON_ArrayForEach替代cJSON_GetArrayItem,提高maat json解析速度。
|
2019-08-16 14:32:26 +08:00 |
|
zhengchao
|
c58c7d7f3a
|
增加异常处理region compile时对bool matcher判空。
|
2019-08-01 14:41:28 +06:00 |
|
zhengchao
|
718bbc59dd
|
Maat JSON支持虚拟表。
|
2019-07-28 15:03:33 +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
|
c189b90e6d
|
重构后region_compile后,回归测试通过。
|
2019-07-23 21:26:05 +06:00 |
|
zhengchao
|
24b2b4c1b6
|
不再兼容无group表的情况,重构region_compile函数。
|
2019-07-23 12:40:05 +06:00 |
|