可信计算4动态信度量课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《可信计算4动态信度量课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可信 计算 动态 信度 课件
- 资源描述:
-
1、课题问题?课题问题?l1.描述TPM可迁移密钥和不可迁移密钥的定义,哪种密钥更安全,为什么?能否相互转换?l2.TPM密钥有哪几种参数,共有多种不同类型?l3.CRTM是什么?为什么是不可修改的?假如修改会产生何种攻击?l4.描述一下信任链的产生过程?日志的作用,以及为什么日志不需要防篡改?l5.AIK是什么?主要用途是什么?可迁移密钥还是不可迁移密钥?l6.SRK是什么?主要用途是什么?可迁移密钥还是不可迁移密钥?虚拟化安全小组1课题问题?课题问题?l7.Sealing Key是什么?主要用途是什么?可迁移密钥还是不可迁移密钥?l8.如何做本地报告?l9.如何借助Seal功能保护数据安全?l
2、10.什么是Binding Keys?主要用途是什么?l11.描述下远程证明的过程?l12.为什么说虚拟机回滚和可信计算是矛盾的?l13.虚拟机回滚会产生何种攻击?l14.为什么单纯回滚tpm无法解决问题?还存在何种攻击?l15.如何解决回滚问题?l16.描述下图密钥加载的过程?虚拟化安全小组2Loading TPM Keys3回滚造成回滚造成vTPMvTPM与虚拟机状态不一致与虚拟机状态不一致l虚拟机回滚为云提供了便利,同时也为云环境带来了挑战。回滚的威胁回滚出现问题旧密钥重现新密钥丢失过期软件能再次使用安全设备状态不匹配产生原因虚拟安全设备和虚拟机不一致应用由于回滚状态丢失恶意回滚破环软件
3、生命周期场景1:Alice和Bob在连接在线编程系统前后后需要进行可信验证。云服务提供商在两次可信验证之间回滚到恶意的运行状态,窃取用户的信息,在进行第二次验证之前将状态恢复。Alice和Bob无法从可信验证中获得虚拟机恶意回滚的信息场景2:云服务商Dave购买了PDF处理软件,向云用户提供PDF处理函数并且收费。恶意的云服务商Dave利用恶意回滚,保存PDF处理软件的快照,在软件到期之后无限的使用收费软件快照,提供给Bob等用户获得盈利。解决解决vTPMvTPM由回滚带来的状态不一致由回滚带来的状态不一致针对vTPM的数据进行分析,采取不同的策略解决数据不一致问题7代炜琦提纲提纲l静态可信度
4、量根静态可信度量根l动态可信度量根lFlicker:Minimal TCB Code Execution9Basic TPM FunctionslPCRs store integrity measurement chainlPCRnew=SHA-1(PCRold|measurement)lRemote attestation(PCRs+AIK)lAttestation Identity Keys(AIKs)for signing PCRslAttest to value of integrity measurements to remote partylSealed storage(PCRs+
5、SRK)lProtected storage+unlock state under a particular integrity measurement10TCG-Style AttestationBIOSBoot LoaderOS KernelconfModule 2Module 1TPMPCRsBIOSBoot LoaderHardwareSoftwareAIK-1AppsApp 2App 1AppsApp 2App 1OS KernelconfModule 2Module 111TCG-Style Attestation1AIKPCRsHost platformChallenger12T
6、CG-style Attestation的缺点lStatic root of trust for measurement(reboot)lMeasures entire systemlRequires hundreds of integrity measurements just to bootlEvery host is differentlfirmware versions,drivers,patches,apps,spyware,lTCB includes entire system!lIntegrity measurements are done at load-time not at
7、 run-timelTime-of-check-to-time-of-use(TOCTOU)problemlCannot detect any dynamic attacks!lNo guarantee of execution13Linux Implementation OverviewlUse trusted boot to measure BIOS,bootstrap loader,and kernellThe kernel keeps a list of measurements for each loadedlExecutableScripts(shell,Perl,etc)lSha
8、red libraryJava class fileslKernel modulelBefore a measurement is added to the list,PCR10 is extended with that measurement.Integrity of this in-kernel list is guaranteed by PCR10lVerification:Given initial value of PCR10,extend it with each measurement and match result to current PCR1014Linux Boots
9、trap StagesTrusted BootCRTMGRUBStage1(MBR)LinuxKernelPCR01-07POSTBIOSBootloaderROTGRUBStage1.5PCR04-05TPMOperating System/bin/lsGRUBStage2PCR08/usr/sbin/httpdPCR1015Integrity Measurement Architecture(IMA)hAnalysis SHA1(Boot Loader)SHA1(Kernel)SHA1(Kernel Module)SHA1(Program)SHA1(Configuration)Measur
10、ementsProperties of Attesting System KnownHashes ProgramKernelKernelModuleConfig File BootLoaderData(1)Measurement(2)Attestation(3)VerificationAttesting SystemChallenging SystemDigest of Measurements Signed by TPM+NetworkTPM16Linux ModificationslAdded support to Linux kernellTo measure dynamic linke
11、rlTo measure each executablelAdded support to dynamic linkerlTo measure each shared librarylAdded support to kernel module loaderlTo measure kernel moduleslKernel keeps a measurement cachelFiles are only measured once!lUnless modified(opened for writing)17Linux Application MeasurementsPCR10#000:2762
12、49898F406BE176E3D86EDD5A3D20D03EEB11 remeasure linuxrc#001:9F860256709F1CD35037563DCDF798054F878705 remeasure nash#002:4CC52A8F7584A750303CB2A41DEA637917DB0310 clean insmod#003:84ABD2960414CA4A448E0D2C9364B4E1725BDA4F clean init#004:194D956F288B36FB46E46A124E59D466DE7C73B6 clean ld-2.3.2.so#005:7DF3
13、3561E2A467A87CDD4BB8F68880517D3CAECB clean libc-2.3.2.so#006:93A0BBC35FD4CA0300AA008F02441B6EAA425643 clean rc.sysinit#007:66F445E31575CA1ABEA49F0AF0497E3C074AD9CE clean bash#008:F4F6CB0ACC2F1BEE13D60330011DF926D24E5688 clean libtermcap.so.2.0.8#009:346443AAD8E7089B64B2B67F1A527F7E2CA2D1E5 clean lib
14、dl-2.3.2.so#010:02385033F849A2A4BFB85FD52BCEA27B45497C6C clean libnss_files-2.3.2.so#011:6CB3437EC500767328F2570C0F1D9AA9C5FEF2F6 clean initlog#012:FD1BCAEF339EAE065C4369798ACAADFF44302C23 clean hostname#013:F6E44B04811CC6F53C58EEBA4EACA3FE9FF91A2E clean consoletype#014:12A5A9B6657EFEE7FD619A68DA653
15、E02A7D8C661 clean grep#015:3AF36F2916E574884850373A6E344E4F2C51DD60 clean sed#016:CE516DE1DF0CD230F4A1D34EFC89491CAF3D50E4 clean libpcre.so.0.0.1#017:5EE8CD72AAD26191879E01221F5E051CE5AAE95F clean setsysfont#018:8B15F3556E892176B03D775E590F8ADF9DA727C5 clean unicode_start#019:F948CF91C7AF0C2AB6AD650
16、186A80960F5A0DAB1 clean kbd_mode#020:FF02DD8E56F0B2DCFB3D9BF392F2FCE045EFE0BC clean dumpkeys#021:C00804432DFBC924B867FC708CB77F2821B4D320 clean loadkeys#022:DE3AC70601B9BA797774E59BEC164C0DDF11982D clean setfont#023:7334B75FDF47213FF94708D2862978D0FF36D682 clean gzip#024:AEC13AA4FF01F425ACACF0782F17
17、8CDFE3D17282 clean minilogd#025:09410DDC5FE2D6E7D8A7C3CF5BB4D51ED6C4C817 clean sleepcat/proc/tcg/measurements18Linux Application MeasurementsPCR-00:0A 2A B1 F6 56 EA ED 4C 53 F0 C7 9D 5E 05 61 37 51 B7 1C E5PCR-01:5F DB 12 AD B3 34 7D D6 90 63 46 72 D8 DE 02 1C F3 3C 00 F7PCR-02:EB B3 BA AE E7 57 4B
18、 B6 37 AA AB 67 0F 9A C1 BC EB 6F 80 F3PCR-03:04 FD EC DD 50 1D AF 0F 62 4C 1F 99 60 12 CF 30 44 FF 46 10PCR-04:28 E3 E8 F0 CA 34 ED DD 58 AA 7E 71 F6 FC AE 08 C3 88 EB 05PCR-05:E7 23 99 CD A3 1D 37 E4 35 61 B7 1A 85 68 3B 66 7F 51 B6 B4PCR-06:04 FD EC DD 50 1D AF 0F 62 4C 1F 99 60 12 CF 30 44 FF 46
19、 10PCR-07:04 FD EC DD 50 1D AF 0F 62 4C 1F 99 60 12 CF 30 44 FF 46 10PCR-08:DC 0E 38 C4 F4 46 F7 BC DF C8 83 CA CC 86 E2 69 50 C5 0E 66PCR-09:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00PCR-10:50 48 FF 78 06 63 CB BF A5 F6 43 0B DA 41 1A 15 74 C3 1A 92PCR-11:00 00 00 00 00 00 00 00 00
20、 00 00 00 00 00 00 00 00 00 00 00PCR-12:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00PCR-13:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00PCR-14:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00PCR-15:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00cat
21、/proc/tpm/pcrs静态可信度量的问题静态可信度量的问题l2019年,德国Dresden大学的研究者发现现有的静态可信度量根存在着如下缺陷:l引导装载程序(Bootloader)中存在buglDartmouth的Bear project的可信引导程序装载不完整lIBM IMA把加载内核镜像和度量并扩展PCR分开lTrusted GRUB在硬盘损坏或光盘启动时不扩展PCRl无法抵御BIOS攻击lBIOS可刷写,机器启动时不对BIOS进行度量lTPM的重启攻击l对LPC总线攻击在平台没有重启情况下重启TPM静态可信度量根在实际应用中的静态可信度量根在实际应用中的不足不足l可拓展性:一个庞大
22、的信任链不易拓展。为了让接收者判定系统的可信性,需要知道链中所有的可执行部件的可信性。如机器修正ROM BIOS,或者对操作系统打补丁,那么信任链就被破坏了。l度量的时机问题:系统安全的启动并被判定为可信之后,可以发生很多事情。比如攻击者可以在一个可信的系统中利用缓冲区溢出来替换可执行文件。这样看来,静态可信根只能提供装载时的保证(load-time guarantee),而不能提供运行时保障(run-time guarantee)。静态可信度量根的问题静态可信度量根的问题l包容性:要使一个静态可信根对于一个第三方来说是有说服力的,必须度量TCB的所有组件。但很多系统,如Win和Linux,在
23、开发的时候TCB定义得有问题,使得系统中所有的可执行部件(可执行程序、库、shell脚本、perl脚本等)都要被度量。因为这些部件都与安全性相关。l静态可信度量根l动态可信度量根动态可信度量根lFlicker:Minimal TCB Code Execution动态可信度量根动态可信度量根l作为TPM 1.2规范的一部分,TCG定义了一种新机制来度量系统的启动过程:动态可信度量根。动态可信度量根动态可信度量根l动态可信度量根由CPU发出一条新增安全指令出发,告诉TPM芯片开始要创建一个受控的和可信的执行环境l信任链由该条新增指令开始重置动态平台寄存器,TPM 1.2规范中规定的8个新增PCR
24、1623平台寄存器,以此为基础开始构建信任链而且不需要重启整个平台l不像静态信任根,动态可信度量根使得可以在任意时刻开始构建信任链并且可以按照需要多次创建可信执行环境而不用重启整个平台动态可信度量根动态可信度量根l对比SRTM把BIOS核心不可修改的部分作为静态核心度量根,简称S-CRTM,那么这里新增的CPU指令就是动态核心可信度量根,简称D-CRTM。l目前Intel的TXT技术,以及AMD的SVM技术都是采用动态可信度量根作为基础的安全技术l当然这两项技术不仅仅只是DRTM,还包括DMA保护等等一些其他安全特性,但是DRTM无疑是这些系统最核心的信任基础、信任根。动态可信度量根动态可信度
25、量根l动态可信度量的信任链移除了BIOS及其配置,可选ROM及其配置以及前面提到的由于bugs带来漏洞的Boot loadersl不会受到上述提到的缺陷1和缺陷2所带来的威胁。l而且动态可信度量可以开始于任意时刻且不用重新启动整个平台l不存在度量的时机问题这个不足了,也不会影响到用户体验,对不可间断服务的影响也大大的降低。动态可信度量根动态可信度量根lDRTM需要对处理器和芯片进行更改l使用DRTM技术的有:lIntels Lagrande Technology(LT)-Trusted Execution Technology(TXT)lAMDs Presidio Secure Platfor
展开阅读全文