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. http头文件

    http 文件头详解 HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写, 它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2616.HTTP协议采 ...

  2. Excel与MySQL数据库的导入与导出

    应用场景 在许多时候,我们希望数据能够很好地在各个系统之间转移,同时便于非专业人员阅读,如果程序员一点点打字导出的话,不知道要打到什么时候,于是我们便采用日常工作中常用的Excel表格来作为媒介,将数 ...

  3. 设置redis能远程访问

    远程服务器,redis 安装在/opt下redis-4.0.10 cd redis-4.0.10 修改配置文件redis.conf配置文件:(注释掉bind:127.0.0.1)和修改保护模式为no ...

  4. ApacheCN jQuery 译文集 20211121 更新

    创建 jQueryMobile 移动应用 零.序言 一.jQueryMobile 原型制作 二.jQuery Mobile 网站 三.分析.长表单和前端验证 四.QR 码.地理位置.谷歌地图 API ...

  5. 在windows、widfly环境下,远程debug

    最近:一直想弄一个远程debug模式,奈何没有接触过,导致畏首畏尾,不过,两天时间终于搞出来了雏形,真的是一个坑一个坑踩过来的. widfly环境:widfly8 准备工作:远程运行环境:省略,前面一 ...

  6. Spring Boot配置多个DataSource (转)

    使用Spring Boot时,默认情况下,配置DataSource非常容易.Spring Boot会自动为我们配置好一个DataSource. 如果在application.yml中指定了spring ...

  7. JSP、Servlet和Spring MVC

    感谢原博主!!!https://blog.csdn.net/whut2010hj/article/details/80874008 版权声明:本文为博主原创文章,遵循CC 4.0 BY版权协议,转载请 ...

  8. HTML-iframe标签

    碎碎:这两天在实践中,用到了 iframe,之前对其不甚了解,了解之中遇到好多奇葩问题,今天记录下这两天遇到的相关的内容. 嵌入的 iframe 页面的边框 嵌入的 iframe 页面的背景 嵌入的 ...

  9. js图片预览代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. uniapp 使用iconfont图标

    步骤一 新建项目 步骤二 导入需要的图标,然后下载图标代码 步骤三  打开下载的压缩文件中的iconfont.css 步骤四 复制粘贴到项目中 步骤四在项目中使用 use in page