Android安全启动学习(一):AVB校验是什么?

简介: Android安全启动学习(一):AVB校验是什么?

最近老师让学习一下AVB,这玩意很难找到资料。只有网上搜索一些零碎的资料和博客。最多的资料就是官网的。这里来整理学习一下AVB的相关资料。

1、AVB是什么?

如果你知道安全启动ATF,那么到这里肯定是能接上的,如果没有那也不影响。

我们的ATF在安全启动流程的时候走到了BL33,BL33一般就是bootloder(u-boot、BLOB、Redboot等)。到下一步就是要通过BL33去加载kernel。

这里需要讲一下android与linux的关系。

(盗图来自前面的链接)Android的kernel采用的还是Linux kernel,但很明显Android加入了自己的东西,对Linux进行了一些修改。

所以回到主题就是加载android镜像就是加载linux kernel。所以难怪有很多的android启动流程有这个图:

但是你说前面安全启动整了那么长一套,这里就松懈了肯定不行。所以我把AVB看做是ATF安全启动的延续。

所以AVB本质上还是从bootloader开始,去实现加载完整正确的系统镜像。

2、小结

上面讲诉的有点乱,小结一下。

启动时验证会尽力确保所有已执行代码均来自可信来源(通常是设备的原始设备制造商 [OEM]),以防受到攻击或损坏。它可建立一条从受硬件保护的信任根到引导加载程序再到 boot 分区和其他已验证分区(包括 system、vendor 和可选的 oem 分区)的完整信任链。

在设备启动过程中,无论是在哪个阶段,都会在进入下一个阶段之前先验证下一个阶段的完整性和真实性。

这个是不是就是牵扯到COT,前面从受硬件保护的信任根到引导加载程序这个部分就是ATF或者android官网的trusty TEE。了解一下。

AVB的关键在于第二个部分 boot 分区和其他已验证分区。

对于要启动的 Android 版本中包含的所有可执行代码和数据,启动时验证均要求在使用前以加密形式对其进行验证,其中包括内核(从 boot 分区加载)设备树(从 dtbo 分区加载)system 分区vendor 分区等

下一篇先来看看android镜像到底有什么,再来看看AVB的具体工作流程。

目录
相关文章
|
20天前
|
存储 安全 Android开发
探索Android系统的最新安全特性
在数字时代,智能手机已成为我们生活中不可或缺的一部分。随着技术的不断进步,手机操作系统的安全性也越来越受到重视。本文将深入探讨Android系统最新的安全特性,包括其设计理念、实施方式以及对用户的影响。通过分析这些安全措施如何保护用户免受恶意软件和网络攻击的威胁,我们希望为读者提供对Android安全性的全面了解。
|
3月前
|
Java Maven 开发工具
第一个安卓项目 | 中国象棋demo学习
本文是作者关于其第一个安卓项目——中国象棋demo的学习记录,展示了demo的运行结果、爬坑记录以及参考资料,包括解决Android Studio和maven相关问题的方法。
第一个安卓项目 | 中国象棋demo学习
|
2月前
|
Web App开发 编解码 视频直播
视频直播技术干货(十二):从入门到放弃,快速学习Android端直播技术
本文详细介绍了Android端直播技术的全貌,涵盖了从实时音视频采集、编码、传输到解码与播放的各个环节。文章还探讨了直播中音视频同步、编解码器选择、传输协议以及直播延迟优化等关键问题。希望本文能为你提供有关Andriod端直播技术的深入理解和实践指导。
57 0
|
2月前
|
安全 网络安全 Android开发
深度解析:利用Universal Links与Android App Links实现无缝网页至应用跳转的安全考量
【10月更文挑战第2天】在移动互联网时代,用户经常需要从网页无缝跳转到移动应用中。这种跳转不仅需要提供流畅的用户体验,还要确保安全性。本文将深入探讨如何利用Universal Links(仅限于iOS)和Android App Links技术实现这一目标,并分析其安全性。
380 0
|
3月前
|
Android开发
Android学习 —— 测试init.rc中的条件触发的处理顺序
Android学习 —— 测试init.rc中的条件触发的处理顺序
|
4月前
|
搜索推荐 Android开发
学习AOSP安卓系统源代码,需要什么样的电脑?不同配置的电脑,其编译时间有多大差距?
本文分享了不同价位电脑配置对于编译AOSP安卓系统源代码的影响,提供了从6000元到更高价位的电脑配置实例,并比较了它们的编译时间,以供学习AOSP源代码时电脑配置选择的参考。
291 0
学习AOSP安卓系统源代码,需要什么样的电脑?不同配置的电脑,其编译时间有多大差距?
|
5月前
|
存储 安全 数据安全/隐私保护
🔎Android安全攻防实战!守护你的应用数据安全,让用户放心使用!🛡️
【7月更文挑战第28天】在移动应用盛行的时代,确保Android应用安全性至关重要。本文以问答形式探讨了主要安全威胁(如逆向工程、数据窃取)及其对策。建议使用代码混淆、签名验证、数据加密等技术来增强应用保护。此外,还推荐了加密API、HTTPS通信、代码审计等措施来进一步加强安全性。综上所述,全面的安全策略对于构建安全可靠的应用环境必不可少。#Android #应用安全 #代码混淆 #数据加密
92 3
|
5月前
|
存储 安全 Android开发
安卓应用开发的安全之道
【7月更文挑战第4天】在数字时代,移动应用的安全性至关重要。本文将深入探讨在安卓平台上开发安全应用的最佳实践,包括代码混淆、数据存储加密、网络通信安全、权限管理以及定期的安全审计和更新策略。通过这些措施,开发者可以显著提高他们的应用抵御恶意攻击的能力,保护用户数据免受侵害。
|
6月前
|
安全 网络协议 网络安全
程序与技术分享:Android应用安全之数据传输安全
程序与技术分享:Android应用安全之数据传输安全
|
7月前
|
存储 定位技术 开发工具
Android 开发前的设计,Android之内存泄漏调试学习与总结
Android 开发前的设计,Android之内存泄漏调试学习与总结