Commit b66ef13c by 姚航

initial commit

parent 86ebbd41
# Linux提权
概念:在 Linux 系统中,特权提升(Privilege escalation)是指利用操作系统或应用软件中的程序漏洞、设计缺陷或配置疏忽来获取对应用程序或用户来说受保护资源的高级访问权限。其结果是,应用程序可以获取比应用程序开发者或系统管理员预期的更高的特权,从而可以执行授权的动作。
目的:通过命令执行漏洞获取的一个反弹shell或是通过Web漏洞获取了一个Webshell后,一般情况下权限都较低。在执行一些重要敏感的操作或是对重要的文件进行修改时无法正常进行,便需要进行提权。Linux中安装的数据库、中间件等一般都不是以root用户启动的,通过数据库或是中间件获取到的权限是是低权限的。
信息收集:任何提权的第一步操作一定是对操作系统进行信息收集。提权是否成功的关键是信息收集是否完整。
- 设备信息详情
版本详情:
![image-20250823151806993](photo/image-20250823151806993.png)
![image-20250825095719372](photo/image-20250825095719372.png)
内核信息:
![image-20250823151251133](photo/image-20250823151251133.png)
![image-20250825094228566](photo/image-20250825094228566.png)
sudo版本信息:
![image-20250823151858370](photo/image-20250823151858370.png)
![image-20250825083327799](photo/image-20250825083327799.png)
实施提权
Linux提权漏洞可以分为两大类:内核提权和应用层提权。内核提权是指利用操作系统内核的漏洞,例如Dirty Pipe漏洞(CVE-2022-0847)通过写入只读文件来获取root权限。应用层提权则包括利用文件权限错误(如对 /etc/shadow 文件的写入权限)、配置错误(如滥用sudo、可写脚本被root调用)、弱密码、已安装软件的漏洞或内部服务等。
应用层提权
1.sudo 相关漏洞
Sudo 是 Linux 系统管理指令,是允许系统管理员让普通用户执行一些或者全部的 root 指令的一个工具,如 halt、reboot、su 等。使用户能在无须获取 root 帐号的情况下达到目的,并留下系统事件记录以供检查,一旦这类工具存在弱点,很有可能成为攻击者取得特殊权限的管道。
- **CVE-2025-32462(Linux sudo host 权限提升漏洞)**:sudo 主机参数检查错误漏洞,影响版本:Sudo 1.8.8 至 1.9.17
sudo 的 - h(--host)选项未严格限制与 - l(--list)选项配合使用,攻击者可伪造主机名参数,绕过 sudoers 文件中的主机访问控制规则,在非授权主机上以 root 权限执行任意命令。
当 sudoers 配置文件中指定的主机不是目前主机(或不是 ALL)时,使用 -h 或 --host 选项仍可执行指令,而不仅是查询权限,这违反原本的访问控制意图。 可能导致用户绕过 sudo 的主机访问限制,在不该有权限的主机上执行命令。
- **CVE-2025-32463(Linux sudo chroot 权限提升漏洞)**:sudo 的 -R(--chroot)选项在权限检查前提前解析用户指定的根目录,攻击者构造恶意目录和伪造的 /etc/nsswitch.conf 文件,诱使 sudo 加载恶意动态库,绕过权限控制,实现本地提权。影响 Sudo 1.9.14 至 1.9.17 版本。
- **CVE-2025-6018(Linux sudo 环境变量处理权限提升漏洞)**:sudo 处理特定环境变量时存在逻辑缺陷,未严格过滤或验证变量内容,攻击者构造恶意环境变量,诱导 sudo 加载恶意动态库或篡改程序执行流程,绕过权限检查提权。部分 Sudo 1.9.1 至 1.9.15p5、1.9.16 至 1.9.17p2 版本受影响,可以在 /etc/sudoers 中通过 Defaults env_reset 严格限制环境变量传递来进行修复。
- **CVE-2025-6019(Linux sudo 命令参数解析权限提升漏洞)**:sudo 解析命令行参数时存在语法解析错误,攻击者构造特殊参数序列,绕过 sudoers 文件中的命令白名单限制,执行未授权高权限命令。影响 Sudo 1.8.31 至 1.9.17p2 版本,触发依赖 udisks2 服务(版本存在权限校验缺陷,允许未授权挂载操作)和 libblockdev 库(处理磁盘镜像时存在逻辑漏洞)。可以在 /etc/sudoers 中使用绝对路径严格限制可执行命令进行修复。
2.第三方应用相关漏洞
- **CVE-2025-27591(Linux Below 服务权限提升漏洞)**:源于 /var/log/below 目录被设置为全局可写(权限 777),攻击者创建符号链接将日志文件指向敏感文件(如 /etc/shadow),当 Below 服务以 root 权限写入日志时,间接修改目标文件,实现权限提升至 root。影响 Below 服务版本 < v0.9.0。
内核提权
- **CVE-2022-0847(Dirty Pipe(脏管道)漏洞)**:Linux 内核的 copy_page_to_iter_pipe 和 push_pipe 函数中,新管道缓冲区结构的 “flags” 成员未正确初始化,非特权本地用户利用此向只读文件支持的页面缓存写入数据,实现对任意可读文件的写操作,进而本地提权。影响 5.8<=Linux Kernel 版本 < 5.16.12/5.15.25/5.10.102。
- **CVE-2023-32629(Linux 内核 OverlayFS 权限检查绕过漏洞)**:Linux 内核 OverlayFS 实现在检查 trusted.overlayfs.* 扩展属性时存在权限检查绕过,允许本地用户构造特定文件系统操作提升权限。影响 6.2.0、5.19.0、5.4.0(Ubuntu 23.04 (Lunar Lobster) )等版本。
- **CVE-2024-1086(Linux kernel 权限提升漏洞)**:Linux 内核的 netfilter 子系统的 nf_tables 组件中,nft_verdict_init () 函数允许将正值作为 hook verdict 中的 drop 错误,导致 nf_hook_slow () 函数出现双重释放漏洞,本地攻击者利用此漏洞提权。影响 Linux 内核 3.15 至 6.8-rc1 版本。
- **CVE-2024-26809(Linux 内核 nftables 子系统双重释放漏洞)**:Linux 内核 nftables 数据包过滤功能中 pipapo 集合销毁过程存在逻辑缺陷,nft_pipapo_destroy () 函数对重叠内存区域错误调用两次 nft_set_pipapo_match_destroy (),导致内存损坏。攻击者通过内核对象缓存系统 kmalloc-256 进行堆布局和操控,获取 root 权限。影响 Linux 内核版本 6.1-rc1 以上以及 5.15.54 以上的系统。
- **CVE-2025-21756(Linux 内核微小漏洞引发完整 Root 提权攻击)**:传输重分配期间对套接字绑定状态处理不当,vsock 代码错误减少已解绑套接字的引用计数器,导致 vsock 对象过早释放。攻击者通过触发 UAF 漏洞,利用管道支持页面覆盖关键内核结构,泄露 init_net 的内存地址,绕过 KASLR,构建 ROP 链提升权限。影响具有 vsock 实现的 Linux 内核,如 6.6.79、6.12.16、6.13.4 和 6.14 - rc1 之前的版本。
- **CVE-2025-38236(Linux Kernel AF_UNIX UAF 漏洞)**:存在于 AF_UNIX 套接字处理 MSG_OOB(带外数据)时的逻辑缺陷,应用程序特定顺序读取 OOB 数据会导致内核出现 use - after - free 内存错误,攻击者利用悬空指针实现受控内存读写,从 Chrome 渲染器沙箱内实现权限提升 。影响 Linux Kernel 6.1.142 及更早版本、6.6.95 及更早版本、6.12.35 及更早版本、6.15.4 及更早版本、6.9 及以上版本。
在 Linux 系统中,本地提权是指低权限用户通过利用系统漏洞、配置错误或其他手段获取更高权限(通常是 root 权限)的过程。这对系统安全构成严重威胁,可能导致敏感数据泄露、系统被恶意篡改等后果。
**Linux信息收集**
任何提权的第一步操作一定是对操作系统进行信息收集。提权是否成功的关键是信息收集是否完整。
- 内核设备信息:
- uname -a 打印所有可用的系统信息
- uname -r 内核版本
- uname -n 系统主机名。
- uname -m 查看系统内核架构(64位/32位)
- hostname 系统主机名
- cat /proc/version 内核信息
- cat /etc/*-release 分发信息
- cat /etc/issue 分发信息
- cat /proc/cpuinfo CPU信息
- 用户和群组信息:
- cat /etc/passwd 列出系统上的所有用户
- cat /etc/group 列出系统上的所有组
- grep -v -E "^#" /etc/passwd | awk -F: '$3 == 0 { print $1}' 列出所有的超级用户账户
- whoami 查看当前用户
- w 谁目前已登录,他们正在做什么
- last 最后登录用户的列表
- lastlog 所有用户上次登录的信息
- lastlog -u %username% 有关指定用户上次登录的信息
- lastlog |grep -v "Never" 以前登录用户的信息
- 用户和权限信息:
- whoami 当前用户名
- id 当前用户信息
- cat /etc/sudoers 谁被允许以root身份执行
- sudo -l 当前用户可以以root身份执行操作
- 环境系统变量信息:
- env 显示环境变量
- set 现实环境变量
- echo %PATH 路径信息
- history 显示当前用户的历史命令记录
- pwd 输出工作目录
- cat /etc/profile 显示默认系统变量
- cat /etc/shells 显示可用的shell
1. sudo 相关漏洞
- **CVE-2025-32462(Linux sudo host 权限提升漏洞)**:sudo 的 - h(--host)选项未严格限制与 - l(--list)选项配合使用,攻击者可伪造主机名参数,绕过 sudoers 文件中的主机访问控制规则,在非授权主机上以 root 权限执行任意命令。影响 Sudo 1.8.8 至 1.9.17 版本 。
- **CVE-2025-32463(Linux sudo chroot 权限提升漏洞)**:sudo 的 -R(--chroot)选项在权限检查前提前解析用户指定的根目录,攻击者构造恶意目录和伪造的 /etc/nsswitch.conf 文件,诱使 sudo 加载恶意动态库,绕过权限控制,实现本地提权。影响 Sudo 1.9.14 至 1.9.17 版本。
- **CVE-2025-6018(Linux sudo 环境变量处理权限提升漏洞)**:sudo 处理特定环境变量时存在逻辑缺陷,未严格过滤或验证变量内容,攻击者构造恶意环境变量,诱导 sudo 加载恶意动态库或篡改程序执行流程,绕过权限检查提权。部分 Sudo 1.9.1 至 1.9.15p5、1.9.16 至 1.9.17p2 版本受影响,可以在 /etc/sudoers 中通过 Defaults env_reset 严格限制环境变量传递来进行修复。
- **CVE-2025-6019(Linux sudo 命令参数解析权限提升漏洞)**:sudo 解析命令行参数时存在语法解析错误,攻击者构造特殊参数序列,绕过 sudoers 文件中的命令白名单限制,执行未授权高权限命令。影响 Sudo 1.8.31 至 1.9.17p2 版本,触发依赖 udisks2 服务(版本存在权限校验缺陷,允许未授权挂载操作)和 libblockdev 库(处理磁盘镜像时存在逻辑漏洞)。可以在 /etc/sudoers 中使用绝对路径严格限制可执行命令进行修复。
2. 内核相关漏洞
- **CVE-2022-0847(Dirty Pipe(脏管道)漏洞)**:Linux 内核的 copy_page_to_iter_pipe 和 push_pipe 函数中,新管道缓冲区结构的 “flags” 成员未正确初始化,非特权本地用户利用此向只读文件支持的页面缓存写入数据,实现对任意可读文件的写操作,进而本地提权。影响 5.8<=Linux Kernel 版本 < 5.16.12/5.15.25/5.10.102。
- **CVE-2023-32629(Linux 内核 OverlayFS 权限检查绕过漏洞)**:Linux 内核 OverlayFS 实现在检查 trusted.overlayfs.* 扩展属性时存在权限检查绕过,允许本地用户构造特定文件系统操作提升权限。影响 6.2.0、5.19.0、5.4.0(Ubuntu 23.04 (Lunar Lobster) )等版本。
- **CVE-2024-1086(Linux kernel 权限提升漏洞)**:Linux 内核的 netfilter 子系统的 nf_tables 组件中,nft_verdict_init () 函数允许将正值作为 hook verdict 中的 drop 错误,导致 nf_hook_slow () 函数出现双重释放漏洞,本地攻击者利用此漏洞提权。影响 Linux 内核 3.15 至 6.8-rc1 版本。
- **CVE-2024-26809(Linux 内核 nftables 子系统双重释放漏洞)**:Linux 内核 nftables 数据包过滤功能中 pipapo 集合销毁过程存在逻辑缺陷,nft_pipapo_destroy () 函数对重叠内存区域错误调用两次 nft_set_pipapo_match_destroy (),导致内存损坏。攻击者通过内核对象缓存系统 kmalloc-256 进行堆布局和操控,获取 root 权限。影响 Linux 内核版本 6.1-rc1 以上以及 5.15.54 以上的系统。
- **CVE-2025-21756(Linux 内核微小漏洞引发完整 Root 提权攻击)**:传输重分配期间对套接字绑定状态处理不当,vsock 代码错误减少已解绑套接字的引用计数器,导致 vsock 对象过早释放。攻击者通过触发 UAF 漏洞,利用管道支持页面覆盖关键内核结构,泄露 init_net 的内存地址,绕过 KASLR,构建 ROP 链提升权限。影响具有 vsock 实现的 Linux 内核,如 6.6.79、6.12.16、6.13.4 和 6.14 - rc1 之前的版本。
- **CVE-2025-38236(Linux Kernel AF_UNIX UAF 漏洞)**:存在于 AF_UNIX 套接字处理 MSG_OOB(带外数据)时的逻辑缺陷,应用程序特定顺序读取 OOB 数据会导致内核出现 use - after - free 内存错误,攻击者利用悬空指针实现受控内存读写,从 Chrome 渲染器沙箱内实现权限提升 。影响 Linux Kernel 6.1.142 及更早版本、6.6.95 及更早版本、6.12.35 及更早版本、6.15.4 及更早版本、6.9 及以上版本。
3. **其他服务相关漏洞****CVE-2025-27591(Linux Below 服务权限提升漏洞)**:源于 /var/log/below 目录被设置为全局可写(权限 777),攻击者创建符号链接将日志文件指向敏感文件(如 /etc/shadow),当 Below 服务以 root 权限写入日志时,间接修改目标文件,实现权限提升至 root。影响 Below 服务版本 < v0.9.0。
3. linux其他提权方法:**抓取密码提权****利用SUID提权****计划任务提权****环境变量提权**
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment