[发明专利]内核运行时随机化的装置和方法在审
| 申请号: | 201980096407.X | 申请日: | 2019-06-19 |
| 公开(公告)号: | CN113826098A | 公开(公告)日: | 2021-12-21 |
| 发明(设计)人: | 德米特里·卡萨特金 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F21/52 | 分类号: | G06F21/52;G06F21/62;G06F21/79 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 内核 运行 随机化 装置 方法 | ||
一种装置包括耦合至非易失性存储器和运行时内存的处理器。所述处理器用于从所述非易失性存储器中读取链接可执行镜像和随机化镜像。所述链接可执行镜像包括链接可执行程序,所述随机化镜像包括符号表、重定位表和对象表中的一种或多种。所述处理器加载所述链接可执行镜像生成运行时程序,执行运行时随机化生成随机化运行时程序,并执行所述随机化运行时程序。所述运行时随机化包括:将所述运行时程序的段复制到临时位置,其中,所述复制的段包括多个可重定位对象;根据所述多个可重定位对象的随机顺序,将每个可重定位对象写入所述运行时程序,生成随机化运行时程序;以及对所述随机化运行时程序执行重定位。
技术领域
所公开的实施例的方面总体涉及计算装置,更特别地,涉及移动通信装置内的软件安全性。
背景技术
现代计算装置,例如手机和其他支持通信的移动计算设备,使用操作系统内核(称为内核)来管理装置内运行的软件应用。内核,尤其是LinuxTM内核,已知容易受到各种攻击,这些攻击可能会进行权限升级,例如获取根访问权限或根能力。
Linux内核通常从由内核链接配置确定的众所周知的虚拟地址开始,在链接期间确定内核中所有功能和数据的位置,并且每次加载内核时保持不变。许多漏洞或攻击都是基于对内核函数和数据的了解,以及它们在地址空间中的位置。例如,有一类攻击被称为返回导向编程(return oriented programming,简称ROP)攻击或返回libc,基于对其运行时地址的了解,利用内核代码的一小部分(称为小工具)。这种类型的攻击所需的信息可以从内核镜像和数据泄露中获得。
防止这些攻击的一种方法是内核地址空间布局随机化(kernel address spacelayout randomization,简称KASLR)。KASLR旨在通过随机安排程序的重要数据区域,如随机安排可执行文件的基址、数据、栈、堆以及包含库的类似区域,防止攻击者跳转到已知的小工具。
当在内核加载时使用KASLR时,攻击者只需获取单个函数的地址,即可确定其余所有内核函数和数据对象的地址。在内核的启动或执行过程中,某些内核函数的地址往往会通过数据泄露而暴露出来,从而危害利用KASLR加载的内核。
其他的随机化和加载技术已经被尝试过,然而每一种技术都有其已知的漏洞。因此,需要改进的方法和装置来保护内核或其他加载的软件程序不被利用。相应地,需要提供解决至少一些上述问题的方法和装置。
发明内容
所公开的实施例的目的是在计算装置中执行时为内核和其他软件程序提供更好的软件安全性。这个目的由独立权利要求的主题实现。进一步有利的修改可以在从属权利要求中找到。
第一方面,上述及其他目的和优点通过包括耦合至非易失性存储器和运行时内存的处理器的装置获得。所述处理器用于从所述非易失性存储器中读取链接可执行镜像和随机化镜像。所述链接可执行镜像包括链接可执行程序,所述随机化镜像包括符号表、重定位表和对象表中的一种或多种。所述处理器将所述链接可执行镜像加载到所述运行时内存中以生成运行时程序,并对所述运行时程序进行运行时随机化以生成随机化运行时程序,并执行所述随机化运行时程序。所述运行时随机化包括将所述运行时程序的段复制到临时位置,其中,所述复制的段包括多个可重定位对象;根据所述多个可重定位对象的随机顺序,将所述多个可重定位对象中的每个可重定位对象写入所述运行时程序,生成随机化运行时程序;以及对所述随机化运行时程序执行重定位。执行所述重定位包括更新符号表、重定位表、代码段和数据段中的一个或多个。随机排序所述多个可重定位对象可以防止攻击者使用所述可重定位对象的一部分,通过将每个可重定位对象放置在所述运行时程序内不可预测和未知的位置,从而危害所述运行时程序。
根据第一方面,在所述装置的一种可能的实现方式中,所述处理器用于在复制所述段之后擦除所述段。擦除或初始化所述段使用的内存,确保程序对象或函数均不能被攻击者定位和/或使用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980096407.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:夹合装置
- 下一篇:一种链路检测的方法、装置及相关设备





