STM32F103RB的BootLoader软件安全设计方案
STM32F103RB的BootLoader软件安全设计方案
S M3 F R T 2 1 3 B的 0 B o a e软件安全设计方案 * ot dr i o■深圳大学林郭安黄强 许文焕
中成功运行,使产品代码发生部分泄漏,就是产品面将这
引言随着嵌入式系统产品的发展,功能趋向系统化、其复
临的篡改攻击风险]。针对这一风险的研究在实际应用中显得十分重要。
杂化,同场合和具体应用对产品的升级维护提出了更多不一
S公司推出的 S M3 T T 2系列微处理器采用 AR新 M代 Cotx—M3内核,中增强型的 S re其 TM3 F O RB具 2 13
的需求。厂商针对这一问题普遍采用 B ola e导应 o t d r引 o
用程序结构的嵌入式软件,产品升级和维护过程中只需在提供升级程序包由 B olae在升级模式下更新产品的 ot d r o应用程序,可快捷地实现产品升级]即。一
有 7 Hz主频、 0 KB片内 S 2M 2 RAM、 2 1 8 KB片内 F a h ls 以及丰富的接口资源,以很好地满足广泛的嵌入式产品可
的应用需求。较低的芯片价格和简单的开发方式使之应用前景非常广阔,该芯片上代码的安全研究也具有深远对意义。
直以来,入式软件的安全和知识产权保护是厂商嵌
面对市场竞争着重关心的焦点。嵌入式系统处理器的有
限硬件资源和高效率要求使得其难以应用复杂和大运算量的加密算法,对代码的保护更多依赖于硬件,往往具这有很多潜在的安全隐患]。本文就 B ola e导应用 o t d r引 o程序结构的软件在 S TM3 F1 3 2 0 RB芯片上应用时,到篡遭
1 2风险研究 .B o la e引导应用程序结构的嵌入式软件可以满 o t dr o足产品功能升级和维护的需求,实际应用中被厂商普遍在采用。B ola e程序是在系统上电复位后在 Fls ot dr o a h中首先执行的一小段代码]其基本功能模块如图 1所示。,
改攻击后所面临的代码泄漏风险进行研究和验证,提出并了改进 B ola e o t d r的安全设计方案,强代码的安全性。 o加
,.. ......
1一 . .
1篡改攻击风险研究 1 1研究的意义 .嵌人式系统产品的开发往往成本高、发周期长,开一
l初始化硬件I
自模块 I I检 跳转至应用程序入口I下载应用程序更新 I图 1 B ola e功能基本功能模块 ot d r o
旦产品中的嵌人式软件被抄袭或盗窃都将给厂商带来巨大的损失。随着嵌入式处理器设计技术的发展,片内对
对于具有 B ol dr导应用程序结构的嵌入式软 ot ae引 o件, ot a e部分和应用程序是相对独立的。产品有 B ol dr o了升级版本后,户可以得到产品和升级程序包。在对用产品的篡改攻击中,旦 B o la e代码泄漏,法使用一 ot d r o非
Fah中的代码保护也日渐完善。芯片在保护状态下, ls可以完全禁止通过调试接口或 S RAM中运行的程序读取
Fah内容,产品阶段保存在 Fah中的代码运行时对 l s但 ls自身的读取是允许的,果非法使用者通过特殊手段篡改如了 F ah中的部分代码为非法读取程序,使之在 F a h ls并 ls
者通过升级模式更新应用程序部分,可以复制产品的将全部软件代码,就使得产品被抄袭的潜在风险急剧增这大。在 S TM3 F O RB上进行的实验也证明了抄袭的可 2 13能性。
*基金项目:中国自然科学基金会 ( 0 0 0 6,圳产学研项目 6512 )深( Y2 O O6 7 1 A) S O 8 2 O 20。
ppr ae@me e cr.n投稿专用) s t o c( n. n
Mi o0 t l r 8 E e ddS se 一n c cnr l s L mbd e yt r oe ms/
STM32F103RB的BootLoader软件安全设计方案
鹰霪三 X R E~E £ E C G P _/ i冀缝 i辨赫 _ _ __ --
l l
i i薯*
行机会。所进行的实验结果如图 3所示。
2基于 S M3 F 0 R T 2 1 3 B芯片的风险验证S TM3 F 0 RB芯片对片内 Fa h的保护通过特殊位 2 13 ls
通过实验,证了当部分应用程序内容被修改时,验B ola e可以正常进入运行模式, o t dr o在放置
的跳转指针尝试至应用程序函数入口地址时,序可以跳转至非法读程
置的 O t nB ts写保护控制字实现。读、 pi ye读 o写保护有效时将禁止调试接口和 S RAM中运行的程序对 Fls a h读、写
取程序执行读取命令,到 B ol dr序和被部分修得 ot ae程 o改的应用程序代码。复制到新的芯片中后运行启动
操作。芯片特殊设计为:除读保护时,先整片擦除片去首内 Fah从而销毁产品软件代码; l, s写保护的去除并不影响Fa h中代码的完整性;保护有效时, ls ls读 F a h的前 3片区写保护自动有效,防止中断向量表被非法修改]。实验在 S TM3 F 0 R 2 1 3 B的开发板上进行,前 3片区在
B olae升级模式,升级程序下载升级程序包覆盖应 ot dr o将用程序区域,就得到了完整的 B o la e程序和应用程序 ot dr o代码。
写入 B ola e程序代码后,用升级程序包将应用程序 o t dr o利
下载至应用程序片区。检验程序功能正常后置芯片读保护和所有片区写保护有效,而得到产品阶段的芯片。对从芯片的篡改攻击风险验证实验流程如图 2所示。开始复位
在S AM b g R Deu模式下擦除OpinB ts t ye ̄域 o设置芯片写保护无效在 Fah部片区1 7 l尾 s 2中写入非法读取程序代码在片区 16 2的底部地址 O 0 0 B F入跳转 x 81 F写 F至非法读取程序的指针
选择Fah ls地址启动
N
图 3篡改攻击造成的代码泄漏
跳转指针前移4字节
3双重完整性检验安全方案设计与验证 结束
实际应用中,B ola e导应用程序结构的软件在 o t d r引 o S TM3 F 0 RB芯片上使用时,商可以通过改进 B o— 2 13厂 ot
图 2风险验证实验流程
l d r设计,大程度地避免这种篡改应用程序方式带 o e的 a最来的代码被抄袭的风险。由于芯片读保护有效时, 3片前区的自动写保护可以保证中断向量表不被篡改,而从
用于篡改攻击的软件包括非法读取 F a h内容并通
ls
过串口输出的程序和用于跳转到非法读取程序的指针。 篡改攻击的实现原理是芯片的读、保护只包括主 Fah写 ls区域, Op inB ts区域的擦除操作可以去除无自动写对 t ye o保护片区的写保护状态,读保护仍然有效。在 S AM而] R
B ol dr Fah地址启动时首先执行。 ot a e在 ls o在更新应用程序的过程中,了升级程序包采用加密除方式由 B o la e在升级模式下将内容解密后写入应用 ot dr o程序区域外, o t a e行模式下确认 F a h中的内容 B ol d r运 o ls为完整的合法程序和阻止非法程序的运行是安全设计方
中运行的程序可以使芯片转变为代码完整而应用程序区域无写保护的状态 0一般情况下,品为了保持升级的空产间,件没有占据整个 Fa h空间且采取自顶向下的顺序软 ls
案的出发点。下面介绍的是采用双重完整性检验的方案提高代码安全性的方法:①由于 S TM3 F O RB芯片的 F lh的写操作需要 2 13 as
摆放。。为了最大程度保持原有应用程序,验中将非实法读取程序写入 Fa h的尾部片区,将用于跳转至非法 ls并程序的指针自底向上遍历 Fa h地址尝试应用程序的人 ls口地址㈨。
对片区擦除后进行,以在各片区的特定地址内依次可放置厂商设定的 1 2字节伪随机码,成密码序列。在~组非法读取程序或跳转指针写入时,片区擦除过程将破坏对伪随机码而不能重新写回,致密码序列的破坏。导
实验的结果通过 P C端接收到非法读取程序输出的
代码数据验证,取的过程是芯片上电复位后自 Fah读 ls起始地址启动执行, ot a e在运行模式下将跳转 …… 此处隐藏:3316字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [资格考试]石油钻采专业设备项目可行性研究报告编
- [资格考试]2012-2013学年度第二学期麻风病防治知
- [资格考试]道路勘测设计 绪论
- [资格考试]控烟戒烟知识培训资料
- [资格考试]建设工程安全生产管理(三类人员安全员
- [资格考试]photoshop制作茶叶包装盒步骤平面效果
- [资格考试]授课进度计划表封面(09-10下施工)
- [资格考试]麦肯锡卓越工作方法读后感
- [资格考试]2007年广西区农村信用社招聘考试试题
- [资格考试]软件实施工程师笔试题
- [资格考试]2014年初三数学复习专练第一章 数与式(
- [资格考试]中国糯玉米汁饮料市场发展概况及投资战
- [资格考试]塑钢门窗安装((专项方案)15)
- [资格考试]初中数学答题卡模板2
- [资格考试]2015-2020年中国效率手册行业市场调查
- [资格考试]华北电力大学学习实践活动领导小组办公
- [资格考试]溃疡性结肠炎研究的新进展
- [资格考试]人教版高中语文1—5册(必修)背诵篇目名
- [资格考试]ISO9001-2018质量管理体系最新版标准
- [资格考试]论文之希尔顿酒店集团进入中国的战略研
- 全国中小学生转学申请表
- 《奇迹暖暖》17-支2文学少女小满(9)公
- 2019-2020学年八年级地理下册 第六章
- 2005年高考试题——英语(天津卷)
- 无纺布耐磨测试方法及标准
- 建筑工程施工劳动力安排计划
- (目录)中国中央空调行业市场深度调研分
- 中国期货价格期限结构模型实证分析
- AutoCAD 2016基础教程第2章 AutoCAD基
- 2014-2015学年西城初三期末数学试题及
- 机械加工工艺基础(完整版)
- 归因理论在管理中的应用[1]0
- 突破瓶颈 实现医院可持续发展
- 2014年南京师范大学商学院决策学招生目
- 现浇箱梁支架预压报告
- Excel_2010函数图表入门与实战
- 人教版新课标初中数学 13.1 轴对称 (
- Visual Basic 6.0程序设计教程电子教案
- 2010北京助理工程师考试复习《建筑施工
- 国外5大医疗互联网模式分析




