linux

如何利用Linux Exploit提权

小樊
46
2025-10-07 11:09:12
栏目: 智能运维

Linux Exploit提权方法与实战步骤

Linux系统提权是通过利用系统漏洞、配置错误或权限设计缺陷,从低权限用户(如普通用户)提升至root(最高权限)的过程,是渗透测试或安全研究中的关键环节。以下是常见的提权方法及详细操作步骤:

一、内核漏洞提权(最直接且高危)

内核漏洞提权是利用Linux内核本身的缺陷(如竞争条件、缓冲区溢出等)获取root权限的经典方法,适用于大多数本地提权场景。

1. 常规内核漏洞提权步骤

2. 经典内核漏洞:DirtyCow(CVE-2016-5195)

DirtyCow是Linux内核内存子系统的竞争条件漏洞,影响版本为Linux kernel < 3.9(CentOS 7/RHEL 7及以下、Ubuntu 16.04及以下等),允许低权限用户修改只读内存映射,进而提权。

二、SUID提权(滥用特权程序)

SUID(Set User ID)是Linux的特殊权限,允许用户执行文件时临时获得文件所有者的权限(如root)。若SUID程序存在配置错误或可被滥用,可用来提权。

1. 查找SUID文件

使用以下命令查找系统中所有设置了SUID位的文件(重点关注root所有的程序):
find / -perm -u=s -type f 2>/dev/nullfind / -user root -perm -4000 -exec ls -ldb {} \;

2. 常见可滥用SUID程序及利用方法

三、SUDO提权(配置错误导致)

sudo是允许普通用户以root权限执行命令的工具,若/etc/sudoers文件配置不当(如允许用户无密码执行所有命令),可用来提权。

1. 检查sudo权限

使用sudo -l命令查看当前用户的sudo权限,若输出中包含NOPASSWD:ALL(如test ALL=(ALL:ALL) NOPASSWD:ALL),则表示该用户可无密码执行任意root命令。

2. 利用sudo提权

若存在NOPASSWD:ALL权限,直接执行sudo /bin/bashsudo su -,即可切换至root用户。

四、计划任务(Cron)提权(配置不当)

计划任务(Cron)是系统定期执行的脚本或命令,若任务脚本存在可写权限或通配符注入漏洞,可用来提权。

1. 检查计划任务

使用以下命令查看系统计划任务:
cat /etc/crontab(系统级计划任务)、ls -la /etc/cron*/(用户级计划任务)、crontab -l(当前用户的计划任务)。

2. 常见利用场景

五、NFS提权(no_root_squash配置错误)

NFS(网络文件系统)是用于共享文件的服务,若共享目录开启了no_root_squash选项(默认关闭),客户端以root用户访问共享目录时,将拥有root权限。

1. 利用步骤

六、第三方服务提权(Docker组)

Docker是常用的容器化工具,若当前用户在docker组(可通过id | grep docker检查),可利用Docker挂载根目录并切换至root。

1. 利用步骤

注意事项

0
看了该问题的人还看了