KEPLER: Facilitating Control-flow Hijacking Primitive Evaluation for Linux Kernel Vulnerabilities

Abstract

自动利用的挑战:将一个可利用的状态与一个rop链相连。控制流劫持是一个方案。

困境:普遍的利用缓解技术,利用路径上的陷阱和不适宜的原语,导致手工生成linux内核利用原语都很困难。

成果:提出KEPLER来生成一个单发的利用链来帮助利用生成。

具体:接受一个控制流劫持原语作为输入,符号化地缝合一些流行内核编码风格和相应片段以生成ROP载荷。

实验:通过比较先前地自动利用生成技术和内核利用技术,展示了KEPLER地有效性。

1 介绍

内核漏洞威胁很高,一种直接办法是修复所有知道地bug。实际上,因为人力有限,不足以及时修复所有bug,只能优先修补那些安全威胁最高的bug。

研究意义:

  • 自动化生成poc来验证bug的可利用性是首选的方案。[7] [3] [9] [64] [5] [55] [30] [75]
  • 另一方面,自动化利用生成还能帮助在CTF比赛中快速得分。
  • 同时,这些产生的漏洞可能有助于防御方评估新内核利用缓解方案的有效性。

自动利用生成系统分为两个步骤:

  • 利用原语识别:根据崩溃输入寻找预定义的利用原语。
  • 利用原语评估:建立利用约束,求解约束,使利用生效。

三个挑战:

  • 利用缓解技术
  • 利用路径中的陷阱(利用路径执行导致的难以预料的结果)
  • 不合适的利用原语:利用原语不满足生成利用的条件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值