Vim is an open source, command line text editor. Prior to version 9.1.2132, a heap buffer overflow vulnerability exists in Vim's tag file resolution logic when processing the 'helpfile' option. The vulnerability is located in the get_tagfname() function in src/tag.c. When processing help file tags, Vim copies the user-controlled 'helpfile' option value into a fixed-size heap buffer of MAXPATHL + 1 bytes (typically 4097 bytes) using an unsafe STRCPY() operation without any bounds checking. This issue has been patched in version 9.1.2132.
{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim-athena"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim-common"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim-gtk"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim-gtk3"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim-gui-common"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim-nox"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim-runtime"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "vim-tiny"
},
{
"binary_version": "2:8.2.3995-1ubuntu2.26",
"binary_name": "xxd"
}
],
"priority_reason": "Input that can cause a buffer overflow is supplied by the user"
}{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim-athena"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim-common"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim-gtk3"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim-gui-common"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim-motif"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim-nox"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim-runtime"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "vim-tiny"
},
{
"binary_version": "2:9.1.0016-1ubuntu7.10",
"binary_name": "xxd"
}
],
"priority_reason": "Input that can cause a buffer overflow is supplied by the user"
}{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim-athena"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim-common"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim-gtk3"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim-gui-common"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim-motif"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim-nox"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim-runtime"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "vim-tiny"
},
{
"binary_version": "2:9.1.0967-1ubuntu6.1",
"binary_name": "xxd"
}
],
"priority_reason": "Input that can cause a buffer overflow is supplied by the user"
}{
"availability": "Available with Ubuntu Pro with Legacy support add-on: https://ubuntu.com/pro",
"binaries": [
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-athena"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-common"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-gnome"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-gtk"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-gui-common"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-lesstif"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-nox"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-runtime"
},
{
"binary_version": "2:7.4.052-1ubuntu3.1+esm23",
"binary_name": "vim-tiny"
}
],
"priority_reason": "Input that can cause a buffer overflow is supplied by the user"
}{
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
"binaries": [
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-athena"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-athena-py2"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-common"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-gnome"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-gnome-py2"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-gtk"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-gtk-py2"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-gtk3"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-gtk3-py2"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-gui-common"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-nox"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-nox-py2"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-runtime"
},
{
"binary_version": "2:7.4.1689-3ubuntu1.5+esm29",
"binary_name": "vim-tiny"
}
],
"priority_reason": "Input that can cause a buffer overflow is supplied by the user"
}{
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
"binaries": [
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-athena"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-common"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-gnome"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-gtk"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-gtk3"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-gui-common"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-nox"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-runtime"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "vim-tiny"
},
{
"binary_version": "2:8.0.1453-1ubuntu1.13+esm14",
"binary_name": "xxd"
}
],
"priority_reason": "Input that can cause a buffer overflow is supplied by the user"
}{
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
"binaries": [
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim-athena"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim-common"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim-gtk"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim-gtk3"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim-gui-common"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim-nox"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim-runtime"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "vim-tiny"
},
{
"binary_version": "2:8.1.2269-1ubuntu5.32+esm2",
"binary_name": "xxd"
}
],
"priority_reason": "Input that can cause a buffer overflow is supplied by the user"
}