当前位置:主页 > 科技论文 > 计算机论文 >

ARM设备固件装载基址定位的研究

发布时间:2024-03-13 04:04
  嵌入式设备已经遍及生活生产的各个方面,所有这些设备都运行着固件,固件和传统软件一样通常有缺陷或者漏洞,使得设备存在安全威胁,甚至可能导致设备失效。逆向工程是对嵌入式设备固件进行安全性分析的常用方法,反汇编是整个逆向工程的基础和重要组成部分。对固件进行反汇编时,需要获得设备的处理器类型和固件装载基址,通过拆解设备或者查阅设备手册可以了解设备的处理器类型,但固件的装载基址却不容易确定。输入正确的固件装载基址才能使反汇编工具建立准确的代码交叉引用和数据交叉引用,这些交叉引用信息对于分析固件的行为、评估固件的安全性具有非常重要的意义。然而,大部分嵌入式系统的固件是非标准的、格式未知的二进制文件,据我们所知,目前尚不存在自动化工具或方法可以获得这类文件的装载基址。据统计当前大约有63%的嵌入式设备处理器是基于ARM架构的,因此本文以ARM体系结构下的嵌入式设备固件文件为研究对象,通过研究固件中二进制函数指令特点、函数入口表、字符串存储规律以及引用方式、文字池的存储规律等方面内容,本文提出了4种定位ARM设备固件装载基址的方法,主要贡献如下:(1)根据函数入口表和二进制函数序言的特点,提出了基于函...

【文章页数】:127 页

【学位级别】:博士

【文章目录】:
摘要
ABSTRACT
第1章 绪论
    1.1 研究背景
        1.1.1 逆向工程
        1.1.2 针对固件安全的逆向工程
        1.1.3 固件装载基址定位的意义
    1.2 国内外研究现状及发展趋势
        1.2.1 固件逆向工程的关键步骤
        1.2.2 固件的校验及分析
        1.2.3 人工定位固件装载基址的方法
    1.3 本文的主要研究内容
    1.4 论文的组织结构
第2章 装载基址定位相关技术
    2.1 文件装载的基本概念
    2.2 本文相关的ARM指令
        2.2.1 函数序言常见指令
        2.2.2 ARM处理器状态切换指令BX
        2.2.3 MOV指令的立即数限制
        2.2.4 LDR指令对字符串地址加载
        2.2.5 ADR指令对字符串的引用
    2.3 固件装载基址的人工定位方法
        2.3.1 基于跳转表定位装载基址
        2.3.2 基于指令中立即数定位装载基址
        2.3.3 定位装载基址的其他方法
    2.4 本文中用到的工具软件
        2.4.1 固件解压工具
        2.4.2 反汇编工具
        2.4.3 二进制文件查看工具
    2.5 本章小结
第3章 基于函数入口表的装载基址定位
    3.1 引言
    3.2 函数入口表的识别
        3.2.1 函数入口表的产生及其规律
        3.2.2 函数入口表识别算法FIND-FET
        3.2.3 函数入口表误判分析
    3.3 利用函数入口表定位装载基址
        3.3.1 ARM平台下二进制函数指令规律
        3.3.2 DBMFET算法
    3.4 实验结果与分析
        3.4.1 识别函数入口表的实验结果
        3.4.2 定位装载基址的实验结果及分析
        3.4.3 0xB5陷阱及解决方法
    3.5 本章小结
第4章 基于字符串地址集合的装载基址定位
    4.1 引言
    4.2 固件中的字符串及其地址识别
        4.2.1 固件中的字符串及其识别算法
        4.2.2 字符串地址的识别
    4.3 利用字符串地址匹配定位装载基址
    4.4 实验结果与分析
        4.4.1 字符串和LDR指令中地址识别实验结果
        4.4.2 定位装载基址的实验结果及分析
    4.5 本章小结
第5章 基于文字池匹配的装载基址定位
    5.1 引言
    5.2 字符串和文字池识别
        5.2.1 固件中的字符串
        5.2.2 文字池的识别
    5.3 利用文字池匹配定位装载基址
    5.4 实验结果与分析
        5.4.1 字符串和文字池识别实验结果
        5.4.2 定位装载基址实验结果及分析
    5.5 本章小结
第6章 基于字符串存储长度分组匹配的装载基址定位
    6.1 引言
    6.2 ARM固件加载字符串地址的方式
    6.3 利用字符串存储长度分组匹配定位装载基址
    6.4 实验结果与分析
        6.4.1 字符串和LDR指令中地址识别实验结果
        6.4.2 定位装载基址的实验结果
    6.5 本章小结
第7章 定位固件装载基址方法对比
    7.1 方法总结
    7.2 失败原因分析
    7.3 效率测试与对比分析
        7.3.1 装载基址定位方法的效率测试
        7.3.2 效率对比
    7.4 本章小结
结论
    1 本文主要工作和创新点
    2 下一步工作展望
参考文献
附录
    附录A IDC脚本
    附录B 实验结果
        B.1 基于函数入口表的装载基址定位方法实验结果
        B.2 基于字符串地址集合的装载基址定位方法实验结果
        B.3 基于文字池匹配的装载基址定位方法实验结果
        B.4 基于字符串存储长度分组匹配的装载基址定位方法实验结果
攻读学位期间发表论文与研究成果清单
致谢



本文编号:3927159

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/3927159.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户22a9f***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com