Vim is an open source, command line text editor. Prior to 9.2.0736, the PHP omni-completion script in runtime/autoload/phpcomplete.vim interpolates a class or trait name, taken from the contents of the edited buffer, into a search() pattern that is run via win_execute() without escaping. A name containing a single quote can terminate the search() string argument early, and because the bar is honored as an Ex command separator, the remainder of the name is run as Ex commands; via the :! command this allows arbitrary operating-system command execution when a victim opens a crafted PHP file and invokes omni-completion. This issue is fixed in version 9.2.0736.
{
"binaries": [
{
"binary_name": "vim",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "vim-athena",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "vim-common",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "vim-gtk",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "vim-gtk3",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "vim-gui-common",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "vim-nox",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "vim-runtime",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "vim-tiny",
"binary_version": "2:8.2.3995-1ubuntu2.34"
},
{
"binary_name": "xxd",
"binary_version": "2:8.2.3995-1ubuntu2.34"
}
],
"availability": "No subscription required"
}
{
"binaries": [
{
"binary_name": "vim",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "vim-athena",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "vim-common",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "vim-gtk3",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "vim-gui-common",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "vim-motif",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "vim-nox",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "vim-runtime",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "vim-tiny",
"binary_version": "2:9.1.0016-1ubuntu7.18"
},
{
"binary_name": "xxd",
"binary_version": "2:9.1.0016-1ubuntu7.18"
}
],
"availability": "No subscription required"
}
{
"binaries": [
{
"binary_name": "vim",
"binary_version": "2:9.1.2141-1ubuntu4.7"
},
{
"binary_name": "vim-common",
"binary_version": "2:9.1.2141-1ubuntu4.7"
},
{
"binary_name": "vim-gtk3",
"binary_version": "2:9.1.2141-1ubuntu4.7"
},
{
"binary_name": "vim-gui-common",
"binary_version": "2:9.1.2141-1ubuntu4.7"
},
{
"binary_name": "vim-motif",
"binary_version": "2:9.1.2141-1ubuntu4.7"
},
{
"binary_name": "vim-nox",
"binary_version": "2:9.1.2141-1ubuntu4.7"
},
{
"binary_name": "vim-runtime",
"binary_version": "2:9.1.2141-1ubuntu4.7"
},
{
"binary_name": "vim-tiny",
"binary_version": "2:9.1.2141-1ubuntu4.7"
},
{
"binary_name": "xxd",
"binary_version": "2:9.1.2141-1ubuntu4.7"
}
],
"availability": "No subscription required"
}