A vulnerability was found in RPM's rpmbuild tarball processing. When processing a crafted source archive, the getTarSpec() function in tools/rpmbuild.cc passes an attacker-controlled tar archive member name to rpmExpand() as part of a %{basename:...} macro expression. A specially crafted .spec member name can therefore inject RPM macros, including Lua expressions, resulting in arbitrary code execution with the privileges of the user running rpmbuild. This can be exploited when a victim or automated build system processes an attacker-controlled source tarball using rpmbuild tarball mode (such as -ts, -ta, or -tb).
{
"binaries": [
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "librpm9"
},
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "librpmbuild9"
},
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "librpmio9"
},
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "librpmsign9"
},
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "python3-rpm"
},
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "rpm"
},
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "rpm-common"
},
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "rpm-i18n"
},
{
"binary_version": "4.17.0+dfsg1-4build1",
"binary_name": "rpm2cpio"
}
]
}{
"binaries": [
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "librpm9t64"
},
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "librpmbuild9t64"
},
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "librpmio9t64"
},
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "librpmsign9t64"
},
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "python3-rpm"
},
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "rpm"
},
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "rpm-common"
},
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "rpm-i18n"
},
{
"binary_version": "4.18.2+dfsg-2.1build2",
"binary_name": "rpm2cpio"
}
]
}{
"binaries": [
{
"binary_version": "6.0.1-1build1",
"binary_name": "librpm10"
},
{
"binary_version": "6.0.1-1build1",
"binary_name": "librpmbuild10"
},
{
"binary_version": "6.0.1-1build1",
"binary_name": "librpmio10"
},
{
"binary_version": "6.0.1-1build1",
"binary_name": "librpmsign10"
},
{
"binary_version": "6.0.1-1build1",
"binary_name": "python3-rpm"
},
{
"binary_version": "6.0.1-1build1",
"binary_name": "rpm"
},
{
"binary_version": "6.0.1-1build1",
"binary_name": "rpm-common"
},
{
"binary_version": "6.0.1-1build1",
"binary_name": "rpm2cpio"
}
]
}{
"binaries": [
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "debugedit"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "librpm3"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "librpmbuild3"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "librpmio3"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "librpmsign1"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "python-rpm"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "rpm"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "rpm-common"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "rpm-i18n"
},
{
"binary_version": "4.11.1-3ubuntu0.1+esm1",
"binary_name": "rpm2cpio"
}
]
}{
"binaries": [
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "debugedit"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "librpm3"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "librpmbuild3"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "librpmio3"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "librpmsign3"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "python-rpm"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "python3-rpm"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "rpm"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "rpm-common"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "rpm-i18n"
},
{
"binary_version": "4.12.0.1+dfsg1-3ubuntu0.1~esm1",
"binary_name": "rpm2cpio"
}
]
}{
"binaries": [
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "debugedit"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "librpm8"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "librpmbuild8"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "librpmio8"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "librpmsign8"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "python-rpm"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "python3-rpm"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "rpm"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "rpm-common"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "rpm-i18n"
},
{
"binary_version": "4.14.1+dfsg1-2ubuntu0.1~esm1",
"binary_name": "rpm2cpio"
}
]
}{
"binaries": [
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "debugedit"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "librpm8"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "librpmbuild8"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "librpmio8"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "librpmsign8"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "python-rpm"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "python3-rpm"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "rpm"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "rpm-common"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "rpm-i18n"
},
{
"binary_version": "4.14.2.1+dfsg1-1ubuntu0.1~esm1",
"binary_name": "rpm2cpio"
}
]
}