[发明专利]Android设备内核漏洞的修补系统及方法有效

专利信息
申请号: 201710405313.9 申请日: 2017-05-31
公开(公告)号: CN107273750B 公开(公告)日: 2021-03-16
发明(设计)人: 张媛媛;张雪雯;束骏亮;李卷孺;谷大武 申请(专利权)人: 上海交通大学
主分类号: G06F21/57 分类号: G06F21/57;G06F8/65;G06F9/445;G06F11/07
代理公司: 上海交达专利事务所 31201 代理人: 王毓理;王锡麟
地址: 200240 *** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: android 设备 内核 漏洞 修补 系统 方法
【权利要求书】:

1.一种基于Android设备内核漏洞的修补系统的内核漏洞的修补方法,其特征在于,所述的修补系统包括:修复信息采集模块、启发式匹配模块、内核页表处理模块和修复模块,其中:修复信息采集模块与启发式匹配模块相连并传输CVE信息,启发式匹配模块与修复模块相连并传输漏洞点位置,即修补代码的插入点位置,内核页表处理模块与修复模块相连并传输分配的可执行内存信息,修复模块根据分配的可执行内存信息和漏洞点位置实现漏洞的修复;

所述的修补方法,包括以下步骤:

步骤1)从Google每月发布的安全通告中获取CVE相关的修复信息;

步骤2)选取某一不常用的syscall的内核页表,进行写权限改写和代码改写,触发系统调用进行可执行内存分配,最后恢复内核页表;

所述的写权限改写是指:根据不同厂商采用的不同防护手段,对内核页表权限进行修改,使放置该syscall的内核代码区域可写;

所述的代码改写是指:重写syscall代码,根据内核符号信息得到的syscall内核代码位置重写一段分配可执行内存的shellcode,使得在调用该syscall时能够得到内核中一段用于未来放置修补代码的可执行区域;该syscall的调用结果将返回可执行区域的地址;

所述的内核符号信息,通过从Android设备上的/proc/kallsyms读取由kallsyms存储的内核的所有函数地址和名称;

步骤3)根据修补信息以及内核符号信息定位存在漏洞的函数,然后通过启发式匹配策略搜索定位漏洞点以及相关的漏洞修补信息;

所述的定位是指:通过访问内核虚拟内存的路径/dev/kmem定位存在漏洞的函数;

所述的漏洞修补信息是指:修补代码涉及到的存储相关变量的寄存器或内存地址;

步骤4)根据启发式匹配策略定位的漏洞点以及相关修补信息,生成修补代码,并进行漏洞点重写修补,将修补代码放置于及步骤2得到的可执行区域上;

所述的启发式匹配策略根据以下特征进行匹配:助记符和操作符、常数、调用约定关系、结构体的相对偏移、ARM体系的汇编代码特征;

所述的启发式匹配策略中,匹配的特征包括:助记符和操作符、常数、调用约定关系、结构体的相对偏移以及ARM体系的汇编代码特征;

所述的修补信息包括:该CVE中的具有漏洞的函数以及修复代码;

所述的重写修补:

1)对于内核,有以下两种方式来是使内核代码只读;一种是CONFIG DEBUG RODATA选项,会对页表采用单层映射;另一种是高通的CONFIG_STRICT_MEMORY_RWX选项,采用页映射;

2)重写页表后,直接修改内核代码会crash;通过研究分析,每个进程在建立的时候会拷贝内核页表的区域,所以通过新启动一个进程来进行代码修改;

3)选取的syscall的短期修改不影响系统的正常使用;

所述的漏洞点重写修补,具体包括以下步骤:

A)对漏洞点代码段的页表权限进行修改增加写权限;

B)在漏洞点处重写跳转指令,将其指向可执行区域地址;

C)在可执行区域中写入修补代码;

D)将漏洞点代码段的页表权限恢复至修改前状态。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710405313.9/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top