• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

H3C SecPath SSMS 服务器安全监测系统 用户FAQ(E6401 E6402 E6403)-5W106

手册下载

H3C SecPath SSMS 服务器安全监测系统 用户FAQ(E6401_E6402_E6403)-5W106-整本手册.pdf  (1.78 MB)

  • 发布时间:2022/3/18 14:10:53
  • 浏览量:
  • 下载量:

H3C SecPath SSMS 服务器安全监测系统

用户FAQ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Copyright © 2022 新华三技术有限公司 版权所有,保留一切权利。

非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。

除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。

本文档中的信息可能变动,恕不另行通知。


 

服务器端常见问题及回复··· 4

服务端用户忘记密码改如何处理?·· 4

服务端是否有登录失败处理功能?若有,登录失败次数是几次?封停多长时间?·· 5

非内网IP是否能够进行主机发现·· 5

Agent端产生的日志占用磁盘,是否有180天保留记录,涉及保存日志的路径在哪?以及最大占用磁盘是多少?之后新增是否是覆盖?是否有磁盘满告警?·· 5

若服务端的服务异常,重启后,需要多久重新检查服务?·· 5

是否能监测到非web目录下的webshell以及webshell检测的实现方式?·· 5

Web目录的监控这块,如果是几百万的文件或者更大,对服务器性能的损耗是怎样的?·· 6

暴力破解会进行IP封禁么?·· 6

暴力破解检测的原理是什么?·· 6

Web应用层扫描是否支持事先录制的脚本?爬虫有两种,一种是没有登录的爬,一种是你给这个工具赋予了登录这个程序的用户名密码去爬。·· 6

产品的告警邮件会不会很多?·· 6

资产清点有什么优势?·· 6

能对系统的账号梳理到什么程度?·· 7

支持多少软件应用的识别?·· 7

能识别哪些数据库?能否将数据库的配置文件也梳理出来?如何实现?·· 7

风险的评分是怎么定义的?处理完告警的风险后,怎样量化系统的健康程度?·· 7

系统支持哪些类型的应用的弱口令检查?如何发现弱口令的?弱口令在后台数据库中加密存储吗?支持弱口令字典的自定义吗?·· 7

怎么保证检测的漏洞的准确性?·· 8

能否对命令操作的记录进行审计?对危险操作能否进行告警?·· 8

H3C服务器安全监测系统目前兼容的浏览器有哪些?·· 8

服务器端获取Agent上报数据,采用Agent时间戳还是服务器端时间戳?·· 8

服务器端与Agent端通信过程是怎么样的?开启的端口80443/81/82/8001/8002/6677/7788,这些端口的具体作用是什么?   8

服务器安全监测系统所需硬件配置推荐是什么?可支撑多少个Agent节点,目前服务器安全监测系统可支持节点数为50个、100个、500个、1000个,各配置都可使用同一硬件?·· 9

导出系统配置, 包括哪些东西?可否将一台设备导出的配置导入到另一台,这样操作会有什么影响?·· 9

更改服务器安全监测系统服务端的ip信息,是否会发生授权变化?具体授权绑定哪些信息?授权中设备信息是不断变化的,设备扩容时是否有影响,该值是通过什么得到的,为什么会一直变化?·· 9

谷歌浏览器下载数据报表过程中,默认是阻止弹窗的会导致下载不成功,该怎么办?·· 9

资产清点中进程清点与实际查看的有差异,为何?·· 9

Agent升级之后,为何导致Agent日志不会上报?·· 10

后门检测>隔离/删除,目前仅支持手动方式吗?有时为何出现隔离/删除失败?·· 10

服务器安全监测支持双网卡部署吗?·· 10

Agent常见问题及回复··· 10

LinuxWindows下,Agent启动、停止、重启的操作方法是什么?·· 10

agent分时执行job的机制是怎么做的?·· 12

Agent支持的版本·· 12

linux版本·· 12

windows版本·· 15

Agent资源占用·· 15

Agent降级和自杀机制·· 16

Agent发现所在系统负载过高后,自动进行降级,降级后Agent停止所有高消耗资源的操作,保证不影响所在主机的业务运行。·· 16

Agent发现自身资源占用过大时,例如CPU、内存和文件句柄等,Agent会自杀重启。·· 19

Agent相关进程·· 20

Windows· 20

Agent自动拉起·· 20

Linux· 20

Windows· 20

Agent Linux任务计划说明·· 20

Agent 执行权限·· 21

Agent 任务执行机制·· 22

Agent 任务定时机制·· 22

Agent网络流量和带宽消耗·· 22

Agent采集数据·· 22

Agent与服务端通信安全性·· 23

Agent本身的安全性·· 23

Agent安装之后会产生的目录·· 23

Linux环境下卸载Agent 24

Windows环境下卸载Agent 24

Agent程序采用什么语言编写?需要对操作系统的内核、驱动进行什么操作?会否在运行中需要加载动态模块吗?   26

Agent运行的安全性如何保证?服务端和Agent之间采用什么加密和认证方式?是否服务端可以对Agent下发执行任意命令?   26

规则更新常见问题及回复··· 27

规则更新时某规则更新失败,重新更新规则后仍报错。·· 27

规则更新时失败报错上次规则的结束时间必须大于或等于本次规则的起始时间·· 27

 


服务器端常见问题及回复

服务端用户忘记密码改如何处理?

182端口系统配置后台默认账号忘记密码处理方法

登录服务器安全监测后台,执行重置密码脚本:

/data/app/titan-patrol-srv/script/setPwd.sh

重置后,账号、密码会被重置为admin/admin

281端口用户管理后台默认账号忘记密码处理方法:

登录服务器安全监测后台,执行重置密码脚本:

cd /data/app/www/titan-web/user-backend/cli/

/usr/local/php/bin/php back-pwd-reset.php back-username

其中 back-username是后台账号名,脚本返回生成对应账号的新密码。

380端口用户控制台默认账号忘记密码处理方法

1)联系系统管理员,做重置密码处理(管理员进81用户管理后台给该账号重置密码,重置密码会发到账户邮箱中)

图1 账号信息设置

 

对于默认账号admin@h3c.ssms重置密码的补充说明

80页面账号重置密码,要求该账号的邮箱是有效邮箱才可进行重置操作。服务器安全监测系统SSMS,默认账号为admin@h3c.ssms,用户需要在账号资料中新增其有效邮箱地址。后续该账号重置密码时,就会收到相关邮件。

图2 账号资料设置

 

服务端是否有登录失败处理功能?若有,登录失败次数是几次?封停多长时间?

服务端具有登录失败处理功能,默认登录失败5次,则会封停15分钟。

非内网IP是否能够进行主机发现

主机发现非内网IP不可用。内网IP包括A类地址中:10.0.0.0--10.255.255.255B类地址中:172.16.0.0--172.31.255.255C类地址中:192.168.0.0--192.168.255.255;除此之外的IP均为非内网IP。用户可将非内网IP加入自定义内网IP组中去,此时用户可以使用主机发现功能。

Agent端产生的日志占用磁盘,是否有180天保留记录,涉及保存日志的路径在哪?以及最大占用磁盘是多少?之后新增是否是覆盖?是否有磁盘满告警?

Agent端日志默认会保留180天,日志路径:/var/log/titanagentAgent日志中的备份机制: agent中每个日志文件的最大尺寸的限制是50M(压缩前50M,压缩后大概5M)。最大备份的日志文件的个数是5,超过5个轮转的日志文件时,会删除最久远的日志。 Agent日志文件占用的存储空间最大约为:50M + 5M x 5 = 75MAgent有磁盘告警邮件。

若服务端的服务异常,重启后,需要多久重新检查服务?

在系统配置管理后台下重启下系统异常服务重启之后,等待2-3分钟后再点击重新检查按钮。

是否能监测到非web目录下的webshell以及webshell检测的实现方式?

支持自定义目录的webshell扫描和实时监控。webshell检测方式有正则匹配,样本匹配,以及相似度匹配。

Web目录的监控这块,如果是几百万的文件或者更大,对服务器性能的损耗是怎样的?

Agent进行了严格的资源消耗和扫描时长控制,单次扫描不会超过CPU单核50%、内存500MB、文件句柄102420分钟。实时监控是检测web目录里发生变动的文件,如果没有文件发生变动则不会检测。

扫描周期是指每天凌晨的这次扫描,这次扫描主要是为了新安装的Agent 首次扫描web目录,以及上次没有完成的扫描。

暴力破解会进行IP封禁么?

对于内网的IP地址如果出现暴力破解的行为之后,系统不会封停,但是会在产品界面提示,需要手动封停。客户可以根据实际情况,可在产品界面手动配置是否封停。

如果是外网IP地址的话,达到规则阈值后会自动进行封停,封停时间为1小时,达到时间后自动解封。另外如果是手动封停的话需要手动解封,不会自动解封。

暴力破解检测的原理是什么?

日志加正则加阈值规则:读取/var/log/secure文件中产生的每条日志内容,使用内置正则规则将匹配到的登录失败记录上报服务器,然后结合阈值规则判断是否为暴力破解行为。我们大部分的逻辑判断是在服务器做的,客户端只是收集信息。

Web应用层扫描是否支持事先录制的脚本?爬虫有两种,一种是没有登录的爬,一种是你给这个工具赋予了登录这个程序的用户名密码去爬。

我们的指纹识别不需要扫描,因此也不需要爬虫。我们的agent能自动分析出所有的website,以及website对于的物理路径,然后通过指纹直接分析出所有的web应用。

产品的告警邮件会不会很多?

产品的告警一定是精确、有效的,不会像其它产品产生大量的警报,可通过设置发送频率来控制邮件告警数量。

资产清点有什么优势?

产品支持WindowsLinux所有主流的操作系统与版本。包括:RedhatCentOSUbuntuOracle LinuxSUSEDebianOpenSUSEWindows ServerWindows桌面系统等。

产品资产清点的技术优势主要体现在两个方面。

1)数据的获取速度快,定期清点资产数据放入快速缓存,查询数据或使用数据从快速缓存中获取。

2)对于变化较为频繁的数据(例如进程,端口),在定时更新的基础上,用户可以按需主动更新,避免因为本地数据库过于陈旧,检测不准确,也避免传统方案不断监控变化(频繁变化的数据在使用时,实际只需要获取最新的状态),导致的无意义性能消耗。

能对系统的账号梳理到什么程度?

在梳理范围上,系统可以清点所有账号,包括隐藏,禁用的账号,同时支持账号变化的监控,可以查询在安装Agent后,新增,修改,删除的账号数据;在梳理的内容上,系统可清点每个账号的如下关键信息:账号状态,gid,uid,账号shellHome目录,登录相关信息(账号登录性,最后登录时间,终端,来源IP),sudo权限信息,key登录相关信息,密码相关信息(密码期限,密码修改天数,密码告警,可修改天数)等各类账号信息。

支持多少软件应用的识别?

支持约200余类主流应用的识别,包括中间件、数据库、大数据组件、Web应用等资产,如:NginxApacheJBossMysqlMemcacheRedisHBase等。

能识别哪些数据库?能否将数据库的配置文件也梳理出来?如何实现?

目前版本可识别如下数据库:MySQLRedisOracleMongoDBMemcachePostgreSQLHBaseSQL Server。可以清点数据库的配置文件;实现原理:首先数据库的运行进程特征,识别出系统正在运行的数据库;而后判断数据库的运行主进程,获得数据库的运行路径,并进一步找到数据库的安装路径;最后根据不同数据库的特点,判断出配置文件所在的路径。

风险的评分是怎么定义的?处理完告警的风险后,怎样量化系统的健康程度?

在产品风险发现模块中,定义安全评分来量化系统的健康程度,安全评分总分为100分,分数越高,表示系统越健康。

1)评分范围

安全补丁、漏洞检测、弱密码、应用风险、系统风险、账号风险。

2)评分定义

根据安全评分的值,我们将系统的健康程度量化为A-E 5个级别。评级越低,则认为系统中存在的问题越严重。

安全评级为A,安全评分为90-100

安全评级为B 安全评分为80-89

安全评级为C 安全评分为70-79

安全评级为D 安全评分为60-69

安全评级为E,安全评分为60分以下

3)评分方法

先计算单台主机的安全评分,然后再根据单台主机的安全评分,计算系统的平均安全评分。

系统支持哪些类型的应用的弱口令检查?如何发现弱口令的?弱口令在后台数据库中加密存储吗?支持弱口令字典的自定义吗?

系统支持精准检测十余种应用弱密码,包括linuxwindows系统弱口令以及用户常用应用弱口令,如 MySQLRedisOpenVPN 等。弱口令检测方法是通过密码哈希碰撞方式进行,不对业务服务器造成性能压力及触发不必要的安全设备告警。另外,系统会监控弱口令的变化,识别弱口令后会对没有发生变化的离线弱口令文件哈希入库,如口令未发生新的变更,则不再重复对弱口令进行检测,通过分布式的 Agent 对全量主机的弱口令检测,可极大的提高检测效率。为防止黑客的数据库攻击,弱口令在后台数据库中均作了加密处理。结合用户特征,系统支持用户自定义弱口令字典以及组合弱口令字典,能有效帮助用户预防被黑客定向破译的风险。

怎么保证检测的漏洞的准确性?

漏洞的检测方式为版本比对和POC验证两种方式。

1)版本比对:通过获取应用的包安装版本和进程版本,将其与应用的漏洞版本进行比对。

2POC验证:即对漏洞逐个进行分析,根据漏洞原理编写对应的漏洞验证脚本,逐个漏洞进行检测。

能否对命令操作的记录进行审计?对危险操作能否进行告警?

产品通过bash插件的支持,可以实时监控用户主机上所有的命令操作,从而可以对这些操作进行审计。系统内置有一套恶意操作命令的规则库,通过正则匹配可以发现实时发现用户的恶意操作并进行告警。规则库持续进行更新和优化。同时,系统支持用户自定义可疑操作规则进行检测。

H3C服务器安全监测系统目前兼容的浏览器有哪些?

推荐使用Google Chrome浏览器。

服务器端获取Agent上报数据,采用Agent时间戳还是服务器端时间戳?

资产清点和风险发现功能模块时间戳皆以服务器侧为主,入侵检测和安全日志的时间戳均以agent侧为主。无论是服务器端还是Agent,建议使用使用东八区时间,即CST时间。

服务器端与Agent端通信过程是怎么样的?开启的端口80443/81/82/8001/8002/6677/7788,这些端口的具体作用是什么?

(1)     Agent读取本地配置文件(Linux: /etc/titanagent/conf.conf)中的信息主动连接服务器端,并且采用长连接方式进行TCP通信连接。

(2)     端口开放及作用如下表:

表1 端口开放表

端口

协议

说明

80443

TCP

安全管理控制台,管理员访问(如果考虑安全问题,可以使用ssl,需要提供有效证书)

81

TCP

用户管理后台,管理员访问

82

TCP

系统配置管理后台,管理员访问

8001

TCP

Agent 告警接口,Agent 访问

8002

TCP

Agent 安装、core dump文件上传接口,Agent访问

6677

TCP

Selector接口,Agent 访问

7788

TCP

Agent与服务器端长连接端口,Agent访问

 

服务器安全监测系统所需硬件配置推荐是什么?可支撑多少个Agent节点,目前服务器安全监测系统可支持节点数为50个、100个、500个、1000个,各配置都可使用同一硬件?

服务器安全监测系统所需硬件配置推荐如下:

表2 硬件配置表

名称

CPU(核)

内存(GB)

硬盘(TB)

支撑Agent数量()

服务器安全监测系统服务端

8

32

1

1000

 

目前服务器安全监测系统可支持节点数为50个、100个、500个、1000个,各配置均可使用同一硬件配置。

导出系统配置, 包括哪些东西?可否将一台设备导出的配置导入到另一台,这样操作会有什么影响?

导出系统配置的内容,在产品页面上有详细说明:主机信息 - 包括主机的 agent 信息、业务组分类信息,主机标签,白名单规则 – 用户设置的系统各功能的白名单规则,服务配置 - 系统核心服务配置信息。如果两台使用相同客户的授权,可以将一台设备导出的配置导入另外一台,类似于在同一台进行导出和导入。

更改服务器安全监测系统服务端的ip信息,是否会发生授权变化?具体授权绑定哪些信息?授权中设备信息是不断变化的,设备扩容时是否有影响,该值是通过什么得到的,为什么会一直变化?

更改服务端ip地址会导致授权变化。授权绑定的信息包括(但不限于):ip地址,网卡MAC地址。完整的绑定信息属于授权机密信息,不方便透露。授权信息是RSA加密后的密文,相同的明文和密钥,RSA每次加密后的密文都不同,属于正常现象。

谷歌浏览器下载数据报表过程中,默认是阻止弹窗的会导致下载不成功,该怎么办?

点击“阻止弹窗”为允许即可正常下载,如仍不可下载,则需重启谷歌浏览器。

资产清点中进程清点与实际查看的有差异,为何?

1. 清点原理:Agent清点进程是通过先清点进程PID号,之后再根据pid读取进程的相关信息,信息搜集完成后上报给服务端

2. 时效性问题:进程本身是动态的信息,系统中进程可能随时退出,随时创建。当前时刻创建的进程可能过后就发生了变化。

基于上面两点原因,可能会出现前端看到的进程与现在机器上的进程列表有差异,目前进程清点的用途是为了搜集已经安装的服务及相关的应用信息

一般业务使用的服务程序都会持续性的运行,对这类型的进程不会有影响。

Agent升级之后,为何导致Agent日志不会上报?

Agent升级之后,如果没有升级bash插件,则会出现Agent版本和bash插件版本不一致,此时会导致Agent日志不会上报,需要Agent版本和bash插件版本一致。

后门检测>隔离/删除,目前仅支持手动方式吗?有时为何出现隔离/删除失败?

1)隔离/删除功能,仅作为手动方式提供,需要人员先确认,再处理。因为有些病毒的处理需要重启服务或进程,可能会影响业务。因此也不会做成自动隔离删除

2)病毒隔离/删除时失败,点击可查看到失败原因,若出现此可执行文件正在运行,需人员停止进程后,再手动隔离/删除操作。为避免引起系统不稳定,需要人工手动处理,SSMS上不会强制杀进程。

图3 手工隔离

 

服务器安全监测支持双网卡部署吗?

不支持,目前仅支持单网卡部署,此网卡既做管理又做业务。

 

Agent常见问题及回复

LinuxWindows下,Agent启动、停止、重启的操作方法是什么?

(1)     Linux系统环境下,需进入/titan/agent目录,操作命令如下:

(2)     Agent停止命令:./titanagent  -s

(3)     Agent启动命令:./titanagent –d

(4)     Agent卸载命令:bash install_agent.sh disclean_agent.sh

(5)     Windows系统环境下,打开服务管理器,找到Titan Agent Service for Windows服务,右击该服务,即可对Agent进行启动、停止和重新启动操作,如下图:

图4 执行操作

 

(6)     Windows系统环境下,打开控制面板下选择卸载程序,找到TitanAgentXXX,并右击选择“卸载/更改(U)”,根据引导卸载信息完成卸载。

图5 卸载

 

agent分时执行job的机制是怎么做的?

agent层都部署在内网中,每个agent服务都监听来自服务器层的命令请求,然后通过agent内部的lua脚本进行不同服务的启动,最多启动三个线程,以开启不同的功能。

Agent支持的版本

linux版本

表3 Agent支持Linux版本

系统类型

版本号

内核版本

备注

Oracle

Oracle Linux Server Release 5.7

2.6.32-200.13.1.el5uek

 

Oracle Linux Server Release 5.10

2.6.39-400.209.1.el5uek

 

Oracle Linux Server Release 5.11

2.6.39-400.215.10.el5uek

 

Oracle Linux Server Release 6.0

2.6.32-100.28.5.el6.x86_64

 

Oracle Linux Server Release 6.4

2.6.32-358.el6.x86_64

 

Oracle Linux Server Release 6.5

2.6.32-431.el6.x86_64

 

Oracle Linux Server Release 6.6

3.8.13-44.1.1.el6uek.x86_64

 

Oracle Linux Server Release 6.7

2.6.32-573.el6.x86_64

 

Oracle Linux Server Release 6.8

4.1.12-37.4.1.el6uek.x86_64

 

Oracle Linux Server Release 7.0

3.10.0-123.el7.x86_64

 

Oracle Linux Server Release 7.2

3.8.13-98.7.1.el7uek.x86_64

 

Oracle Linux Server Release 7.3

4.1.12-61.1.18.el7uek.x86_64

 

Red Hat

Red Hat Enterprise Linux 5.1

2.6.18-53.el5

不支持进程提权和反弹shell

Red Hat Enterprise Linux 5.2

2.6.18-92.el5

 

Red Hat Enterprise Linux 5.4

2.6.18-164.el5

 

Red Hat Enterprise Linux 5.5

2.6.18-194.el5

 

Red Hat Enterprise Linux 5.6

2.6.18-238.el5

 

Red Hat Enterprise Linux 5.7

2.6.18-274.el5

 

Red Hat Enterprise Linux 5.8

2.6.18-308.el5

 

Red Hat Enterprise Linux 5.9

2.6.18-348.el5

 

Red Hat Enterprise Linux 5.10

2.6.18-371.el5

 

Red Hat Enterprise Linux 5.11

2.6.18-398.el5

 

Red Hat Enterprise Linux 6.0

2.6.32-71.el6.x86_64

 

Red Hat Enterprise Linux 6.1

2.6.32-131.0.15.el6.x86_64

 

Red Hat Enterprise Linux 6.3

2.6.32-279.el6.x86_64

 

Red Hat Enterprise Linux 6.4

2.6.32-358.el6.x86_64

 

Red Hat Enterprise Linux 6.5

2.6.32-431.el6.x86_64

 

Red Hat Enterprise Linux 6.6

2.6.32-504.el6.x86_64

 

Red Hat Enterprise Linux 6.7

2.6.32-573.el6.x86_64

 

Red Hat Enterprise Linux 6.8

2.6.32-642.el6.x86_64

 

Red Hat Enterprise Linux 7.0

3.10.0-123.el7.x86_64

 

Red Hat Enterprise Linux 7.1

3.10.0-229.el7.x86_64

 

Red Hat Enterprise Linux 7.2

3.10.0-327.el7.x86_64

 

SUSE

SUSE Linux Enterprise Server 11

3.0.76-0.11-default

 

SUSE Linux Enterprise Server 12

 

 

CentOS

CentOS 5.0

2.6.18-8.el5

不支持进程提权和反弹shell

CentOS 5.1

2.6.18-53.el5

不支持进程提权和反弹shell

CentOS 5.4

2.6.18-164.el5

 

CentOS 5.7

2.6.18-274.el5

 

CentOS 5.10

2.6.18-371.el5

 

CentOS 5.11

2.6.18-398.el5

 

CentOS 6.0

2.6.32-71.el6.x86_64

 

CentOS 6.2

2.6.32-220.el6.x86_64

 

CentOS 6.3

2.6.32-279.el6.x86_64

 

CentOS 6.4

2.6.32-358.el6.x86_64

 

CentOS 6.5

2.6.32-431.el6.x86_64

 

CentOS 6.6

2.6.32-504.el6.x86_64

 

CentOS 6.7

2.6.32-573.el6.x86_64

 

CentOS 6.8

2.6.32-642.el6.x86_64

 

CentOS 7.0

3.10.0-123.el7.x86_64

 

CentOS 7.1

3.10.0-229.el7.x86_64

 

CentOS 7.2

3.10.0-327.el7.x86_64

 

Ubuntu

ubuntu 10

 

 

ubuntu 11

 

 

ubuntu 12

 

 

ubuntu 13

 

 

ubuntu 14

 

 

ubuntu 15

 

 

ubuntu 16

 

 

Debian

Debian7

 

已测试:Debian 7.11

Debian8

 

已测试:Debian 8.5, Debian 8.9

Debian9

 

已测试:Debian 9.1

amazon

Amazon Linux AMI release 2017

 

不支持异常登录、暴力破解、Audit相关进程提权、反弹shell、异常文件读写、rediskey

Amazon Linux AMI release 2018

 

 

OpenSuse

10.2

 

 

11

 

 

12

 

 

13.2

 

 

Alibaba

Alibaba Cloud Enterprise Linux Server release 17.01.2

 

不支持软件漏洞、异常登录、暴力破解

 

 

windows版本

表4 Agent支持Windows版本

系统类型

版本号

备注

服务器版本

Windows Server 2008

 

Windows Server 2008 R2

 

Windows Server 2012

 

Windows Server 2012 R2

 

Windows Server 2016

 

桌面版本

Windows Vista

 

Windows 7

 

Windows 8

 

Windows 8.1

 

Windows 10

 

Agent资源占用

Agent对所在主机资源消耗严格控制:

1. CPU在每天固定时间段满业务加载的情况下平均使用率不超过5%

2. 内存不超过500M

3. 硬盘最高存储空间不超过200M

4. agentcpu占用率指的单核cpu的占用率。

5 agent不会因为进程活动越频繁导致消耗更多的资源, Agent有实时监控功能,系统中进程创建行为越频繁,会导致agent占用的cpu越高。但是agent对自身的cpu占用有上限限制(即单核的50%

日常闲时(agent在不执行采集任务)Agent CPU使用率在1%以下,内存40M以下。

以下为常规功能测试时Agent的资源消耗数据:

表5 Agent资源消耗数据

功能

CPU占用

内存占用

耗时

备注

Agent待机

0.30%

<40M

NA

Agent静默状态,仅保持和服务器连接

web配置扫描

5%

<40M

30s

20+ nginx站点配置

进程扫描

23%

<40M

32s

100+进程数量

端口清点

4%

<40M

30s

20+端口

基线检查

17%

<40M

15s

329条基线规则全部扫描

软件漏洞扫描

3%

<40M

20s

扫描1000+软件包安装

业务进程影响

6%

<40M

34s

100+进程数量

web后门扫描

50%

90M

98s

扫描4500+文件,500个目录,扫描出244webshell

注:1、业务进程影响主要指的是安全补丁功能下的业务进程影响

Agent降级和自杀机制

Agent支持自动降级和自杀,以保证不额外消耗系统资源:

loadavg(系统平均负载):系统平均负载指的是运行队列平均长度,这里指的是15分钟内系统平均负载。

系统loadavg一般情况下小于1,表示系统可以正常处理运行队列的消息平稳的运行。

系统loadavg等于1时,表示运行队列已经慢了,系统再满负荷运行,超过这个值,系统就不在最佳状态了,你要动手干预了。

系统loadavg大于1时,表示运行队列已满,并且后面还有很多堆积的未进队列的消息,就表明你的系统有很严重的问题。

Agent发现所在系统负载过高后,自动进行降级,降级后Agent停止所有高消耗资源的操作,保证不影响所在主机的业务运行。

Agent降级机制的作用:在系统整体负载持续偏高的情况下,通过将Agent降级可以释放一部分系统资源(包括CPU和内存),避免影响客户的业务。

 

Agent降级机制触发的条件

(1)     Agent每半分钟检查一次loadavg_5参数值(5分钟内CPU平均负载),以及/proc/statprocs_running参数值;

(2)     如果loadavg_5超过CPU核数的5倍,同时procs_running超过5,定义为系统异常,同时系统异常的计数器加一;

(3)     如果系统异常计数器累计到达5Agent进行降级处理(即每隔半分钟,连续检查5次,系统状况都是异常的情况,也就是说系统负载高的情况持续了至少2.5分钟)。

 

Agent降级机制触发的结果:停止Agent的所有工作只保持基本连接并等待处理。

 

Agent降级后的恢复

(1)     Agent降级之后,固定等待4小时;

(2)     Agent等待4小时之后,每半分钟检查一次系统状况是否达到恢复Agent的条件 (Agent恢复升级的条件:当前系统状况不满足Agent降级的条件)

(3)     如果Agent满足恢复条件,Agent调用shell命令"./titanagent -s"自杀,然后由titan_monitor在两分钟之内重新启动Agent

 

排查方式:当Agent频繁降级时,先根据sys.log中的日志打印确定降级的原因,windows机器在目录C:\Program Files\TitanAgent中,linux机器在目录/var/log/titanagent/sys.log中。

 

Agent降级阈值默认值:

Linux agent:物理内存可用量/页面文件可用量,即memory_available_threshold,默认值为200MB

Windows agent

系统处理器队列长度,即processor_queue_threshold,默认值为15

物理内存可用量/页面文件可用量,即memory_available_threshold,默认值为200MB

磁盘队列长度,即disk_queue_threshold,默认值为10

 

举例

以磁盘队列数值较多导致agent降级举例:

SSMSagent管理中查看windows主机运行级别为降级。

图6 agent管理

 

分析其对应sys.log日志查看降级日志信息。

图7 日志查看

 

“控制面板>管理工具>性能监视器中,查看下图中标注:

图8 性能监控

 

注意:手动界面调整运行级别,agent服务会停止,需手动在客户端中重启agent服务。

 Agent发现自身资源占用过大时,例如CPU、内存和文件句柄等,Agent会自杀重启。

agent出现如下情况时,会进行自杀重启处理:

agent超过10分钟没有系统日志(/var/log/titanagent/sys.log)输出;

sys.log 指的是agent运行过程中的日志,如果这个日志有异常,说明agent系统本身异常。

agent超过10分钟没有网络日志(/var/log/titanagent/net_monitor.log)输出;

net_monitor.log 指的是agent消息机制正常运行的日志,如果这个日志有异常,说明agent系统消息处理模块出现了问题。

agent占用物理内存超过500MB

agent占用cpu超过150%

agentcpu限制,默认是单核的50%,但是有可能在执行业务或者系统异常的情况下,cpu瞬时值可能会很高,当agent检查到cpu超过150%时,认为自身处于异常状态,会做自杀处理,防止影响客户业务。

打开的句柄数超过1024

以上数值,均可在/etc/titanagent/agent_update.sh中自定义,监控频率为每30秒一次

Agent相关进程

Windows

TitanAgent进程启动时,启动TitanMonitor进程。TitanAgent进程的日志位于/var/log/titanagent/sys.logTitanMonitor进程的日志位于/var/log/titanagent/monitor.log

1. 运行过程中,如果TitanAgent进程检测到TitanMonitor进程异常退出,退出TitanAgent

2. 如果TitanMonitor进程检测到TitanAgent进程退出,退出TitanMonitor

3. TitanAgent进程内部线程检测TitanAgent自己的cpu、内存、句柄。如果cpu>单核150%,内存>500M,句柄>1024,退出TitanAgent

4. TitanAgent进程每60s更新/var/log/titanagent/exception.log的修改时间,如果TitanMonitor进程检测到exception.log两分钟未更新,杀死TitanAgent进程。

5. 如果TitanMonitor检测到TitanAgent进程或TitanAgent的子进程 CPU超过150%,杀死TitanAgent进程或TitanAgent的子进程。

6. TitanMonitor进程每隔2min检测一次/var/log/titanagent/sys.log,如果/var/log/titanagent/sys.log持续10min未更新,杀死TitanAgent进程。

7. 计划任务每5min检测TitanAgent进程及TitanAgent子进程,如果内存或句柄超过限制,杀死TitanAgent进程及子进程。

Agent自动拉起

Linux

系统crontab定时任务每隔2分钟执行一次bash脚本检查Agent状态,如果Agent进程不存在,bash脚本会将Agent自动拉起。

Crontab内容如下:

*/2 * * * * /bin/bash /etc/titanagent/agent_monitor.sh >> /var/log/titanagent/edog.o.log 2>> /var/log/titanagent/edog.e.log

Windows

系统定时任务每隔5分钟检查一次Agent状态,如果Agent进程不存在,定时任务会将Agent自动拉起。

Agent Linux任务计划说明

表6 Agen Linux计划任务说明

开始执行时间

执行频率

执行命令

作用

说明

0~59之间的随机数

每个小时一次

/bin/bash /etc/titanagent/agent_update.sh » /var/log/titanagent/check.o.log 2» /var/log/titanagent/check.e.log

向服务器汇报Agent存活状态,同时处理服务器返回的是否停止Agent的命令

由于需要与服务器端交互,为避免服务器发生瞬时高并发请求,每个Agent开始执行这条任务的分钟数由安装脚本随机生成(介于0~59之间)

2分钟

2分钟一次

/bin/bash /etc/titanagent/agent_update_exception.sh » /var/log/titanagent/check.o.log 2» /var/log/titanagent/check.e.log

检查运作中的Agent是否存在异常:/var/log/titanagent/下系统日志、网络日志和异常日志

2分钟

2分钟一次

/bin/bash /etc/titanagent/agent_monitor.sh » /var/log/titanagent/edog.o.log 2» /var/log/titanagent/edog.e.log

检查Agent是否正在运行,如果没有运行就启动Agent

Agent 执行权限

由于很多系统信息收集和系统监控行为都要求root权限,所以Agent必须以root权限进行安装和启动。

表7 Agen 执行权限

功能

系统依赖项

是否依赖root权限

说明

主机资产

/dev/mem

读取SMBIOS系统信息

进程端口

访问其它用户的进程信息

获取监听端口对应的进程信息

系统账号

/home/user/.ssh/authorized_keys,/etc/sudoers

统计账号key使用情况,统计账号是否具有root权限等

软件应用(SSH应用)

/home/user/.ssh

清点ssh key存放路径

启动服务

/etc/cron.d

清点cron计划任务

漏洞检测

风险检测依赖资产清点结果

例如账号风险依赖系统账号清点

弱密码检查

/etc/shadow

弱口令检测需要访问

应用风险

风险检测依赖应用配置文件读取

例如sshd风险检测依赖/etc/ssh/sshd_config文件

系统风险

风险检测依赖系统配置文件读取

例如grub风险检测依赖/boot/grub/grub.conf文件

账号风险

风险检测依赖账号清点结果

 

暴力破解

/var/log/secure

获取登录信息

异常登录

/var/log/secure

获取登录信息

反弹shell

Linux audit

需要root权限使用linux audit功能

本地提权

Linux audit

需要root权限使用linux audit功能

系统后门

直接磁盘访问

检测bootkit需要访问MBR数据

合规基线

各类配置文件,例如/etc/ssh/sshd_config

需要root权限访问各类配置文件

操作审计

/bin/bash替换

替换/bin/bash文件

登录日志

/var/log/secure

获取登录信息

 

Agent 任务执行机制

Agent启动之后,主动连接服务器,然后监听来自服务端的命令请求。在收到服务端下发的命令之后,通过agent内部的lua脚本进行不同服务的启动,最多启动4个线程并发执行lua脚本,以开启不同的功能。

Agent 任务定时机制

服务端给Agent下发的一系列任务都可以通过crontab的形式在产品后台进行配置,目前默认轮询任务触发时间为凌晨6点左右,每间隔24小时执行一次。

有些任务可以作为例行化,有些可以作为触发式,都是通过服务器端将任务推送给agent

Agent网络流量和带宽消耗

Agent日常正常运行的心跳数据、监控自身状态的数据以及资产清点数据传输率在每秒1kb~2kb,传输峰值10kbps左右,平均每天每台agent传输6MB左右,对于业务情况复杂的服务器,大概在20MB左右,传输数据均为安全监测信息,当agent数量超过20台时,会以每20台一批的方式分批传输,不会造成网络拥堵。传输通过Agent端与服务器端的TCP长连接进行AES-256加密后传输。

Agent采集数据

Agent主要采集产品功能所依赖的数据,主要包含如下内容:

表8 Agen 采集数据

功能

采集信息

说明

资产清点

硬件配置(CPU、内存、网卡、磁盘信息)、系统账号、运行进程、监听端口、软件应用、Web站点、Web框架、数据库、软件安装包、启动服务、计划任务、环境变量、内核模块

采集时间为凌晨6点左右,每间隔24小时执行一次。

也可以手动下发采集命令。

Agent收到命令后执行对应的功能模块脚本来获取信息。

风险发现

安全补丁、漏洞检测信息、弱口令、系统/账号/应用风险信息

合规基线

系统和应用配置合规检查信息

用户自定义配置执行时间

入侵检测

暴力破解、异常登录、入侵行为信息(反弹shell/本地提权)、系统后门、蜜罐连接信息、操作审计信息

通过inotify监控文件来获取登录信息。

通过NETLINK机制获取系统上进程创建信息。

通过产品自己的bash,可以审计用户操作。

 

Agent与服务端通信安全性

Agent与服务端使用加密方式进行安全通信:第一阶段,Agent与服务端利用RSA非对称加密方式进行登录认证(密钥长度2048位),同时协商后续数据通信使用的密钥;第二阶段,Agent与服务端利用第一阶段协商得到的密钥进行AES-256对称加密通信。

每次Agent与服务端的会话,都会使用通过协商而得到的不同的密钥。

Agent客户端的每个不同企业用户(账号)都对应不同的私钥。

Agent本身的安全性

Agent反调试:Agent的两个进程titanagenttitan_monitor利用加壳技术防止通过GDB工具进行调试

Agent抗逆向:Agent的两个进程文件(titanagenttitan_monitor)利用加壳技术,防止被反汇编工具进行解析,同时无法被二进制解析工具strings, file, nm, readelf逆向而导致部分源代码暴露。

Agent共享库防篡改:Agent进程所加载的共享库使用了数字签名进行保护,如果被修改,Agent会拒绝加载共享库。

Agent升级机制:Agent的程序升级包使用数字签名进行保护,防止升级服务器DNS被劫持,或者服务端上的Agent升级程序包被恶意修改。

Agent安装之后会产生的目录

安装Agent之后会产生三个主目录

Agent主程序目录/titan/agent/Agent配置文件目录/etc/titanagent/Agent 日志文件目录/var/log/titanagent/

图9 目录-1

 

Agent主目录/titan/agent下文件含义

图10 目录-2

 

titanagent:Agent主程序

agent_update.sh: 向服务器汇报Agent存活状态,同时处理服务器返回的是否停止Agent的命令

agent_monitor .sh: 检查Agent是否正在运行,如果没有运行就启动Agent

titan_monitor:Agent监控程序,(监控运行状态,资源限制)

install_agent.sh:安装脚本

plugin:插件目录

data lua脚本等数据目录,script.db存于此处

Linux环境下卸载Agent

操作命令执行卸载

本方式在客户端Agent在线及离线均生效。

使用账号密码,登录已安装Agent的主机,以root权限依次执行以下命令即可卸载Agent

/titan/agent/titanagent -s

bash /titan/agent/install_agent.sh disclean

图11 执行命令截图

 

Windows环境下卸载Agent

登录部署Agent的系统,进入C:\Program Files\TitanAgent(默认安装路径,根据实际安装路径进行卸载)目录下,使用管理员权限运行uninst.exe程序,卸载Agent

图12 卸载Agent-1

 

图13 卸载Agent-2

 

图14 卸载Agent-3

 

Agent程序采用什么语言编写?需要对操作系统的内核、驱动进行什么操作?会否在运行中需要加载动态模块吗?

产品Agent采用纯C语言编写,保证了资源消耗控制的基础。通过持续对产品的优化,Agent完全绿色化,不需要对操作系统的内核、驱动等关键模块进行操作。在运行过程中,Agent采用脚本化的方式完成相关的数据采集、数据上报互动等任务,无需加载DLLSO等动态库。

Agent运行的安全性如何保证?服务端和Agent之间采用什么加密和认证方式?是否服务端可以对Agent下发执行任意命令?

为保护程序完整性和安全性,Agent程序经过了加壳和代码混淆处理,确保黑客无法通过反向工程破解Agent,进而实现恶意操作。产品已通过了国家软件测评中心的安全性检测。在服务端和Agent之间的通讯,采用了RSA密钥交换+AES会话随机密钥的方式进行通讯,确保每次通讯连接是真实可信的。Agent可执行的任务在程序设计时就进行的强制限定,不得执行shutdownrm等敏感命令,这个限定与服务端无关,即时服务端被恶意控制下发命令,也不可以执行。另外,在平台服务端对于下发的脚本有签名验证机制,当请求下发的脚本没有获得签名,平台将拒绝下发的指令。

 

规则更新常见问题及回复

规则更新时某规则更新失败,重新更新规则后仍报错。

当更新规则包titan-rule-h3c-v3.4.0-20211214113727-SecPathSSMS.ziptitan-rule-h3c-v3.4.0-20220209152159-SSMS.zip中偶发性出现“恶意软件检测黑名单”更新失败,重新更新也失败问题时。

处理方式:

首先确认更新失败处规则的规则版本:

1、为v3.4.0-20200810121103/v3.4.0-20210120144833时,请先重新更新规则titan-rule-h3c-v3.4.0-20210624163733-SecPathSSMS.zip,再更新增量规则包titan-rule-h3c-v3.4.0-20220210145347-SSMS.zip

注意:更新规则titan-rule-h3c-v3.4.0-20210624163733-SecPathSSMS.zip时有部分规则失败,查看右下角控制台失败原因为最低版本不能下降时,可不用处理,直接升级增量规则包titan-rule-h3c-v3.4.0-20220210145347-SSMS.zip即可。

图15 设置示意图

 

2v3.4.0-20210624163733/ v3.4.0-20211214113727/ v3.4.0-20220209152159时,直接更新增量规则包titan-rule-h3c-v3.4.0-20220210145347-SSMS.zip

注:若其它规则含报错,可用相同方式处理。

规则更新时失败报错上次规则的结束时间必须大于或等于本次规则的起始时间

图16 设置示意图

 

该问题由于增量规则包未按照限制要求错误更新导致。如增量规则包titan-rule-h3c-v3.4.0-20220210145347-SSMS在非v3.4.0-20210624163733 / v3.4.0-20211214113727 / v3.4.0-20220209152159规则版本上更新。

处理方式:请先重新更新规则titan-rule-h3c-v3.4.0-20210624163733-SecPathSSMS.zip,再更新增量规则包titan-rule-h3c-v3.4.0-20220210145347-SSMS.zip

注:其它增量规则包处理方式和该方式类型,请先更新最新的全量规则包,在全量规则包基础上再更新对应的增量规则包。

 

新华三官网
联系我们