SB2022121301 - Multiple vulnerabilities in Vim
Published: December 13, 2022
Breakdown by Severity
- Low
- Medium
- High
- Critical
Description
This security bulletin contains information about 6 secuirty vulnerabilities.
1) Incorrect Comparison (CVE-ID: CVE-2022-4293)
The vulnerability allows a remote attacker to crash the application.
The vulnerability exists due to a floating point exception within the num_divide() function in eval.c. A remote attacker can trick the victim to open a specially crafted file and crash the application.
2) Use-after-free (CVE-ID: CVE-2022-4292)
The vulnerability allows a remote attacker to compromise vulnerable system.
The
vulnerability exists due to a use-after-free error within the did_set_spelllang() funtion in spell.c. A remote attacker can trick the
victim to open a specially crafted file, trigger a use-after-free error
and execute arbitrary code on the system.
Successful exploitation of the vulnerability may allow an attacker to compromise vulnerable system.
3) Heap-based buffer overflow (CVE-ID: CVE-2022-3491)
The vulnerability allows a remote attacker to execute arbitrary code on the target system.
The vulnerability exists due to a boundary error within the skipwhite() function in charset.c. A remote attacker can trick the victim to open a specially crafted file, trigger a heap-based buffer overflow and execute arbitrary code on the target system.
Successful exploitation of this vulnerability may result in complete compromise of vulnerable system.
4) Heap-based buffer overflow (CVE-ID: CVE-2022-3520)
The vulnerability allows a remote attacker to execute arbitrary code on the target system.
The vulnerability exists due to a boundary error within the inc() function in misc2.c. A remote attacker can trick the victim to open a specially crafted file, trigger a heap-based buffer overflow and execute arbitrary code on the target system.
Successful exploitation of this vulnerability may result in complete compromise of vulnerable system.
5) Use-after-free (CVE-ID: CVE-2022-3591)
The vulnerability allows a remote attacker to compromise vulnerable system.
The vulnerability exists due to a use-after-free error within the bt_quickfix() function in buffer.c. A remote attacker can trick the victim to open a specially crafted file, trigger a use-after-free error and execute arbitrary code on the system.
Successful exploitation of the vulnerability may allow an attacker to compromise vulnerable system.
6) Heap-based buffer overflow (CVE-ID: CVE-2022-4141)
The vulnerability allows a remote attacker to execute arbitrary code on the target system.
The vulnerability exists due to a boundary error. A remote attacker can trick the victim to execute the CTRL-W gf in the expression used in the RHS of the substitute command, trigger a heap-based buffer overflow and execute arbitrary code on the target system.
Successful exploitation of this vulnerability may result in complete compromise of vulnerable system.
Remediation
Install update from vendor's website.
References
- https://huntr.dev/bounties/385a835f-6e33-4d00-acce-ac99f3939143
- https://github.com/vim/vim/commit/cdef1cefa2a440911c727558562f83ed9b00e16b
- https://huntr.dev/bounties/da3d4c47-e57a-451e-993d-9df0ed31f57b
- https://github.com/vim/vim/commit/c3d27ada14acd02db357f2d16347acc22cb17e93
- https://huntr.dev/bounties/6e6e05c2-2cf7-4aa5-a817-a62007bf92cb
- https://github.com/vim/vim/commit/3558afe9e9e904cabb8475392d859f2d2fc21041
- https://github.com/vim/vim/commit/36343ae0fb7247e060abfd35fb8e4337b33abb4b
- https://huntr.dev/bounties/c1db3b70-f4fe-481f-8a24-0b1449c94246
- https://github.com/vim/vim/commit/8f3c3c6cd044e3b5bf08dbfa3b3f04bb3f711bad
- https://huntr.dev/bounties/a5a998c2-4b07-47a7-91be-dbc1886b3921
- https://huntr.dev/bounties/20ece512-c600-45ac-8a84-d0931e05541f
- https://github.com/vim/vim/commit/cc762a48d42b579fb7bdec2c614636b830342dd5
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/AZ3JMSUCR6Y7626RDWQ2HNSUFIQOJ33G/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/V6ZNKVN4GICORTVFKVCM4MSOXCYWNHUC/