浅析安全启动(Secure Boot (bbs.pediy.com)

【简介】

安全启动的根本目的是为了防止消费者从软硬件层面对产品的部分关键系统进行读写、调试等高权限的操作。以限制消费者的能力,来达到保护产品的商业机密、知识产权等厂家权益的目的。

当然,厂家是不会这样宣传 Secure Boot 的。他们的文案通常都是通过这项技术保护用户的隐私,防止恶意软件修改系统软硬件等等。不过不论如何,随着 ARM 架构的广泛授权,基于 TrustZone 的 Secure Boot 也越来越普遍了。

本文是通过我自己对市面上的一些基于 ARM TrustZone 的 Secure Boot 实现的浅见、零零碎碎读到的一些安全分析文章、看到的一些讲座,总结一些常用的攻击思路,介绍一些真实的攻击案例。

点击查看全文 >>

@shengting 2021-03-19 17:07分享 / 0个评论
赞过的人: IT技术博客大学习
要不要再学学下面的文章?
iOS App 启动优化 (mp.weixin.qq.com)
App的启动一般是指从用户点击App开始到AppDelegate的didFinishLaunching方法执行完成为止,一般又将启动分为冷启动和热启动。
by @code小生 2021-06-14 13:31 分享 查看详情
浅析Course of Action应对措施 (www.sec-un.org)
本着“摸着鹰酱过河”的思路,对现有的几个安全分析框架和模型规范中与Course of Action应对措施相关的内容进行系统性分析和梳理,希望能对从事自动化响应处置、智能运营相关工作的同行有一些帮助和启发。其中,将ATT&CK框架中的Mitigation缓解措施、MITRE的Shield框架中的Active Defense主动防御、STIX模型中的Course of Action应对措施、IACD编排模型中的功能和能力、RE&CT框架中的Incident Response应急响应等内容都纳入Course of Action应对措施的范畴。
by @技术头条 2021-06-13 22:47 分享 查看详情
如何加快 Node.js 应用的启动速度 (fed.taobao.org)
我们平时在开发部署 Node.js 应用的过程中,对于应用进程启动的耗时很少有人会关注,大多数的应用 5 分钟左右就可以启动完成,这个过程中会涉及到和集团很多系统的交互,这个耗时看起来也没有什么问题。

目前,集团 Serverless 大潮已至,Node.js serverless-runtime 作为前端新研发模式的基石,也发展的如火如荼。Serverless 的优势在于弹性、高效、经济,如果我们的 Node.js FaaS 还像应用一样,一次部署耗时在分钟级,无法快速、有效地响应请求,甚至在脉冲请求时引发资源雪崩,那么一切的优势都将变成灾难。

所有提供 Node.js FaaS 能力的平台,都在绞尽脑汁的把冷/热启动的时间缩短,这里面除了在流程、资源分配等底层基建的优化外,作为其中提供服务的关键一环 —— Node.js 函数,本身也应该参与到这场时间攻坚战中。

Faas平台从接到请求到启动业务容器并能够响应请求的这个时间必须足够短,当前的总目标是 500ms,那么分解到函数运行时的目标是 100ms。这 100ms 包括了 Node.js 运行时、函数运行时、函数框架启动到能够响应请求的时间。巧的是,人类反应速度的极限目前科学界公认为 100ms。


by @技术头条 2021-05-27 22:28 分享 查看详情
适配 AndroidQ,不能后台启动 Activity 限制 (mp.weixin.qq.com)
在AndroidQ或例如Vivo、小米等第三方厂商ROM中,都对后台启动Activity做了限制,AndroidQ中并没有设计有权限申请来进行设置,而Vivo、小米则是在App权限设置中加入了后台启动Activity的权限。
by @code小生 2021-05-01 16:18 分享 查看详情
MTK平台Android 安全中secure boot机制 (blog.csdn.net)
Secure boot指的是建立用于运行已验证应用程序的可信平台的启动序列。它从一个不可变的序列开始,使用密码验证验证代码的源,从而只执行授权的软件。启动序列将设备置于已知的安全状态,并检测软件的二进制操作和反射攻击。

Secure boot的目的就是确保在系统平台上所执行的程序代码是厂商确认过的,避免有人恶意修改系统程序的恶意行为。
by @shengting 2021-03-19 17:11 分享 查看详情
UEFI安全启动 (zhuanlan.zhihu.com)
UEFI安全引导(Secure Boot)的核心职能就是利用数字签名来确认EFI驱动程序或者应用程序是否是受信任的。

在简要地介绍了数字签名的概念(这是安全引导的基础)之后,我们重点介绍UEFI 安全引导是如何利用数字签名以及其他的加密方式(如Hash函数等)来确保系统引导的安全可靠。

我们还会讲到Secure Boot的部署方面以及他在操作系统的安全负载方面所起到的协助作用。
by @shengting 2021-03-19 17:09 分享 查看详情
Android Verified Boot 概述 (www.xiezeyang.com)
Verified Boot是Google为Android启动定义的一种安全机制。它建立了一条从受硬件保护的Root of trust到booloader,再到boot和其它验证分区(包括system、vendor、product、odm等)的完整信任链。在设备启动的过程中,无论处于哪个阶段,都会在进入下一个阶段前先验证下一个阶段的完整性和真实性。除了确保设备运行的是安全的Android系统以外,verified boot还支持回滚保护(anti-roll back),它可以保证设备只会更新到更高版本,以避免可能的漏洞持续存在。另外,verified boot还允许设备将其完整性传到给终端用户。

要想使能verified boot,需要在编译系统中启用dm-verity功能。Android 4.4就增加了对验证启动和 dm-verity 内核功能的支持。以前的Android版本会在发现设备损坏时向用户发出警告,但仍允许他们启动设备。从Android 7.0 开始,系统会严格强制执行verified boot,从而使得遭到入侵的设备无法启动,与此同时还增加了对向前纠错功能的支持,能更可靠地防范非恶意数据损坏。Android 8.0及更高版本包含了 Android Verified Boot (AVB)功能。其实AVB就是验证启动的一个参考实现,可与 Project Treble 配合使用。除此之外,AVB 还对分区脚本格式进行了标准化处理,并增添了回滚保护功能。为了便于区分,我们一般将此之前的verified boot称为1.0版,而AVB专指verified boot 2.0版。
by @shengting 2021-03-19 17:09 分享 查看详情
浅谈 Android 的安全启动和完整性保护 (evilpan.com)
在 IoT 中保证设备安全性的重要一环就是保证代码的完整性,不让恶意代码影响业务的正常逻辑。一般而言是及时修复现有攻击面所面临的漏洞,比如浏览器、蓝牙、调试接口;另一方面需要确保的是即便恶意代码获取了执行权限,也无法修改系统镜像进行持久化。针对这点所构造的安全方案通常称为 Secure Boot,对于不同的厂商,实现上可能会引入不同的名字,比如 Verified Boot、High Assurance Boot 等等,但本质上都是类似的。
by @shengting 2021-03-19 17:07 分享 查看详情
T级内存,创建效率提升10倍以上,阿里云 KVM异构虚拟机启动时间优化实践 (developer.aliyun.com)
阿里云工程师李伟男和郭成在 KVM Forum 2020 上详细介绍了阿里云 KVM 虚拟机创建及启动时间优化的具体技术实现,本文根据其演讲整理而成。
by @可耐芊小仙女 2020-11-11 10:10 分享 查看详情
浅析云控平台画面传输的视频流方案 (developer.aliyun.com)
ARC是一个基于车载设备业务深度定制的云控平台,通过该平台我们能够实现远程使用不同类型的车载设备。为了让远程使用者像在本地一样使用车载设备,需要将车载设备的画面及时的传回给使用者。因此,画面传输能力是ARC平台的一个核心组件。
by @可耐芊小仙女 2020-11-05 16:42 分享 查看详情