CATLASS仓库 安全声明
【免费下载链接】catlass本项目是CANN的算子模板库,提供NPU上高性能矩阵乘及其相关融合类算子模板样例。项目地址: https://gitcode.com/cann/catlass
系统安全加固
用户可在运行系统配置时开启 ASLR(级别2)以提高系统安全性,确保系统随机化开启。
可参考以下方式进行配置:echo 2 > /proc/sys/kernel/randomize_va_space
运行用户建议
- 基于安全性角度考虑,不建议使用root等管理员类型账户执行任何命令,遵循权限最小化原则。
文件权限控制
- 建议用户在主机(包括宿主机)及容器中设置运行系统umask值为0027及以上,保障新增文件夹默认最高权限为750,新增文件默认最高权限为640。
- 建议用户对个人隐私数据、商业资产、源文件和算子开发过程中保存的各类文件等敏感内容做好权限控制等安全措施。例如涉及CATLASS仓库的安装目录权限管控、算子输入公共数据文件权限管控,设定的权限建议参考附录A 文件(夹)各场景权限管控推荐最大值进行设置。
- 算子运行时可能会缓存算子编译文件,存储在运行目录下的
kernel_meta_*文件夹内,加快后续算子的调用速度,用户可根据需要自行对生成后的相关文件进行权限控制。 - 用户安装和使用过程需要做好权限控制,建议参考附录A 文件(夹)各场景权限管控推荐最大值文件权限参考进行设置。
构建安全声明
- 在编译运行模板库示例时,过程中会生成一些中间文件,建议您在编译完成后,对中间文件做好权限控制,以保证文件安全。
运行安全声明
- 建议用户结合运行环境资源状况编写对应算子调用脚本。若算子调用脚本与资源状况不匹配,如生成输入数据、标杆计算结果使用空间超出内存容量限制、脚本在本地保存数据超过磁盘空间大小等情况,可能引发错误并导致进程意外退出。
- 算子在运行异常时会退出进程并打印报错信息,建议根据报错提示定位具体错误原因,包括启用算子同步执行功能、查看 CANN 日志文件等方式。
- 算子通过PyTorch方式调用时会使用PyTorch,可能会因为版本不匹配导致运行错误,具体可参考PyTorch安全声明。
样例安全声明
- CATLASS样例旨在提供快速上手、开发和调试 CATLASS 算子的最小化实现,其核心目标是使用最精简的代码展示 CATLASS 核心功能,而非提供生产级的安全保障。与成熟的推理框架相比,此样例中的安全功能(如输入校验、边界检查)相对有限。
- CATLASS不推荐用户直接将样例作为业务代码,也不保证此种做法的安全性。若用户将该部分样例代码直接应用在自身的真实业务场景之中,且发生了相关安全问题,其责任由使用者自行承担。
接口安全声明
- CATLASS作为NPU算子模板库,其核心职责是提供高性能、功能正确的算子模板实现(位于include)。为追求NPU极致性能,库实现包含(包括但不限于)以下设计取舍:
- 未进行缓冲区(如UB/L1/L0)访问的地址校验
- 未进行大类型转小类型的表示范围校验
- 未进行除法运算(如Scalar
/或VectorDiv)的除零校验 - 未进行外部传入循环条件有效性的校验
- 未进行防止算术运算结果溢出校验
- 此设计基于性能优先原则:NPU校验依赖标量单元,额外安全指令会导致性能劣化,故主动省略运行时安全校验。
- CATLASS仅保证算子模板在正确输入下的功能正确性,任何因无效输入(如除数为零/溢出值、非法内存访问或边界条件未满足)引发的安全风险,其责任由调用方承担。
公网地址声明
- CATLASS仓库代码目前暂不涉及公网地址。
附录
A-文件(夹)各场景权限管控推荐最大值
| 类型 | 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------) |
【免费下载链接】catlass本项目是CANN的算子模板库,提供NPU上高性能矩阵乘及其相关融合类算子模板样例。项目地址: https://gitcode.com/cann/catlass
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考