diff --git "a/Test_Result/openEuler_24.03_LTS_SP3/ openEuler-24.03-LTS-SP3 HAOC\347\211\271\346\200\247\346\265\213\350\257\225\346\212\245\345\221\212.md" "b/Test_Result/openEuler_24.03_LTS_SP3/ openEuler-24.03-LTS-SP3 HAOC\347\211\271\346\200\247\346\265\213\350\257\225\346\212\245\345\221\212.md" new file mode 100644 index 0000000000000000000000000000000000000000..c0a702403408124189a1145adadfb35e27caa77c --- /dev/null +++ "b/Test_Result/openEuler_24.03_LTS_SP3/ openEuler-24.03-LTS-SP3 HAOC\347\211\271\346\200\247\346\265\213\350\257\225\346\212\245\345\221\212.md" @@ -0,0 +1,123 @@ +![avatar](../../images/openEuler.png) + + +版权所有 © 2025 openEuler社区 + 您对“本文档”的复制、使用、修改及分发受知识共享(Creative Commons)署名—相同方式共享4.0国际公共许可协议(以下简称“CC BY-SA 4.0”)的约束。为了方便用户理解,您可以通过访问https://creativecommons.org/licenses/by-sa/4.0/ 了解CC BY-SA 4.0的概要 (但不是替代)。CC BY-SA 4.0的完整协议内容您可以访问如下网址获取:https://creativecommons.org/licenses/by-sa/4.0/legalcode。 + + +修订记录 + +| 日期 | 修订 版本 | 修改描述 | 作者 | +| ---------- | ----------- | --------------------- | ------ | +| 2025/12/12 | v1.0 | HAOC 特性测试报告完成 | @amjac | + +关键词: HAOC + +摘要:针对 OLK-6.6 提交内核安全增强补丁,基于 x86/ARM 处理器提供的硬件特性,在内核提供隔离执行环境,并对页表和其他敏感数据结构进行保护。 + + +缩略语清单: + +| 缩略语 | 英文全名 | 中文解释 | +| ------ | ----------------------------------------- | ---------------------- | +| HAOC | Hardware-assisted OS compartmentalization | 硬件辅助的操作系统隔离 | + +# 1 特性概述 + +设计复式架构内核,为 Linux 内核提供进一步的隔离能力,从而阻止攻击者实施横向移动和权限提升。当前特性提供的三项保护机制包括: + +- IEE:构建中枢核心隔离环境,利用 ARM 的 PAN 机制实现了高效的内存读写隔离执行环境,利用默认的 KPTI 阻止用户代码访问中枢核心; +- PTP:基于 IEE 实现,提供页表类结构保护; +- CREDP:基于 IEE 实现,提供关键数据结构的保护。 + + + +# 2 特性测试信息 + +本节描述被测对象的版本信息和测试的时间及测试轮次,包括依赖的硬件。 + +| 版本名称 | 测试起始时间 | 测试结束时间 | +| ----------------------- | ------------ | ------------ | +| openEuler-24.03-LTS-SP3 | 2025/12/10 | 2025/12/12 | + +描述特性测试的硬件环境信息 + +| 硬件型号 | 硬件配置信息 | 备注 | +| ------------- | ------------------------------------------------------------ | ---- | +| 鲲鹏 920 主机 | 板卡:鲲鹏 D920L11K-2271-12Core-2.6GHz 内存:32GB*2 硬盘:NVMe SSD 2TB | | +| X86服务器 | CPU:Intel(R)Xeon(R)Gold 6348 CPU @2.60GHz *2 内存:512GB | | + +# 3 测试结论概述 + +## 3.1 测试整体结论 + +基于 openEuler-24.03-LTS 版本的 HAOC 特性操作系统内核,针对其功能,特性和性能进行共计 5 项测试,整体质量良好。 + +| 测试活动 | 测试子项 | 活动评价 | +| -------- | --------------------------------------------------- | -------- | +| 功能测试 | mugen AT 测试套 (共计 270 个测试用例) | 测试通过 | +| 功能测试 | mugen smoke-basic-os 测试套 (共计 280 个测试用例) | 测试通过 | +| 功能测试 | mugen LTP 测试套(共计 2190 个测试用例) | 测试通过 | +| 特性测试 | 注入 CVE 进行安全测试 | 测试通过 | +| 性能测试 | Lmbench、UNIX Bench、Netperf 和 Stream | 测试通过 | + + + +# 4 详细测试结论 + +## 4.1 功能测试 +共计执行 Mugen AT, smoke-basic-os, LTP 测试用例,整体质量良好。其中 : + +- AT 共执行测试用例 204 个,通过 184 个,失败 0 个,跳过 20 个。 +- smoke-basic-os 共执行测试用例 280 个,成功 277 个,失败 0 个,跳过 3 个。 +- LTP 共执行测试用例 2190 个,成功 1969 个,失败 0 个,跳过 221 个。 + +## 4.2 性能测试 + +执行 Lmbench、UNIX Bench、Netperf 和 Stream 测试集。在每个基准测试工具集上,计算所有测试用例在安全增强前后的性能比值。为提高测试结果的可靠性,每个基准测试工具集重复测试 10 次,将每个测试用例的 10 次结果取平均值,作为该测试用例的性能开销。以UnixBench为例,第 i 个测试用例的性能开销为: +$$ +R_U^i=\frac{1}{m}\sum\limits_{j=1}^m \frac{Score_{U-Initial}^{ij}} {Score_{U-Enhance}^{ij}} +$$ +单个基准测试工具集的性能开销计算:将所有测试用例的性能开销求几何平均,得到该测试工具集的最终性能开销。Haoc在该工具集上的性能开销为: +$$ +\bar{E} = (\prod\limits_{i=1}^{n} R_U^i)^{\frac{1}{n}} - 1 +$$ +结果如下: + +- Unixbench:10.23% +- Lmbench:9.95% +- Netperf: 5.44% +- Stream: 9.94% + +## 4.3 新增特性测试 + +采用注入 CVE 的方式检测当前特性提供防御机制的有效性。策略为针对 kernel 源代码进行漏洞补丁反转,并利用漏洞进行特权测试。本次共进行 CVE 测试 14 个。 + +| 序号 | CVE 编号 | IEE | PTP | CREDP | 架构类型 | +| ---- | -------------- | ---- | ---- | ----- | --------- | +| 1 | CVE-2021-31400 | ☐ | ☐ | ☑ | arm64/x86 | +| 2 | CVE-2021-3490 | ☐ | ☐ | ☑ | arm64/x86 | +| 3 | CVE-2022-23222 | ☐ | ☐ | ☑ | arm64/x86 | +| 4 | CVE-2022-34918 | ☑ | ☑ | ☐ | arm64/x86 | +| 5 | CVE-2022-0185 | ☐ | ☐ | ☑ | x86 | +| 6 | CVE-2022-0995 | ☐ | ☐ | ☑ | x86 | +| 7 | CVE-2021-34866 | ☐ | ☐ | ☑ | arm64/x86 | +| 8 | CVE-2021-22555 | ☐ | ☐ | ☑ | x86 | +| 9 | CVE-2021-4154 | ☐ | ☐ | ☑ | arm64/x86 | +| 10 | CVE-2023-2588 | ☐ | ☐ | ☑ | arm64/x86 | +| 11 | CVE-2020-29661 | ☑ | ☑ | ☐ | arm64/x86 | +| 12 | CVE-2023-0386 | ☐ | ☐ | ☑ | arm64/x86 | +| 13 | CVE-2021-41073 | ☐ | ☐ | ☑ | arm64/x86 | +| 14 | CVE-2020-27194 | ☐ | ☐ | ☑ | arm64/x86 | + +综上,特性质量评估如下: + +| 特性名称 | 特性质量评估 | 备注 | +| ------------ | :------------------------: | ---- | +| CONFIG_IEE | | | +| CONFIG_PTP | | | +| CONFIG_CREDP | | | + +: 表示特性不稳定,风险高 +: 表示特性基本可用,遗留少量问题 +: 表示特性质量良好 \ No newline at end of file