长期支持版本

    社区创新版本

      安装 secDetector

      软硬件要求

      硬件要求

      • 当前仅支持 x86_64、aarch64 架构处理器。
      • secDetector磁盘使用需求:配额1GB及以上。
      • secDetector内存使用需求:配额100MB及以上。

      操作系统要求

      openEuler 22.03 LTS SP3 及以上。

      环境准备

      安装 openEuler 系统,安装方法参考《安装指南》。

      安装secDetector

      1. 配置openEuler yum源:openEuler 22.03-LTS 发布版本上已默认配置完成yum源,无需额外操作。特殊情况下请参考openEuler官方文档配置在线yum源或通过ISO挂载配置本地yum源。

      2. 安装secDetector。

        #安装secDetector
        sudo yum install secDetector
        

      说明:

      安装secDetector后在指定目录下可获得部署secDetector所需的相关文件:

      #secDetector的kerneldriver的核心框架
      /lib/modules/%{kernel_version}/extra/secDetector/secDetector_core.ko
      
      #secDetector的kerneldriver的功能组件
      /lib/modules/%{kernel_version}/extra/secDetector/secDetector_xxx.ko
      
      #secDetector的守护者进程文件
      /usr/bin/secDetectord
      
      #secDetector的SDK库文件
      /usr/lib64/secDetector/libsecDetectorsdk.so
      /usr/include/secDetector/secDetector_sdk.h
      /usr/include/secDetector/secDetector_topic.h
      

      部署 secDetector

      secDetector的主体secDetectord是以系统服务的形式部署在系统中的,前台业务系统可以通过集成SDK来与之通信。由于secDetector的部分能力必须构建在内核之中,因此secDetectord的功能全集还依赖于其后台驱动的部署。

      部署 kernel driver

      1. 插入 kernel driver 的基础框架:secDetector_core.ko 是 kernel driver 的基础框架,要优先于其他内核模块进行部署。找到安装后的 secDetector_core.ko 目录,将其插入内核。参考命令如下:

        sudo insmod secDetector_core.ko
        

        secDetector_core 支持一个命令行参数ringbuf_size。用户可以通过指定该参数的值来控制 kernel driver 与 用户态secDetectord之间数据通道的缓存空间尺寸。该参数可以被指定为4~1024中的一个整数,单位是MB。默认值是4,必须为2的幂。参考命令如下:

        sudo insmod secDetector_core.ko ringbuf_size=128
        
      2. 插入 kernel driver 的功能模块:secDetector的 kernel driver 采用模块化部署方式。用户可以选择基于框架部署满足需要的功能模块,也可以选择部署全部模块。参考命令如下:

        sudo insmod secDetector_kmodule_baseline.ko
        
        sudo insmod secDetector_memory_corruption.ko
        
        sudo insmod secDetector_program_action.ko
        
        sudo insmod secDetector_xxx.ko
        
        • secDetector_kmodule_baseline.ko 提供了内核模块列表检测的能力,属于内存修改类探针;
        • secDetector_memory_corruption.ko 提供了内存修改检测的能力,属于内存修改类探针;
        • secDetector_program_action.ko 提供了程序行为检测的能力,属于程序行为类探针。

      部署 usr driver 和 observer_agent

      当前用户态驱动 usr driver 和服务 observer_agent 已经都被集成到secDetectord中,参考命令如下:

      sudo ./secDetectord &
      

      usr driver当前包含了文件操作类探针和进程管理类探针的能力。

      secDetectord支持如下一些配置选项:

      用法:secDetectord [选项]
      secDetectord 默认会在后台运行,从探针中取得数据并转发给订阅者。
      选项:
        -d         进入调试模式,进入前台运行,并且在控制台打印探针数据。
        -s <size>  配置eBPF缓冲区大小,单位为Mb,默认为4; size可选范围为4~1024,且必须为2的幂次方。当前拥有2个独立的缓冲区。
        -t <topic> 支持配置订阅的事件,默认为所有事件。topic 是位图格式。例如 -t 0x60 同时订阅进程创建和进程退出事件。详细请查阅 include/secDetector_topic.h。
      

      部署SDK

      SDK的库文件默认已经被部署到系统库目录中,用户需要在自己的程序中引用SDK的头文件即可使用。

      文档捉虫

      “有虫”文档片段

      问题描述

      提交类型 issue

      有点复杂...

      找人问问吧。

      PR

      小问题,全程线上修改...

      一键搞定!

      问题类型
      规范和低错类

      ● 错别字或拼写错误;标点符号使用错误;

      ● 链接错误、空单元格、格式错误;

      ● 英文中包含中文字符;

      ● 界面和描述不一致,但不影响操作;

      ● 表述不通顺,但不影响理解;

      ● 版本号不匹配:如软件包名称、界面版本号;

      易用性

      ● 关键步骤错误或缺失,无法指导用户完成任务;

      ● 缺少必要的前提条件、注意事项等;

      ● 图形、表格、文字等晦涩难懂;

      ● 逻辑不清晰,该分类、分项、分步骤的没有给出;

      正确性

      ● 技术原理、功能、规格等描述和软件不一致,存在错误;

      ● 原理图、架构图等存在错误;

      ● 命令、命令参数等错误;

      ● 代码片段错误;

      ● 命令无法完成对应功能;

      ● 界面错误,无法指导操作;

      风险提示

      ● 对重要数据或系统存在风险的操作,缺少安全提示;

      内容合规

      ● 违反法律法规,涉及政治、领土主权等敏感词;

      ● 内容侵权;

      您对文档的总体满意度

      非常不满意
      非常满意
      提交
      根据您的反馈,会自动生成issue模板。您只需点击按钮,创建issue即可。
      文档捉虫
      编组 3备份