如今,电脑已经深入我们生活的方方面面,在办公、学习、娱乐等多个领域发挥不同的作用。学电脑已经成为不同年龄层次的人群必须掌握的一门技能。为了使读者在最短的时间里轻松掌握电脑各方面应用的基本知识,并快速解决实际生活中遇到的各种问题,我们组织了一批教学精英和业
本书是《入门与进阶》系列丛书之一,全书以通俗易懂的语言、翔实生动的实例,全面介绍了有关黑客攻防的方法和技巧。本书共分15章,分别介绍了黑客入门知识、踩点侦查和漏洞扫描方法、DOS命令的应用、Windows系统中的安全隐患和系统漏洞的防范措施、系统远程控制方法、黑客常
安全引导让嵌入式系统开发者有信心他们部署的产品可以抵御住来自底层的、引导期间的固件攻击。然而风险还是可能存在,老练的攻击者还可以让安全引导过程打折扣。另外,攻击者将发布的要部署产品替换成不良的仿品
在大多数嵌入式系统中,有一串固件要被执行以建立安全的初始状态,期间TCB会启动、运行并控制系统的安全性。最常见的情况是,CPU会先执行一段小的预先在制造时就烧写在ROM中的引导装载程序。安全的引导有赖于基于
关键点 除了可信硬件之外,我们还必须确保在引导过程中可信的固件 软件不被破坏。针对平台固件的攻击较针对供应链的攻击更容易且费用更低,但是所导致的威胁让每个嵌入式系统开发者不能不考虑。如果硬件和引导装
2 9 确保TCB的完整性2 9 1 可信硬件和供应链现在,我们开始探讨系统级的安全威胁,该威胁可以导致最完备且绝对安全的软件瘫痪。嵌入式系统安全要求集成TCB(可信的操作系统、应用程序、中间件,以及数据保护协
当某嵌入式系统在一现场出问题了,开发者(有时是政府取证小组)需要确定问题的原因所在。飞行记录仪是个有名的现场诊断系统:最终产品(飞机)就可以附带一个内在的诊断能力(黑匣子)。新兴的嵌入式设备也要求
正如前面讨论的,虚拟设备驱动一般部署在微内核风格的操作系统中。基于微内核的系统管理程序也非常适合于安全I O虚拟化:不同于将设备驱动放入系统管理程序或特殊的Linux客户操作系统中的典型单体方法(前述Dom0
在本章早期,我们讨论了虚拟驱动对限制权限和促进系统设计鲁棒性的重要性。理想的虚拟化设备驱动只需要很少与设备相关的代码驻留在特权模式的内核中。以网络设备来举例,来看看其中断服务例程(Interrupt Servi
上述直通技术的缺陷引发了共享IOMMU技术涌现,这些技术使得多个客户操作系统可以通过IOMMU和设备I O复用(例如,芯片组加上外围器件本身)内在的的分割机制,来共享一个I O设备。一个可共享、使能IOMMU并能直通的
相反,直通模型(参见图2 26)使得客户操作系统可以直接访问物理I O设备。依赖于CPU,客户驱动可以不做修改,或只做最小的半虚拟化适配。通过在拥有物理设备的客户和请求访问该设备的其他客户之间提供一个虚拟I
I O虚拟化的传统方法是仿真:所有客户操作系统设备I O资源的访问都会被截获、验证有效性并翻译成系统管理程序发起的操作(参见图2 25)。 这个方法最大化了可靠性、安全性和共享性。客户操作系统通过I O设备根本
2 7 I O虚拟化关键点 对系统虚拟化的安全和效率最大的一个影响是:跨虚拟机管理I O的方法。这节我们将讨论在嵌入式I O虚拟化中的安全陷阱和涌现的趋势。2 7 1 共享I O的需求在任何嵌入式系统中,跨工作负载共
一些人将虚拟化吹捧为系统安全的分层防御技术。该理论假定只有客户操作系统才会被暴露给外部的威胁,而穿透客户操作系统的攻击者并不能毁坏剩下的系统。本质上,虚拟化软件提供的是类似大多数现代操作系统中进程
关键点 在嵌入式系统中,为系统虚拟化增加的CPU硬件支持是系统管理程序得以实际运用的关键。2005年发布的Intel VT,已经是整个企业计算世界里全虚拟化不断被采纳的关键因素。X86的虚拟化技术(VT-x)为许多系统
系统虚拟化可以实现为全虚拟化的,也可以实现为半虚拟化的(paravirtualization),后者是2001年 Denali项目中创造的一个词。对于全虚拟化,客户操作系统不用修改就可以被支持。对于半虚拟化,客户操作系统则要
系统管理程序有很多种风格。一些是开源的,有些则是专有的。有些使用瘦系统管理程序,需要用特定的客户操作系统进行增强。有些则使用单体系统管理程序,完全独立。在这小节中,我们将对比可用的系统管理程序技术
另一个例子,虚拟安全设施则恰恰相反:从嵌入式系统的主要操作系统环境沙箱保护或隔离可信软件。让我们想想运行在移动设备上的反病毒软件。几年前,Metal Gear 特洛伊木马通过禁止反病毒软件,可以在基于Symbi
整合的概念里隐含着一个前提:独立的虚拟机相互之间是安全隔开的(这也称作虚拟机隔离)。保障隔离的能力高度依赖于底层的系统管理程序的鲁棒性。正如我们前面讨论的,以及后面很快要进一步展开的,研究者们发现
大型机的虚拟化也由当今企业级系统中类似的应用驱动着。与现代数据中心服务器整合中为了改善硬件利用率一样,虚拟化也被用于分时共享。虚拟化另一个重要的用途则涉及测试和开发新的操作系统架构。虚拟化还用于维