等保测评-RabbitMQ中间件

发布于:2025-08-10 ⋅ 阅读:(16) ⋅ 点赞:(0)

RabbitMQ-docker部署

查看版本:rabbitmqctl version、rabbitmqctl status | grep version

配置文件:一般为rabbitmq.conf

端口号:一般为15672

一、身份鉴别

a)应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换;

此项建立在RabbitMQ中间件是否开启WEB控制台:

若未开启:则不适用,若开启:如图所示,则

1、身份认证:通过账户名+密码的方式对登录用户进行身份鉴别。

image.png

2、密码复杂度策略:默认自身无内置的密码复杂度配置选项,需通过外部认证机制或自定义插件进行设置。如 rabbitmq-auth-backend-http 插件 + 外部 HTTP 服务。

3、密码有效期:默认自身无内置的密码有效期策略配置,考察是否手动定期更换密码。

4、空口令或弱口令:是否存在空口令账户或存在简单密码,如admin、123、123456等。

b)应具有登录失败处理功能,应配置并启用结束会话、限制非法登录次数和当登录连接超时自动退出等相关措施;

1、登录失败:默认自身无内置的登录失败处理机制,需结合rabbitmq-auth-backend-http 插件 + 外部 HTTP 服务进行实现。下图尝试10次错误登录后,弹出以下错误,再次输入正确密码,亦可成功登录。

image.png

image.png

进入控制台后,即可查看相关配置信息,如版本、账户信息等。

2、登录超时:默认自身无内置的登录连接超时机制。

c)当进行远程管理时,应采取必要措施防止鉴别信息在网络传输过程中被窃听;

RabbitMQ中间件控制台默认采用HTTP网络通信协议进行数据传输。

image.png

这里尝试抓了下包,发现仅是对账户名和密码进行了Base64编码,并未采用其他加密算法进行传输。

image.png

若想保证鉴别数据在传输过程中的保密性,则需SSL/TLS协议。

d)应采用口令、密码技术、生物技术等两种或两种以上组合的鉴别技术对用户进行身份鉴别,且其中一种鉴别技术至少应使用密码技术来实现。

RabbitMQ中间件控制台默认是通过账户名+密码进行身份认证的,不涉及双因子登录,在此不符合。

二、访问控制

a)应对登录的用户分配账户和权限;

进入控制台后,则在此可查看所有可登录账户的信息,以及权限划分。

image.png

b)应重命名或删除默认账户,修改默认账户的默认口令;

RabbitMQ存在默认的内置账户,即为guest。检查是否禁用该账户或修改其默认口令。

c)应及时删除或停用多余的、过期的账户,避免共享账户的存在;

查看是否存在多余或过期的账户信息,或是否存在多个人共用一个账户的情况。

d)应授予管理用户所需的最小权限,实现管理用户的权限分离;

进入控制台后,可通过功能模块Admin进行查看,如下图中,已表明admin为超级管理员账户,拥有最高管理权限。

image.png

在此也可增加、修改、删除账户信息。

e)应由授权主体配置访问控制策略,访问控制策略规定主体对客体的访问规则;

目前搭建的环境中,访问控制策略均由admin账户负责配置管理,且可制定相关策略限制各用户的操作访问权限。

f)访问控制的粒度应达到主体为用户级或进程级,客体为文件、数据库表级;

RabbitMQ该中间件已达访问控制粒度要求:主体为账户级(用户级),客体为功能模块级。

g)应对重要主体和客体设置安全标记,并控制主体对有安全标记信息资源的访问。

此项针对于RabbitMQ中间件,默认无法实现,给不符合即可。

三、安全审计

a)应启用安全审计功能,审计覆盖到每个用户,对重要的用户行为和重要安全事件进行审计;

可查看RabbitMQ中间件的安装目录下是否存在日志文件信息,或通过查看其配置文件是否有设置日志记录策略。

image.png

在此日志文件为10-defaults.conf,但一般为rabbitmq.conf,可能与安装部署的时候有关。从图上可知已开启log.console = true,即将RabbitMQ中间件的运行日志信息打印至控制台,若开启此项,则可通过docker logs 容器名查看日志信息。如:

image.png

b)审计记录应包括事件的日期和时间、用户、事件类型、事件是否成功及其他与审计相关的信息;

此项可根据RabbitMQ配置文件中logfile参数寻找日志文件存放路径,进而查看日志信息;若未配置日志存放信息,亦可在容器外使用docker logs -f RabbitMQ容器ID实时查看运行日志信息。

c)应对审计记录进行保护,定期备份,避免受到未预期的删除、修改或覆盖等;

此项主要考察两点:1、是否有对RabbitMQ产生的日志信息进行保护,如定期备份、日志文件是否有作权限控制。2、RabbitMQ的日志信息是否可追溯至前六个月的信息。

d)应对审计进程进行保护,防止未经授权的中断。

此项针对RabbitMQ中间件而言,默认是跟随中间件主进程的,非授权人员不得进行中断。

四、入侵防范

a)应遵循最小安装的原则,仅安装需要的组件和应用程序;

根据GB28448测评范围描述,RabbitMQ中间件此项不适用。

b)应关闭不需要的系统服务、默认共享和高危端口;

根据GB28448测评范围描述,RabbitMQ中间件此项不适用。

c)应通过设定终端接入方式或网络地址范围对通过网络进行管理的管理终端进行限制;

若RabbitMQ开启控制台,查看外界终端用户是否可接入访问,若未开启控制台,则一般从所在服务器的配置进行查看,如/etc/ssh/sshd_config或其他配置文件。

d)应提供数据有效性检验功能,保证通过人机接口输入或通过通信接口输入的内容符合系统设定要求;

根据GB28448测评范围描述,RabbitMQ中间件此项不适用。

e)应能发现可能存在的已知漏洞,并在经过充分测试评估后,及时修补漏洞;

此项需结合漏洞扫描工具,核查是否有高风险漏洞。

f)应能够检测到对重要节点进行入侵的行为,并在发生严重入侵事件时提供报警。

根据GB28448测评范围描述,RabbitMQ中间件此项不适用。

五、可信验证

a)可基于可信根对计算设备的系统引导程序、系统程序、重要配置参数和应用程序等进行可信验证,并在应用程序的关键执行环节进行动态可信验证,在检测到其可信性受到破坏后进行报警,并将验证结果形成审计记录送至安全管理中心。

根据GB28448测评范围描述,RabbitMQ中间件此项不适用。

六、数据完整性

a)应采用校验技术或密码技术保证重要数据在传输过程中的完整性,包括但不限于鉴别数据、重要业务数据、重要审计数据、重要配置数据、重要视频数据和重要个人信息等;

针对RabbitMQ中间件,重要数据一般为:鉴别数据、审计数据、配置数据。若开启控制台,则一般为HTTP网络通信协议,未进行数据加密传输,不能保证数据在传输过程中的完整性。若未开启控制台,则数据多为本地传输管理,此项可判定为不适用。

b)应采用校验技术或密码技术保证重要数据在存储过程中的完整性,包括但不限于鉴别数据、重要业务数据、重要审计数据、重要配置数据、重要视频数据和重要个人信息等。

针对RabbitMQ中间件,重要数据一般为:鉴别数据、审计数据、配置数据。若开启控制台,则鉴别数据一般采用SHA-256加密算法,可保证鉴别数据在存储过程中的完整性。而审计数据和配置数据一般未进行加密存储。

七、数据保密性

a)应采用密码技术保证重要数据在传输过程中的保密性,包括但不限于鉴别数据、重要业务数据和重要个人信息等;

针对RabbitMQ中间件,重要数据一般为:鉴别数据。若开启控制台,则一般为HTTP网络通信协议,未进行数据加密传输,不能保证鉴别数据在传输过程中的完整性。若未开启控制台,则数据多为本地传输管理,此项可判定为不适用。

b)应采用密码技术保证重要数据在存储过程中的保密性,包括但不限于鉴别数据、重要业务数据和重要个人信息等。

针对RabbitMQ中间件,重要数据一般为:鉴别数据。则鉴别数据一般采用SHA-256加密算法,可保证鉴别数据在存储过程中的保密性。

八、数据备份恢复

a)应提供重要数据的本地数据备份与恢复功能;

1、询问业主单位是否有对RabbitMQ重要数据进行备份,如配置数据rabbitmq.conf。2、是否有对备份的数据进行恢复性测试。

b)应提供异地实时备份功能,利用通信网络将重要数据实时备份至备份场地;

询问业主单位是否有进行异地实时备份。

c)应提供重要数据处理系统的热冗余,保证系统的高可用性。

询问业主,结合实际测评资产判定。

九、剩余信息保护

a)应保证鉴别信息所在的存储空间被释放或重新分配前得到完全清除;

若开启控制台,则此项一般为符合,若未开启,则此项为不适用。

b)应保证存有敏感数据的存储空间被释放或重新分配前得到完全清除。

若开启控制台,则此项一般为符合,若未开启,则此项为不适用。


网站公告

今日签到

点亮在社区的每一天
去签到