linux 用户提权

利用系统漏洞或者程序等方面的缺陷使一个低权限用户,获得他们原本不具有的权限或者得到root权限

下面介绍几种可能得到root访问权限的方式

1, 内核开发

防护:及时更新补丁

臭名昭著的脏牛(DirtyCow)漏洞可在Linux内核3.19.0-3.73.8之间利用

原理:Linux内核的内存子系统在处理写时拷贝(Copy-on-Write)时存在条件竞争漏洞,导致可以破坏私有只读内存映射。一个低权限的本地用户能够利用此漏洞获取其他只读内存映射的写权限,有可能进一步导致提权漏洞。

实现:通过编辑/etc/passwd文件,将"root"用户替换为新用户"rash"

2,利用正在以root身份运行的服务

ps -aux | grep root   #显示以root用户身份运行的服务
netstat -antup #该命令可以显示所有打开并正在监听的端口,我们可以通过此命令检查是否有可以利用的本地服务

利用以root身份运行的受漏洞影响MySQL来获取root访问权限:
MySQL UDF动态库漏洞利用可以允许我们从MySQL Shell执行任意命令。如果MySQL是以root权限运行的,那么这些命令就会以root身份来执行。

一些网络管理员的最大失误,就是运行具有root权限的网络服务器

但root用户程序进行二进制利用的风险要比内核利用小得多,原因在于即使服务崩溃,主机也不会崩溃,并且服务可能会自动重启。

防范:除非真正需要,否则绝不要以root身份运行任何服务,特别是Web、数据库和文件服务器

3,利用可执行文件SUID

SUID 即 Set User ID(设置用户ID),它允许用户使用指定用户的权限来执行文件。

例如,Linux中的ping命令通常需要root权限才能打开原始的网络套接字。如果将ping程序的SUID标记为root用户,就可以让低权限用户在执行程序时,直接以root权限执行。

-rwsr-xr-x- 如果其中的x字符被s替代,则证明设置了相应的SUID

find / -perm -u=s -type f 2>/dev/null    #查看设置了SUID位的可执行文件。

给文件赋予SUID权限的两种方式
chmod 4xxx test.file (后面xxx中任何一个有可执行权限即可)
chmod u+x test.file

撤销权限就直接重新赋予权限

防范方法:
不应将SUID位设置为允许转到Shell的任何程序。
不应该在任何文件编辑器、编译器、解释器上设置SUID位,这样可以让攻击者轻松读取、覆盖系统上存在的任何文件。

4,利用sudo权限/用户

如果攻击者不能通过其他技直接获得root访问权限,那么他可能会尝试破坏任何拥有SUDO访问权限的用户。一旦攻击者有权访问任何SUDO用户,那么他基本上就可以使用root权限执行任何命令。

sudo -l     #查看允许sudo运行的命令

我们可以以SUDO运行find、cat和python。这些命令在用SUDO时会以root用户身份运行。如果我们可以通过这些命令,以某种方式逃逸到Shell,那我们就可以获得root权限。

sudo find /home -exec sh -i \;   #find命令的exec参数可用于任意代码执行。

防范:

不要将SUDO权限授予任何允许逃逸到Shell的程序。
不要将SUDO权限赋予vi、more、less、perl、ruby、gdb等命令。

5,利用未正确配置的CRON任务

cron任务,linux定时任务的一种

参考:

https://zhuanlan.zhihu.com/p/33927828

linux 提权防护的更多相关文章

  1. Linux提权(1)-基础版~

    利用Linux内核漏洞提权 VulnOS version 2是VulHub上的一个Linux提权练习,当打开虚拟机后,可以看到 获取到低权限SHELL后我们通常做下面几件事 1.检测操作系统的发行版本 ...

  2. 又一款linux提权辅助工具

    又一款linux提权辅助工具 – Linux_Exploit_Suggester 2013-09-06 10:34 1455人阅读 评论(0) 收藏 举报 https://github.com/Pen ...

  3. Linux提权:从入门到放弃

    *原创作者:piece of the past,本文属Freebuf原创奖励计划,未经许可禁止转载 日站就要日个彻底.往往我们能拿下服务器的web服务,却被更新地比西方记者还快的管理员把内网渗透的种子 ...

  4. 记一次初步Linux提权

    前言. 提权这么久了  还是头一次提下Linux的服务器... 由于之前一直钻研的win服务器  要不是前些日子爆出来Struts2-045漏洞 估计还没时间接触Linux提权.... 正文. st2 ...

  5. 免考final linux提权与渗透入门——Exploit-Exercise Nebula学习与实践

    免考final linux提权与渗透入门--Exploit-Exercise Nebula学习与实践 0x0 前言 Exploit-Exercise是一系列学习linux下渗透的虚拟环境,官网是htt ...

  6. 利用Metasploit进行Linux提权

    利用Metasploit进行Linux提权 Metasploit 拥有msfpayload 和msfencode 这两个工具,这两个工具不但可以生成exe 型后门,一可以生成网页脚本类型的webshe ...

  7. 20. Linux提权:从入门到放弃

    几点前提 已经拿到低权shell 被入侵的机器上面有nc,python,perl等linux非常常见的工具 有权限上传文件和下载文件 内核漏洞提权 提到脏牛,运维流下两行眼泪,我们留下两行鼻血.内核漏 ...

  8. Unix/Linux提权漏洞快速检测工具unix-privesc-check

    Unix/Linux提权漏洞快速检测工具unix-privesc-check   unix-privesc-check是Kali Linux自带的一款提权漏洞检测工具.它是一个Shell文件,可以检测 ...

  9. Linux提权中常见命令大全

    在拿到一个 webshell 之后,大家首先会想到去把自己的权限提升到最高,windows 我们会提升到 SYSTEM 权限,而 Linux 我们会提升到 root 权限,拿在进行 Linux 提权的 ...

随机推荐

  1. python 爬虫爬取历年双色球开奖信息

    目前写的这些爬虫都是些静态网页,对于一些高级网页(像经过JS渲染过的页面),目前技术并不能解决,自己也是在慢慢学习过程中,如有错误,欢迎指正: 对面前端知识本人并不懂,过程中如果涉及到前端知识,也是百 ...

  2. Redis Hyperloglog的原理及数学理论的通俗理解

    redis中有一种数据格式,hyperloglog,本文就此数据结构的作用.redis的实现及其背后的数学原理作一个整理.当然本文不包含任何数学公式,而是希望用直观的例子帮大家理解. 主要内容如下: ...

  3. Let's Encrypt 证书 wget 报错

    最近发现一个奇怪的问题,网站使用 let's encrypt 的免费证书,浏览器访问时正常,但是wget的时候报错.报错信息如下: wget https://www.example.com --202 ...

  4. 微服务架构 | 5.1 使用 Netflix Hystrix 断路器

    目录 前言 1. Hystrix 基础知识 1.1 Hystrix 断路器强调调用 1.2 两大类别的 Hystrix 实现 1.3 舱壁策略 1.4 Hystrix 在远程资源调用失败时的决策过程 ...

  5. Python中的魔术方法

    什么是魔术方法? 在Python中,所有用"__"包起来的方法,都称为[魔术方法]. 魔术方法一般是为了让显示器调用的,你自己并不需要调用它们. __init__:初始化函数 这个 ...

  6. jsp 4-15

  7. c++17 新特性

    编译环境说明:gcc 8.1 + eclipse +windows 10 eclipse cpp默认支持c++14,做c++17开发时,需要手动进行配置. 1.关键字 1)constexpr c++1 ...

  8. Spring源码-IOC部分-Xml Bean解析注册过程【3】

    实验环境:spring-framework-5.0.2.jdk8.gradle4.3.1 Spring源码-IOC部分-容器简介[1] Spring源码-IOC部分-容器初始化过程[2] Spring ...

  9. 添加项目文件时候不要把引用文件直接放到bin-debug里

    如果时anycpu没问题,但是新建其他平台时,会重新生成失败,原因时无法找到dll,现象为x64目录下的debug文件夹为空

  10. 在IDE中添加widfly依赖

    动机:在IDE中添加widfly依赖 原由:widfly实现了servlet接口,有我们对外交互时所需求的jar包 步骤: 第一步: 找到module依赖的地方 第二步:点击左侧的添加按钮,点击Lib ...