跳转至

msModelSlim安全声明

系统安全加固

建议用户在系统中配置开启ASLR(级别2 ),又称全随机地址空间布局随机化,可参考以下方式进行配置:

echo 2 > /proc/sys/kernel/randomize_va_space

运行用户建议

  1. 用户须自行保证使用最小权限原则(如禁止other用户可写,常见如禁止666、777)。

  2. 安装或使用工具前请确保执行用户的umask值大于等于0027,否则会导致源码编译失败、读取配置文件失败、生成的目录和文件权限过大等问题。

  3. 本代码仓中的工具均设计为低权限安装使用,出于安全性及权限最小化角度考虑,所有工具均不应使用root等高权限账户使用,建议使用普通用户权限安装执行。

  4. 若工具使用依赖CANN,为保证安全,应使用同一低权限用户默认安装的CANN包,执行source命令后不要随意修改set_env.sh中涉及的环境变量。

文件权限控制

  1. 用户需保证目录权限为750。

  2. 用户向工具提供输入文件作为命令输入时,建议提供的文件属主与工具进程属主一致,且文件权限他人不可修改(包括group、others)。工具落盘文件权限默认他人不可写,用户可根据需要自行对生成后的相关文件进行权限控制。

  3. 用户安装和使用过程需要做好权限控制,建议参考文件权限参考进行设置。

文件权限参考

类型 Linux权限参考最大值
用户主目录 750(rwxr-x---)
程序文件(含脚本文件、库文件等) 550(r-xr-x---)
程序文件目录 550(r-xr-x---)
配置文件 640(rw-r-----)
配置文件目录 750(rwxr-x---)
日志文件(记录完毕或者已经归档) 440(r--r-----)
日志文件(正在记录) 640(rw-r-----)
日志文件目录 750(rwxr-x---)
Debug文件 640(rw-r-----)
Debug文件目录 750(rwxr-x---)
临时文件目录 750(rwxr-x---)
维护升级文件目录 770(rwxrwx---)
业务数据文件 640(rw-r-----)
业务数据文件目录 750(rwxr-x---)
密钥组件、私钥、证书、密文文件目录 700(rwx------)
密钥组件、私钥、证书、加密密文文件 600(rw-------)
加解密接口、加解密脚本 500(r-x------)

漏洞安全声明

MindStudio 社区非常重视社区版本的安全性,专门设置了漏洞管理专员负责处理漏洞相关的事务,同时为了构建更安全的AI全流程工具链,我们也欢迎您一起参与。

漏洞处理流程

对于每一个安全漏洞,MindStudio 社区会安排人员进行跟踪和处理,漏洞处理的端到端流程如下图所示。

漏洞处理流程

下面将重点解释漏洞上报、漏洞评估、漏洞披露的流程。

漏洞上报

您可以通过提交issue的方式联系 MindStudio 社区团队,我们将会第一时间安排安全漏洞专项人员向您联系。 注意,为了确保安全性,请不要在issue中描述涉及安全隐私的具体信息。

上报响应

  1. MindStudio 社区会在3个工作日内确认、分析、上报安全漏洞问题,同时启动安全处理流程。
  2. MindStudio 安全团队在确认安全漏洞问题后,会对问题进行分发和跟进。
  3. 安全漏洞问题在分类、确定、修复和发布的过程中,我们会及时更新报告。

漏洞评估

业界普遍使用 CVSS 标准评估漏洞的严重性,MindStudio 在使用 CVSS v3.1 进行漏洞评估时,需要设定漏洞攻击场景,基于在该攻击场景下的实际影响进行评估。漏洞严重等级评估是指针对漏洞利用难易程度,以及利用后对机密性、完整性、可用性的影响进行评估,并生成一个评分值。

漏洞评估标准

MindStudio 通过以下向量评估一个漏洞的严重等级:

  • 攻击向量(AV):表示攻击的“远程性”以及如何利用此漏洞。
  • 攻击复杂性(AC):讲述攻击执行的难度以及成功进行攻击需要哪些因素。
  • 用户交互(UI):确定攻击是否需要用户参与。
  • 所需的权限(PR):记录成功进行攻击所需的用户身份验证级别。
  • 范围(S):确定攻击者是否可以影响具有不同权限级别的组件。
  • 机密性(C):衡量信息泄露给非授权方后导致的影响程度。
  • 完整性(I):衡量信息被篡改后导致的影响程度。
  • 可用性(A):衡量用户在需要访问数据或服务时受影响的程度。

评估原则

  • 评估漏洞的严重等级,不是评估风险。
  • 评估时必须基于攻击场景,且保证在该场景下,攻击者成功攻击后能对系统造成机密性、完整性、可用性影响。
  • 当安全漏洞有多个攻击场景时,应以造成最大的影响,即 CVSS 评分最高的攻击场景为依据。
  • 被嵌入调用的库存在漏洞,要根据该库在产品中的使用方式,确定漏洞的攻击场景后进行评估。
  • 安全缺陷不能被触发或不影响 CIA(机密性、完整性、可用性),CVSS 评分为 0 分。

评估步骤

评估漏洞严重等级时,可根据下述步骤进行操作:

  1. 设定可能的攻击场景,基于攻击场景评分。
  2. 确定漏洞组件(Vulnerable Component)和受影响组件(Impact Component)。
  3. 选择基础指标的值。

  4. 可利用指标(攻击向量、攻击复杂度、所需权限、用户交互、范围)根据漏洞组件选择指标值。

  5. 影响指标(机密性、完整性、可用性)要么反映对漏洞组件的影响,要么反映对受影响组件影响,以结果最严重的为准。

严重等级划分

严重等级(Severity Rating) CVSS评分(Score) 漏洞修复时长
致命(Critical) 9.0~10.0 7天
高(High) 7.0~8.9 14天
中(Medium) 4.0~6.9 30天
低(Low) 0.1~3.9 30天

漏洞披露

安全漏洞修复后 MindStudio 社区会发布安全公告 (SA)以及安全说明(SN) ,安全公告内容包括该漏洞的技术细节、类型、上报人、CVE ID 以及受到该漏洞影响的版本和修复版本等信息。 为了保护 MindStudio 用户的安全,在进行调查、修复和发布安全公告之前, MindStudio 社区不会公开披露、讨论或确认 MindStudio 产品的安全问题。

附录

MindStudio 安全公告(SA)

目前在维护版本,无安全漏洞

MindStudio 安全说明(SN)

暂无涉及第三方的开源组件部分漏洞说明

数据安全声明

工具使用过程中需要加载和保存数据,可能存在数据风险。

构建安全声明

用户可根据需要自行对源代码目录内的文件进行权限管控降低安全风险,用户在构建过程中可根据需要修改构建脚本以避免相关安全风险,并注意构建结果的安全。

运行安全声明

工具在运行异常时会退出进程并打印报错信息,属于正常现象。建议用户根据报错提示定位具体错误原因,包括查看日志文件,采集解析过程中生成的结果文件等方式。

公网地址声明

参考公网URL说明

公开接口声明

msModelSlim项目采用C++和Python联合开发,提供的对外接口均已在资料中公开。

python等脚本语言,源码发布,建议直接使用资料说明的公开接口,不建议直接调用未明确公开的接口源码。

安全函数使用说明

不强制禁用不安全函数,但推荐使用缓冲区长度作为参数明确传入的_s安全版本,如memset_s、memcpy_s等

通信矩阵

序号 代码仓 功能 源设备 源IP 源端口 目的设备 目的IP 目的端口
(侦听)
协议 端口说明 端口配置 侦听端口是否可更改 认证方式 加密方式 所属平面 版本 特殊场景 备注
1 msModelSlim 多卡量化卡间通信 单机多卡 127.0.0.1 单机多卡 127.0.0.1 动态搜索,默认29500-29599,范围1024-65535 TCP 动态查找可用端口用于卡间通信。默认从29500开始查找,最多尝试100个端口。可通过环境变量MASTER_PORT指定端口(端口需在1024-65535范围内) 不涉及 可修改(通过环境变量MASTER_PORT) 业务面 master
2 msModelSlim 多进程上下文共享 单机本地 不涉及(Unix Domain Socket) 单机本地 不涉及(Unix Domain Socket) 不涉及(使用文件系统Socket路径) Unix Domain Socket 通过Unix Domain Socket进行多进程间上下文数据共享,Socket文件默认创建在系统临时目录下(/tmp/peercred_manager_<pid>.sock),文件权限为0600。基于SO_PEERCRED进行内核级UID身份认证,仅允许同UID进程连接 不涉及 Socket文件路径可通过代码指定 SO_PEERCRED内核级UID认证 不涉及(本地通信) 业务面 master 仅Linux平台