前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CVE-2019-13272:Linux本地内核提权漏洞复现

CVE-2019-13272:Linux本地内核提权漏洞复现

作者头像
Power7089
发布2019-10-28 17:30:50
3K0
发布2019-10-28 17:30:50
举报

本文作者:axKcV(Timeline Sec核心成员)

本文共766字,阅读大约需要2分钟

0x00 简介

2019年07月20日,Linux正式修复了一个本地内核提权漏洞。通过此漏洞,攻击者可将普通权限用户提升为Root权限。

0x01 漏洞概述

当调用PTRACE_TRACEME时,ptrace_link函数将获得对父进程凭据的RCU引用,然后将该指针指向get_cred函数。但是,对象struct cred的生存周期规则不允许无条件地将RCU引用转换为稳定引用。

PTRACE_TRACEME获取父进程的凭证,使其能够像父进程一样执行父进程能够执行的各种操作。如果恶意低权限子进程使用PTRACE_TRACEME并且该子进程的父进程具有高权限,该子进程可获取其父进程的控制权并且使用其父进程的权限调用execve函数创建一个新的高权限进程。

0x02 影响版本

目前受影响的Linux内核版本:

Linux Kernel < 5.1.17

0x03 环境搭建

创建一个低权限账户

代码语言:javascript
复制
useradd test   # 创建test用户passwd test    # 给test用户设置密码

切换到test用户

代码语言:javascript
复制
su test

查看系统内核版本是否小于5.1.17

代码语言:javascript
复制
uname-a

0x04 漏洞利用

查看当前用户和当前用户的UID

下载漏洞利用脚本,保存为poc.c文件

https://github.com/bcoles/kernel-exploits/tree/master/CVE-2019-13272

使用gcc编译c文件,生成exp文件

代码语言:javascript
复制
gcc poc.c -o exp

运行生成的exp

代码语言:javascript
复制
./exp

可以看到已成功利用exp将普通用户test提升为root

查看一下成功利用后的当前用户

查看当前用户的UID,已变为root

0x05 修复方式


补丁修复链接:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6994eefb0053799d2e07cd140df6c2ea106c41ee

0x06 小结


此漏洞为本地提权漏洞,在vps是不能成功的,所以对于渗透测试人员来说,该漏洞更适用于在企业内网中做测试,对于甲方安全人员,只有三个字,打补丁。

vps上执行exp结果:

EXP脚本:

https://github.com/bcoles/kernel-exploits/tree/master/CVE-2019-13272

参考链接:

https://www.secpulse.com/archives/110052.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小白帽学习之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档