Safety Plugin
在运行时,CRC 验证内核函数作为任务执行,该任务不断将内存区域传递给 CRC 算法,该算法生成一个校验和,该校验和与编译后插入二进制文件的校验和进行比较。 如果校验和不匹配,则通过回调函数通知应用程序失败。
SAFEXchange
通过black channel通信总线在多个处理器和内核之间安全地共享安全关键数据。 符合IEC 61784-3 要求。WHIS的SAFEXchange解决方案,一种数据分发服务的融合,用于保持数据生产者和消费者之间隔离和灵活性,保持共享数据项的完整性。实现方法是保护共享数据,而不是通信通道。 这允许 SAFEXchange 与黑色通道通信介质结合使用。 SAFEXchange作为 OPENRTOS和 SAFERTOS的附加插件提供。
数据分发服务:基于生产者和消费者模型,生产者将数据发布到网络上,消费者可以注册以访问数据。 生产者和消费者完全解耦。 消费者不知道数据在何处产生。它们共享的唯一信息是数据项流的唯一标识符。 在带宽充足的情况下,新的生产者和消费者可以添加到系统中而不影响安全应用。安全应用是围绕数据项的消费者构建的。所有消费者都有责任验证数据项的正确性和及时性。 如果无法保证数据项的完整性,则会将错误传递给应用程序。
按照 IEC 61784-3 中定义的要求,在传输过程中保持数据的完整性。 生产者在将数据包传递到底层通信堆栈之前使用附加协议包装数据项。消费者使用该协议来验证每个数据项的完整性和及时性。 每个数据项都有相对于消费者的生命周期; 这可以防止数据过时。 如果特定消费者的数据项在其生命周期内未使用经过验证的数据进行更新,则该数据项将过时并通知应用程序。
SAFEXChange 可防止 IEC 61784-3 定义的错误寻址、损坏、延迟、重复、错误序列、丢失和伪装的消息。
SAFECheckpoints
SAFECheckpoints 提供了复杂的任务监控功能,确保任务的调度按预期进行。
检查点机制允许用户为代码的关键部分指定时间偏差,用于确保:
· 周期任务在时间范围内运行
· 任务中的处理部分完成
· 中断事件的处理程序任务的以允许的时间内完成
· 涉及多个任务的复杂功能在允许的时间范围内完成
各个检查点可以指定自己的回调函数,也可以激活系统错误hook。
· 可以创建单次和周期检查点
· 定期检查点可以在固定或相对时序模式下运行
增强型安全模块ESM
对于最高安全关键型环境,WHIS 提供增强型安全模块 (ESM),以增强RTOS的现有安全性。
SAFERTOS增强安全模块 (ESM) 加强了用户模式任务之间的空间分离。其目标是防止蓄意和恶意尝试访问敏感信息、控制系统并减少拒绝服务攻击的影响。
SAFERTOS提供的工具允许开发人员在任务之间添加一定程度的空间分离,有效使用可以帮助防止任务直接无意或意外访问不正确的内存区域。所有 SAFERTOS 代码都经过测试和验证,并且具有令人放心的短供应链。SAFERTOS具有100%的MC/DC覆盖率。
在传统的闪存驱动系统中,典型的安全边界或攻击面是外部接口。使用 SAFERTOS ESM,攻击面被视为用户模式任务的边界。 ESM 的目标是使应用程序设计人员能够将用户模式任务的攻击面降至最低。因此,将不良行为者限制在仅受感染的用户模式任务,阻止访问系统的其余部分。
增强型安全模块强化了 RTOS 提供的外部接口,以防止恶意行为者破坏任务中的恶意活动。
典型用户包括:
· 在医疗等市场的高风险应用中需要完整数据保护的开发人员
· 开发人员在多个内核上使用大型、复杂的设备,这些设备可能运行来自外部源的代码
· 开发人员使用来历不明的软件
· ESM 与 Arm TrustZone 或 STMicroelectronics 的 Secure Boot 等硬件安全模块完美集成
如果系统出现漏洞怎么办?
如果系统遭到破坏,会发生什么? 一旦有人进入您的系统,ESM 将立即通知应用程序,同时提供保护,防止未经授权访问数据和功能。
在大多数情况下,攻击会在一段时间内发生。 增强的安全模块显着减慢了系统中攻击者的进度,从而有时间通知应用程序。 ESM 使黑客更难以访问系统,并增加了检测和行动的时间。