在战争时期能够接触到重要基础设施比如电厂的控制就有可能形成一种入侵手段。我回想起我作为一个实习工程师时惊奇地发现合法的数据指令也可以损坏设备,当时的情况是送往击打式行式打印机的数据含有特定的合法字符串。当更多的嵌入式系统开始与互联网连接,有些人会对这些曾经的“孤岛”有新的恶意入侵的动机。
对于开发者来讲一个日益重要的工具就是采用公共标准(Common Criteria)安全评估。公共标准对计算机安全产品的标准和严格流程定义了框架,涉及到规范、应用以及评估等方面。完成公共标准安全评估的系统会得到一个评估保证级别(Evaluation Assurance Level),它从1到7分级。EAL国际标准从1999年就开始生效。
EAL1等级代表系统已经通过功能测试,EAL4等级代表系统已经全面地设计、测试和评估过。对现有产品更新时EAL4被认为是最经济可能的等级。根据维基上EAL的条目,商用操作系统,比如Novell NetWare, SUSE Linu
x Enterprise Server 9, 以及Windows 2000 Service Pack 3都被评为4级。EAL5等级包含有半正式的设计和测试,而EAL6增加了验证,EAL7是最高等级,它包含有正式验证的设计和测试。
对某些系统来讲公共标准的另一个部分是保护框架(protection profile),对一个应用来讲要想深入地比较两个系统的EAL,全面理解保护框架的不同很重要。比如,操作系统的两个保护框架分别是授控安全访问保护框架(Controlled Access Protection Profile,CAPP)和分离内核保护框架(Separation Kernel Protection Profile,SKPP),SKPP就比CAPP更严格,它不仅进行内存保护,还要保证不同部分的程序间相互隔离。
当你的终端设备要连入网络时,嵌入式安全需要作为需求清单的一个考虑对象。以前是没有人对你的产品动歪脑筋,但是当你的设备有了网络功能后,这个问题终归会浮出水面,唯一的办法是你提前做好准备。根据对嵌入式系统采取的不同措施,未来它们必然要面对不同的后果。