OSSIM-agent源代码分析(二)

本文主要分析OSSIM-agent的源代码,包括loadAliases、loadPluginConfigurations、check_pid和check_server_status等关键函数。loadAliases负责加载别名配置,loadPluginConfigurations处理插件配置,check_pid检查代理运行状态,而check_server_status则关注服务器活动状态。文章详细探讨了这些函数的功能和在OSSIM-agent中的作用。
摘要由CSDN通过智能技术生成

2021SC@SDUSC

OSSIM-agent源代码分析(二)

1、简述

Event Handler的主要任务是映射数据源插件采集的事件到SIEM实例警报的OSSIM标准化事件格式。为了执行这样的过程,原始消息经历由RAW LOG转换为现有归一化数据字段格式的一个转变;我们将这些机制表示为“归一化Normalization”和“OSSIM消息”

2、Agent.py源码分析

loadAliases函数分析

主要功能:加载别名配置文件

进行配置文件引入及相关类的声明

self.__aliases = Aliases()     
self.__aliases.read([os.path.join(os.path.dirname(configuration_file), "aliases.cfg")], 'latin1')
local_aliases_fn = os.path.join(os.path.dirname(configuration_file), "aliases.local")

如果Alias.local存在,在加载Alias默认文件后,再加载别名

if os.path.isfile(local_aliases_fn):
    logger.info("Reading local aliases file: %s" % local_aliases_fn)
    self.__aliases.read(local_aliases_fn, 'latin1')
loadPluginConfigurations函数分析

主要功能:加载插件的配置

插件是ossim的核心

检查是否有加密信息,部分插件的数据可能有不同形式的加密

if 'suricata' in self.conf.hitems("plugins"):
            self.conf.set('plugins', 'av-pulse', DEFAULT_PULSE_PLUGIN_PATH)
        for name, path in self.conf.hitems("plugins").iteritems():
            data = path.split('|')
            path = data[0]
            encoding = 'latin1'
            if len(data) > 1:
                path = data[0]
                encoding = data[1]
                if data[1] != '':
                    encoding = data[1]
                try:
                    logger.info("Using encoding: %s for plugin: %s" % (encoding, path))
                    encoder = codecs.lookup(encoding)
                except LookupError, e
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值