没有合适的资源?快使用搜索试试~ 我知道了~
博士学位论文L’UNIVERSITÉ DE RENNESC OMUE U级 B代表Oire和科尔 第601章第一次见面数学与信息通信科学与技术专业通过"利奥波德·乌埃里"分析嵌入式系统中的漏洞以应对模糊攻击论文于2020年9月24日在雷恩发表并答辩研究单位:INRIA,CIDRE论文编号:答辩前的报告员:Bruno Legeard弗朗什-孔泰大学教授评审团组成:主席:奥雷利安·弗朗西隆Eurecom教授检查员:布鲁诺·勒加德弗朗什-孔泰大学教授海伦·韦瑟林克LAAS-CNRS教授让-路易·拉内INRIA教授埃莱娜·勒·布德IMT-大西洋高级讲师Dir. 论文:让-路易·拉内INRIA教授谢谢你我我要感谢我的论文导师Jean-Louis Lanet,他给了我完成这篇论文的在这三年里,他的随时可用、倾听、建议和宝贵的意见一直使我还要感谢我的论文导师Hélène Le Bouder,她她我还要感谢法国数字安全公司Idemia给我写这篇论文的机会。没有他们的帮助,这项工作C’est un grand honneur d’avoir comme rapporteurs à la fois Hélène Waeselynck ainsique 我感谢你们两个审阅我的手稿,并出席我的我还要感谢Aurélien Francillon我还要感谢我的未婚妻奥蕾莉亚,她总是鼓励我,给了我写这篇论文的我也衷心感谢我的父母和姐姐,感谢他们在我的大学之旅他们总是知道如何安慰我,如何理解我,如何在困难时期找到语言。非常感谢我的朋友乔纳森、西尔万和昆汀。 尽管如此,他们"组织"在等着我们.我 还 要 感 谢 我 所 有 的 同 事 , Ludovic 、 Mathieu 、 Benoit 、 Cédric 、 Routa 、Ronan、Louis、Pierre-Yves、Les Aurélien、Kévin、Centrale-Supélec团队的同事我还要感谢在这三年里与我接触的每一个人一只手为船,一只手为你,但如果船遭受痛苦,给它三个手指。- 海军陆战队谚语"我们经常在半夜起床,坐在甲板上,发现只有值班军官和几个水手在默默地抽着烟斗。所有的噪音都能听到船头在海浪上的沙沙声,而火焰的火花带着白色的泡沫沿着船的两侧流动。基督徒的上帝!尤其是在深渊的水中和天空的深处,你深深地刻下了你全能的特征:数以百万计的星星在天球的深蓝色中闪耀,月亮在天空中,大海没有海岸,天空和海浪中的无限!你的伟大从来没有比这更让我不安在那些夜晚,我悬浮在星星和海洋之间我什么都不是,我只是一个孤独的人。J’ai souvent entendu les savants disputersur le premier Être, et je ne les ai point compris ; mais j’ai toujours remarqué quec’est à la vue des grandes scènes de la nature que cet Être inconnu se manifeste aucœur de- 弗朗索瓦-勒内·德·夏多布里昂图表2.1智能卡的第一个原型之一,由其发明者莫雷诺于1975年发明。.......................... 72.2Java中已检查类型异常处理的示例........................................................................ 102.3Java卡的分层体系结构3.1模糊化基础设施类型的操作....................................................................................213.2根据OpenPGP 2规范导入RSA密钥的部分状态图。0。1.首先检查APDU缓冲区的报头然后............................................................................................................................223.3正确实现的示例,同一实现带有一个missing-check,另一个实现带有一个extra-check。........................................................................................................................246.1L’approche de (Les插图来自flaticon.com)。...................................................... 626.24种不同Java方法的示例。 方法方法01、方法02和方法03是相邻的,方法01中有一个missing-check。我-isNull方法.................................................................................................................636.3无法检测到的方法方法04、方法05的示例他们是邻居。............................................................................................................647.1L’exemple propose trois méthodes voisines, où aucune anomalie n’est si-7.2L’exemple与调用方相邻,其中报告了方法01的异常798.1我们的方法分为5个步骤。(插图来自flaticon.com)。.......................................................................................................818.2三种不同Java方法的示例。方法m1和m2是相邻的。然而,m3.............................. 828.3包含循环结构和生成的关联图的示例方法。........................................................888.4处理选中类型异常的示例8.5为处理两个ArrayIndexOutOfBoundsexception和NullPointerexception............909.1将性别DO的值写入数据集的小程序。只有OP小程序对要写入的值执行规范所期望的检查。...........................................................................................................1139.2在D 1 114中被视为剽窃的方法示例9.3EMV 115的verify命令的两个实现之间的剽窃--图片列表2.1命令APDU的结构2.2响应APDU的结构ISO 7816/8DO 0x 4D扩展标头列表的这些值以十六进制表示。xx表示不同大小的字段粗体文本对应于实际编码的数据............................................................................235.1实现OpenPGP 57 v2.0.1规范的小程序数据集5.2实现AES的小程序数据集........................................................................................ 587.1k-NN的k值对未重命名数据集的邻居发现的影响。............................................. 737.2k-NN的k值对重命名数据集的邻居发现的影响。.......................................................747.3原始数据集和重命名数据集之间k = 3时的性能增益747.4ChuckyJava75的混淆矩阵7.5ChuckyJava75的混淆矩阵7.6数据集重命名的不同指标的结果767.7k-NN的k值对AES数据集的邻居发现的影响。......................................................779.1OpenPGP上不同配置的最佳邻居发现结果。........................................................... 999.2使用Bray的置信度混淆矩阵柯蒂斯没有正常化。.........................................1009.3使用未经归一化的校正关系的置信度混淆矩阵。..............................................1019.4比较距离指标的准确度、召回率和F1评分布雷·柯蒂斯和科尔1019.5在AES上为不同配置提供更好的邻居发现结果。.............................................. 1039.6AES上邻居发现的最佳配置OpenPGP104数据集9.7在AES和OpenPGP数据集之间使用唯一术语我们的一袋字模型 ................................................................................................. 1049.8比较异常检测的准确度、召回率和F1评分ChuckyJava和信任1059.9用于剽窃检测的数据集的演示..............................................................................106A.1OpenPGP数据集的Oracle邻居 ... ... ... ... ... ... ... ... ... ... ... ... . 133B.1OpenPGP数据集的Oracle异常... ... ... ... ... ... ... ... ... .... 第一百三十六章C.1AES数据集的Oracle邻居 ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 139表的列表总结图表列表1引言1I上下文52工业环境Java卡62.1从智能卡到Java卡。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...2.1.1智能卡的发明。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...662.1.2智能卡的使用案例 . . . . . . . . . . . . . . . . ...72.1.3Java卡的需求。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...82.2Java卡的工作原理。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...2.2.1Java中的异常处理... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...992.2.2 API对象 . . . . . ...102.2.3 Java卡的体系结构和安全性... ... ... ... ... ... ... ... ... ... ... ... ... ...132.3密码学的先决条件。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...2.3.1对称。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...15152.3.2非对称密码学。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...162.3.3OpenPGP的... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...162.4结论。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...163模糊攻击183.1模糊攻击的... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...183.1.1攻击描述。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...183.1.2模糊器的用例... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...193.1.3模糊基础设施类型。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...203.2基于OpenPGP规范的示例 . . . . . . . . . . . . . . . .213.2.1导入... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...213.2.2未检查和额外检查。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...223.3结论。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...244最新技术水平254.1动态和混合。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...4.1.1输入。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...26264.1.2执行控制... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...294.2安30全。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...摘要4.2.1基于模型30的安全测试4.2.2基于突变314.2.3针对智能324.3静态分析324.3.1字符串分析334.3.2类型分析334.3.3颜色跟踪344.3.4抽象和concolic354.3.5综合分析354.4正式证据374.4.1正式方法374.4.2Java Card 38小程序验证4.5分类器、数据挖掘和规范394.5.1分类器394.5.2数据挖掘404.5.3规范探索414.6最新技术水平综述4.7自然语言的自动处理444.7.144字袋4.7.2治疗前454.7.3距离指标484.8代码混淆技术4.8.1以前的工作504.9结论53二、捐款555数据集565.1神谕565.1.1OpenPGP56数据集概述5.1.2来自邻居的Oracle OpenPGP575.1.3Oracle OpenPGP异常585.1.4AES58数据集概述5.1.5OracleAES邻居585.1.6神谕的局限性595.2评估指标5.3结论606ChuckyJava616.1调整616.2L’approche de ChuckyJava6.3语料库的准备63摘要6.3.1标识符的重命名。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...636.3.2语法分析。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...656.4发现邻居。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...666.4.1距离。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...666.4.2距离。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...676.4.3发现k个最近邻。... ... ... ... ... ... ... ... ... ... ... ... ... ...686.5异常检测... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...696.5.1尺寸减小。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...696.5.2用向量表示方法。... ... ... ... ... ... ... ... ... ... ... ... ... ...696.5.3正态性。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...706.5.4与模型。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...706.6关于ChuckyJava。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...717ChuckyJava的评估727.1评估和限制。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...727.1.1OpenPGP邻居。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...727.1.2异常检测。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...757.1.3AES邻居。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...767.2限制。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...777.3结论。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...788TALN方法808.1一般方法。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...808.2发现邻居。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...8.2.1一袋袋的话。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...... ... ...81818.2.2调整权重。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...868.2.3尺寸减小。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...868.2.4距离。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...878.3控制流图的生成。 . . . . . . . . . . . . . . . . . ...888.3.1抽象、替换常量、添加例外。...888.3.2程序间CFO。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...898.4检测异常。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...918.4.1相邻方法。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...918.4.2异常。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...928.5关于我们方法的。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...939开发和验证959.1实施的选择。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...969.1.1制定和调整的。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...969.1.2文字袋模型的。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...969.2评估和验证。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...989.2.1OpenPGP98邻居发现评估9.2.2OpenPGP 100异常检测的结果摘要9.2.3检测到的未命中检查示例1019.2.4AES102上的邻居发现评估9.2.5信任验证,扩展到105的能力9.3限制1099.3.1发现邻居的1099.3.2异常检测的局限性9.3.3小程序的质量限制1109.3.4图形和执行时间9.3.5跟踪颜色1119.4关于信任的结论11110 结论11710.1 一般结论11710.2 未来工作11810.2.1 增强信任11810.2.2 关于今后120参考书目121出版物130附录132OpenPGP133邻居的甲骨文B OpenPGP异常甲骨文136C 邻居的甲骨文AES139C第一章简介嵌入式系统是用于执行预定义任务的自主电子和计算机系统。该定义包括系统的软件和硬件方面。智能卡是日常使用的嵌入式系统。它们特别用于每个人都可以拥有多张智能卡据估计,到2020年,全世界将有300亿至500亿张这样的卡在流通。同年,生产的地图数量估计为100亿张。Java Card是用于开发智能卡应用程序的标准平台它运行小程序,称为编译小程序(CAP)。这些卡用于敏感操作因此,他们成为攻击者的牺牲 智能卡包含安全组件 实际上,PIN码可用于验证用户。卡中还存在诸如私钥之类的加密对象,以确保交易的机密性。这些安全对象是嵌入在每个卡中的秘密,必须对其进行小程序很容易在所使用的攻击中,模糊化攻击最近被证明对CAP有效模糊攻击包括向正在运行的S’il n’est pas conforme à sa spécification, alors un L’extraction 最初,模糊化允许在部署之前测试程序的鲁棒性在过去的几年里,模糊攻击已经得到了改进,并专门用于进攻目的。因此,它们不再仅仅用于暴力测试程序。实际上,这些技术改进使得例如可以推断嵌入式程序的状态和转换,特别是此外,还采用了减少要发送到程序的测试空间的方法。还有一些攻击者依靠辅助通道来检测更多信息,以缩短攻击的执行时间。Lancia、Bouffard和Lanet最近的工作表明,模糊化的攻击性使用非常适用于Java Card的上下文中,以分析其漏洞很难防范这种类型实际上,不可能确保该规范被完美地实现。通过变异单元测试,模糊攻击会导致1简介程序的控制流的更多路径因此,需要预先保护智能卡免受模糊化攻击L’objectif 此漏洞分析必须以自动化的方式进行,并且不需要了解规范。存在不同的方法来限制模糊攻击的影响。有些是在程序运行时实现的,并解析每个新输入。Java卡的低计算能力意味着这种类型的方法在执行时会产生显著此外,它们还可以被劫持。 最后,我们选择但是,当前的静态扫描方法这就是我们依赖机器学习方法的原因。自动自然语言处理是一个旨在自动发现文档之间相似性的研究领域。引用使用情形我认为可以使用Natu-rel语言的自动处理来在对最新技术水平进行研究后这 对新工具ChuckyJava进行了改进,并对其性能进行了评估。 第一个线索确认此域可用于Java Card漏洞扫描。实际上,与规范相比,可以检测到缺失或过多的测试但是,ChuckyJava有许多限制。这使得它无法在业务中使用 后者仍然基于自然语言的自动处理,但它的目的是更精确。实际上,在对类似源代码部分进行分类和检测漏洞时,都考虑了ChuckyJava的局限性。这种方法是在一个工具下实现的:信任。对它进行了评估,其结果比ChuckyJava更有说服力。这是因为结果更准确,执行时间此外,本文还提出了Confidence的配置,以便更好地适应它在商业中的使用是可能的。手稿分为两部分。第一个问题是理解论文的背景及其利害关系。第2章介绍了智能卡的历史:从它的开始到Java卡,以及它的安全功能。接下来,在第3章中介绍模糊攻击。L’architecture de ce type d’attaque DIF-2简介在第4章的最新技术水平中介绍了执行模糊化或对抗模糊化攻击的各种方法它们旨在保护Web应用程序或Java Card小由于所讨论的方法基于静态分析、形式化证据、分类或安全性测试,因此研究了各种面板介绍了我们基于自然语言自动处理的研究方向的前提手稿的第二部分介绍了我们的贡献。在第五章中,我们提出了评估本文提出的两种方法的方法手动创建的数据集与评估指标一起显示。我们的第一种方法称为ChuckyJava,它是对最先进工具的改编和改进第6章介绍了它的两步操作。ChuckyJava的配置和同一章还介绍了该方法的局限性 这些限制,结合更多的自动自然语言处理和剽窃检测技术,是我们第二种方法的基础。第8章介绍了漏洞检测的新建议方法。它以Confidence的名义实现。它的配置、评估和限制在9中给出。他的研究结果表明,自然语言处理方法是检测漏洞的一个有趣的起点。最后,在第10章中给出了论文的结论和改进的前景最后,论文的出版物清单和附录可在结论后获得。本论文是在雷恩国家计算机科学与自动化研究所(INRIA)的CIDRe团队内完成的它由法国数字安全公司IDEMIA提供资金。3
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功