Commit Graph

488 Commits

Author SHA1 Message Date
zhengchao
b9779088b9 对命中clause_id的数量设置上限,避免同时命中compile数量过多时,utarray排序耗时过大。 2020-11-24 21:08:40 +06:00
zhengchao
e9a9c89116 增加IP composition的测试用例,确认端口范围的起始不能为1。 2020-11-24 21:08:40 +06:00
zhengchao
17c450f8c3 修改字符串配置编码转换失败的告警级别,从FATAL降为Debug, 2020-11-24 21:08:40 +06:00
zhengchao
1fd05de8a0 修复serial rule中存储foreign key的数组使用了错误的下标的bug。 2020-11-24 21:08:40 +06:00
zhengchao
12c29eb375 更新版本号到3.1.4 2020-11-24 21:08:39 +06:00
zhengchao
dfe0c6007b Foreign file column content uses "null" to present empty file, which will not retrieval from redis server. 2020-11-24 21:08:39 +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
zhengchao
dda54b519e 修复删除FQDN Plugin配置时产生的内存泄露。 2020-10-19 16:11:25 +08:00
yangwei
331e1a6380 🐞fix: 兼容C99,inline前增加static修饰 2020-10-14 18:23:48 +08:00
yangwei
d7034e56c6 🐞fix: 兼容C99标准,inline函数前增加static描述符 2020-10-14 17:53:03 +08:00
刘学利
a80aad28bd Export version upload to sentry 2020-10-09 16:07:11 +08:00
zhengchao
807ffd4270 加载全量配置读取value时,如key中不包含生效的table name则不加载。 2020-09-30 15:48:34 +08:00
zhengchao
2f45768d2a 支持虚拟表建立在多个不同类型物理表上。 2020-09-27 23:02:02 +08:00
zhengchao
263301ad8a 修正FQDN_engine.cpp兼容Visual Studio产生的笔误。 2020-09-21 12:59:21 +08:00
zhengchao
18d6fff47f FQDN_engine.cpp的编译兼容Visual Studio。 2020-09-21 12:19:42 +08:00
zhengchao
8a32600b16 修复FQDN_engine.cpp中后缀匹配不能多命中的bug。 2020-09-21 12:01:50 +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
zhengchao
ca6b8e206f 更新配置时,未加判断的调用Maat_table_runtime_apply_new_ip_matcher,导致ip_matcher被清空。 2020-09-17 15:52:23 +08:00
fengweihao
c5b8acc9ce RPM对外提供BOOL_MATCH头文件 2020-09-03 10:27:01 +08:00
fengweihao
e9fbcfc743 对外提供BOOL_MATCH头文件 2020-09-02 20:16:08 +08:00
liuxueli
7d6bc2737c 关闭IPscan写日志的开关
关闭changelog
修复编译debuginfo出错的问题
2020-09-02 17:17:07 +08:00
zhengchao
a1d23a13e1 table info使用interval称呼数值类表,同时兼容原intval两种命名。扫描规则用interval表示数值范围,扫描输入用intval表示int数值。 2020-08-22 19:13:13 +08:00
liuxueli
6b892eb103 上传遗漏的changelog.sh文件 2020-08-22 18:52:25 +08:00
liuxueli
0c694b5f98 增加增强数值扫描功能及对应测试用例
增加changelog到rpm包
2020-08-22 18:52:25 +08:00
zhengchao
3791c9426e IP Plugin更新后重置计数器。 2020-08-20 10:37:55 +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
5931b445ff 增加对group_num为0的编译配置的处理。 2020-07-31 19:30:16 +08:00
zhengchao
9eac53c0ab 扫描ip_plugin表时,未对ip_matcher判空,导致ip_matcher报错写日志。 2020-07-27 20:55:27 +08:00
zhengchao
608a50535c 修复从redis中加载ip_plugin表时,未能正确读取有效标志位的bug。 2020-07-27 20:53:48 +08:00
zhengchao
dc1fced511 销毁region时未在assert中考虑未使用region的情况,即expr_id_cnt==0。 2020-07-08 19:38:57 +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
639feb17b0 为提高命中大量region时的性能,扫描中间状态使用utarray替代数组存储clause_id。 2020-07-03 19:45:16 +08:00
zhengchao
aef9f80891 Maat_hierarchy总是返回可用的compile_rule,以同步修复master分支中的bug:在对编译配置排序时,如果其已被删除,compile_sort_para_set会访问空指针,导致段错误。 2020-07-02 20:59:59 +08:00
zhengchao
61efaef045 Maat_hierarchy在删除group时,不同时删除igraph中的vertex,避免vertex id发生变化,导致段错误 2020-07-02 18:37:51 +08:00
zhengchao
207f99714e EX_data系列函数使用uthash替代MESA_htable,实现哈希表的动态伸缩。 2020-06-28 22:10:33 +08:00
zhengchao
f112c16d2c 修改v3版本的性能测试用例。 2020-06-22 20:27:29 +08:00
zhengchao
58ff7ddc16 打磨性能测试用例。 2020-06-22 20:27:29 +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
469539ab5a 基础扫描功能的测试用例通过。 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
c083777f3b 准备放弃sqlite,改用multimap。sqlite必须集中提交以获得高性能,这将不利于Maat进行异常处理。同时考察了以下key value stores:
* LevelDB和RocksDB太重了
* Berkeley DB也有点重,而且免费版使用类似AGPL的高传染性License,收费版一个Processor就要1000-13000美元。它提供的bdbfirewallexample很有意思,以后可能有机会使用。
* LMDB轻量、快速,Mark下,以后有机会使用。
2020-06-22 20:26:42 +08:00
zhengchao
6b3dd3d0b6 准备用sqlite3替代MESA_htable进行Maat hierarchy构建。 2020-06-22 20:26:42 +08:00