Towercell - 多层次系统安全保护方案
从硬件底层到云端全面保护系统安全
随着信息技术、互联网与汽车产业的不断融合,汽车网络互联和智能化已成为汽车产业发展的必然趋势。 截止2021年8月,我国联网汽车用户已突破5000万。车内的电子系统越来越复杂,现代车辆大部分拥有超过100个ECU, 这些ECU上运行着超过1亿行代码,庞大的代码体量在带来丰富的功能的同时也埋下了很多不安定的因素。 对于一台网联车来说,从孤立封闭的网络环境迈入到复杂多样的互联网环境中,很多基于封闭网络环境的功能设计将发生颠覆性的变化, 网络信息安全将成为最大的安全挑战。在复杂的汽车体系架构下,车载系统所面临的威胁可能是多层次的, 从硬件层面的固件冲刷,到系统层面的ROOT权限窃取,再到应用层面的APP漏洞、敏感信息窃取等等。 因此,想要能够保证IVI整体的安全,必须要建立起多层次的立体式防御策略。
框架中的任何一个安全漏洞都可能导致攻击者完全控制设备。TowerCell平台通过制定多层次的防护策略保证系统在每个阶段、 各个层面的数据无法被篡改,来保护系统的整体安全。通过制定自硬件层到应用层、 自终端到云端的整套立体式安全策略保证系统从启动阶段到运行过程中的整体安全。
随着代码体量的增加所带来的漏洞风险也会大大激增。但对于以Android等操作系统超过千万行的代码量来说, 完全杜绝漏洞的产生肯定是不现实的,并不是所有的漏洞产生之后就会对用户产生直观的危害和损失, 而是这个漏洞的存在可能会被第三方利用,通过这个漏洞去篡改内核的关键数据,获取更高级的权限, 然后去攻击系统组件,获取用户隐私数据从而对用户产生危害。因此,如何有效防止漏洞带来危害, 最重要的就是对于内核的关键数据节点具有监测和管理的能力。
TowerCell会在EL2模式下(Hypervisor)运行我们自己的Hypervisor THEE,通过THEE来对内核进行监控和管理。
对于应用保护来说最主要的问题就是在开展核心业务的时候无法有效的保证这部分业务在开展过程中的安全。 在大多数场景下,这部分核心的业务都是裸露的或者经过简单的加密运行在复杂的系统环境下的。
在应用层,TowerCell使用Trust++来保护应用的安全。Trust++ 产品是为应用厂商提供的基于可信执行环境TEE的应用安全方案, 主要用于解决智能设备中应用的代码、数据和业务安全问题,为用户的敏感业务提供安全的运行环境。
Trust++ 通过充分利用设备中能被使用的安全机制(包括软硬件机制如ARM TrustZone 、 虚拟化、 Intel SGX等),结合独创的原生加密执行引擎、编译器安全、代码保护、 白盒加密等方式构建安全的运行环境,保障用户应用安全。
我们可以通过不同的防护策略去尽可能的减少漏洞的产生,或者减少漏洞带来的危害, 但是对于一个已经产生的漏洞,我们依然需要很好的策略去修复它。对于运维人员, 需要能够及时的感知到产生在设备终端的漏洞,能够及时的收集到产生在设备终端漏洞的相关信息, 能够及时的把制定好的安全策略及时下发。
在应用层, TowerCell使用Trust++来保护应用的安全。 Trust++产品是为应用厂商提供的基于可信执行环境TEE的应用安全方案, 主要用于解决智能设备中应用的代码、数据和业务安全问题,为用户的敏感业务提供安全的运行环境。
可视化威胁呈现定位某一终端、某一进程与路径。将设备端上传的日志信息进行分类处理制作成报表呈现给维护人员, 让维护人员能够轻松的去分析漏洞的来源
在进行设备端和云端进行身份验证的过程时,建立一套PKI体系是比较有效的作法。 但是,对于 PKI 来说,如果无法保证激活流程、密钥证书存储等流程的绝对安全, 那么即使PKI被使用起来也无法达到预期的安全保护作用。传统的PKI体系会在产线阶段向设备植入一组密钥作为后续PKI激活的基础, 但是密钥本身来自外界植入,依然会有泄露的风险。TowerCell会在产线阶段在TEE下为每一台设备生成一对根密钥, 私钥被设备的TKCORE OS严格持有,不会以任何形式向外透露,生成的公钥将被导出并上传到瓶钵的密钥管理服务器进行统一管理。 在进行设备激活阶段,如何能保证根密钥使用环境的安全将是十分重要的。 TowerCell为设备提供安全的激活环境,设备在TEE环境下将验证信息进行签名上传到厂家的PKI服务器,PKI服务器在接受到验证信息之后, 将数据发送给瓶钵的密钥管理服务器进行验证。通过瓶钵的密钥管理服务器返回的验证结果,PKI服务器决定是否下发PKI证书(加密下发)。 当设备接受到加密后的PKI证书之后,会在TEE下对证书进行解密,PKI证书会被存储在TEE下,并且只有在TEE下能够被使用, 有效的保证证书不会被泄漏 。同时, TowerCell 可以控制设备对云端的访问频率。当单个设备被恶意攻击者攻破之后, 可能会通过这个设备向云端发送大量的信息来占用云端的有限资源。此时, 可以通过TowerCell来限制设备端的访问频率来阻止这种大数据冲刷带来的危害。
Trust++提供了丰富的安全应用场景,用户可以通过SDK使用目标语言(如JAVA)调用相关接口使用安全功能。
开发人员可以调用SDK的接口把数据发送到指定的服务器,以此来进行身份验证工作
功能丰富的加解密库:Trust++ 提供了强大的功能库,基本上支持市面上所有的加解密算法。
Trust++通过充分利用设备中能被使用的安全机制构建安全的运行环境和存储环境。开发人员可以通过Trust++提供的接口来进行安全存储, 保证密钥等隐私数据的安全。
Trust++ 提供一套安全UI的调用接口。用户可以通过相关接口选择自己的UI的风格、布局,轻易的设计出自己的安全UI
Copyright © 2013-2021 TrustKernel Team, 上海瓶钵信息科技有限公司, 版权所有 |
沪ICP备16026776号-1
沪公网安备31011202008280号