zoukankan      html  css  js  c++  java
  • CVE-2019-14287

    • 漏洞存在于sudo工具1.8.28之前的版本。

    • 利用条件:掌握普通用户密码;该用户拥有一定的sudo权限(对sudo命令进行了特殊的配置)。

    • 一开始有点懵,我都有用户密码,直接sudo -i就是root了,这算什么提权?后来发现sudo远没有想象的简单,典型的配置如:

      test_user ALL=(!root) /bin/bash
      test_user ALL=(ALL) NOPASSWD:/usr/bin/id
      

      sudo是可以使用指定用户(缺省为“root”)身份执行命令,在这种配置下用户可以使用sudo id这样的命令来获得一个root用户的uid,但是却不能获取一个root权限的shell。

      image-20201027194229101

    漏洞复现

    漏洞是客观存在的,但是利用条件很苛刻:管理员出于某些需要限制了某些用户的root使用权,比如

    root    ALL=(ALL:ALL) ALL
    test    ALL=(ALL) NOPASSWD:/usr/bin/id
    test    ALL=(ALL,!root) /tmp/echo.sh
    # 一定是(ALL,!root)
    

    这样的设置表示:允许用户使用除了root用户以外的用户来执行/tmp/echo.sh,效果如下:

    image-20201027200954006

    使用sudo -u#-1 /tmp/echo.sh进行越权操作:(或者4294967295

    image-20201027201056125

    但是,如果管理员将其可用用户进行细分,该漏洞就无法利用

    test    ALL=(ubuntu,!root) /tmp/echo.sh
    

    image-20201027201310128

  • 相关阅读:
    一个maven问题
    zz 聊聊并发(七)——Java中的阻塞队列
    聊聊并发(六)
    jvm 内存参数
    zz 聊聊并发(五)
    zz 聊聊并发(四)
    zz 聊聊并发(三)
    zz 聊聊并发(二)
    zz 聊聊并发(一)
    JQuery中$.ajax()方法参数详解
  • 原文地址:https://www.cnblogs.com/ph1sh/p/13887976.html
Copyright © 2011-2022 走看看