Every CVE Search/ Get API key

CVE-2023-48232

Floating point Exception in adjust_plines_for_skipcol() in vim

3.9 LowFix available

Vim is an open source command line text editor. A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. This issue has been addressed in commit cb0b99f0 which has been included in release version 9.0.2107. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
Low
User interaction
Required

What an attacker can affect

Confidentiality
None
Integrity
Low
Availability
Low

Exploit likelihood

0.67%Up 0.6 points since Nov 17, 2023
90%50%10%1%

What each source reports

CVE List Score used 3.9

Floating point Exception in adjust_plines_for_skipcol() in vim

Vim is an open source command line text editor. A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. This issue has been addressed in commit cb0b99f0 which has been included in release version 9.0.2107. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Record
CVE-2023-48232
CVSS 3.1
3.9 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:L
Weakness
CWE-755
Updated
2026-11-02
EUVDEUVD-2023-52304 3.9

Vim is an open source command line text editor. A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. This issue has been addressed in commit cb0b99f0 which has been included in release version 9.0.2107. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Record
EUVD-2023-52304
CVSS 3.1
3.9 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:L
Updated
2026-11-02
NVD 3.9

Vim is an open source command line text editor. A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. This issue has been addressed in commit cb0b99f0 which has been included in release version 9.0.2107. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Record
CVE-2023-48232
CVSS 3.1
3.9 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:L
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Weakness
CWE-755
Updated
2026-11-02
OSVAZL-32009 4.3

CVE-2023-48232 affecting package vim for versions less than 9.0.2112-1

Vim is an open source command line text editor. A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. This issue has been addressed in commit cb0b99f0 which has been included in release version 9.0.2107. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Record
AZL-32009
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSVBELL-CVE-2023-48232 4.3
Record
BELL-CVE-2023-48232
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSV 3.9

Floating point Exception in adjust_plines_for_skipcol() in vim

Vim is an open source command line text editor. A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. This issue has been addressed in commit cb0b99f0 which has been included in release version 9.0.2107. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Record
CVE-2023-48232
CVSS 3.1
3.9 LowCVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:L
Weakness
CWE-755
Updated
2026-11-02
Show 6 moreShow less
OSVDEBIAN-CVE-2023-48232 4.3

Vim is an open source command line text editor. A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. This issue has been addressed in commit cb0b99f0 which has been included in release version 9.0.2107. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Record
DEBIAN-CVE-2023-48232
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSVROOT-OS-ALPINE-318-CVE-2023-48232 4.3

CVE-2023-48232 in vim - Patched by Root

Root has patched CVE-2023-48232 in the vim package for Root:Alpine:3.18. Multiple fixed versions available.

Record
ROOT-OS-ALPINE-318-CVE-2023-48232
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSVMGASA-2023-0341 No score

Updated vim packages fix security vulnerabilities

The updated packages fix security vulnerabilities

When closing a window, vim may try to access already freed window structure. Exploitation beyond crashing the application has not been shown to be viable. (CVE-2023-48231)

A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. (CVE-2023-48232)

If the count after the :s command is larger than what fits into a (signed) long variable, abort with e_value_too_large. Impact is low, user interaction is required and a crash may not even happen in all situations. (CVE-2023-48233)

When getting the count for a normal mode z command, it may overflow for large counts given. Impact is low, user interaction is required and a crash may not even happen in all situations. (CVE-2023-48234)

When parsing relative ex addresses one may unintentionally cause an overflow. Ironically this happens in the existing overflow check, because the line number becomes negative and LONG_MAX - lnum will cause the overflow. Impact is low, user interaction is required and a crash may not even happen in all situations. (CVE-2023-48235)

When using the z= command, the user may overflow the count with values larger than MAX_INT. Impact is low, user interaction is required and a crash may not even happen in all situations. (CVE-2023-48236)

In affected versions when shifting lines in operator pending mode and using a very large value, it may be possible to overflow the size of integer. Impact is low, user interaction is required and a crash may not even happen in all situations. (CVE-2023-48237)

When executing a :s command for the very first time and using a sub-replace-special atom inside the substitution part, it is possible that the recursive :s call causes free-ing of memory which may later then be accessed by the initial :s command. The user must intentionally execute the payload and the whole process is a bit tricky to do since it seems to work only reliably for the very first :s command. It may also cause a crash of Vim. (CVE-2023-48706)

The update fixes haproxy configuration paths used for syntax coloration.

Record
MGASA-2023-0341
Updated
2026-11-02
OSVSUSE-SU-2024:0783-1 No score

Security update for vim

This update for vim fixes the following issues:

  • CVE-2023-48231: Fixed Use-After-Free in win_close() (bsc#1217316).
  • CVE-2023-48232: Fixed Floating point Exception in adjust_plines_for_skipcol() (bsc#1217320).
  • CVE-2023-48233: Fixed overflow with count for :s command (bsc#1217321).
  • CVE-2023-48234: Fixed overflow in nv_z_get_count (bsc#1217324).
  • CVE-2023-48235: Fixed overflow in ex address parsing (bsc#1217326).
  • CVE-2023-48236: Fixed overflow in get_number (bsc#1217329).
  • CVE-2023-48237: Fixed overflow in shift_line (bsc#1217330).
  • CVE-2023-48706: Fixed heap-use-after-free in ex_substitute (bsc#1217432).
  • CVE-2024-22667: Fixed stack-based buffer overflow in did_set_langmap function in map.c (bsc#1219581).
  • CVE-2023-4750: Fixed heap use-after-free in function bt_quickfix (bsc#1215005).

Updated to version 9.1 with patch level 0111: https://github.com/vim/vim/compare/v9.0.2103...v9.1.0111

Record
SUSE-SU-2024:0783-1
Updated
2026-11-02
OSVSUSE-SU-2024:0871-1 No score

Security update for vim

This update for vim fixes the following issues:

  • CVE-2023-48231: Fixed Use-After-Free in win_close() (bsc#1217316).
  • CVE-2023-48232: Fixed Floating point Exception in adjust_plines_for_skipcol() (bsc#1217320).
  • CVE-2023-48233: Fixed overflow with count for :s command (bsc#1217321).
  • CVE-2023-48234: Fixed overflow in nv_z_get_count (bsc#1217324).
  • CVE-2023-48235: Fixed overflow in ex address parsing (bsc#1217326).
  • CVE-2023-48236: Fixed overflow in get_number (bsc#1217329).
  • CVE-2023-48237: Fixed overflow in shift_line (bsc#1217330).
  • CVE-2023-48706: Fixed heap-use-after-free in ex_substitute (bsc#1217432).
  • CVE-2024-22667: Fixed stack-based buffer overflow in did_set_langmap function in map.c (bsc#1219581).
  • CVE-2023-4750: Fixed heap use-after-free in function bt_quickfix (bsc#1215005).

Updated to version 9.1 with patch level 0111: https://github.com/vim/vim/compare/v9.0.2103...v9.1.0111

Record
SUSE-SU-2024:0871-1
Updated
2026-11-02
OSVSUSE-SU-2024:1287-1 No score

Security update for vim

This update for vim fixes the following issues:

Updated to version 9.1.0111, fixes the following security problems

  • CVE-2023-48231: Use-After-Free in win_close() (bsc#1217316).
  • CVE-2023-48232: Floating point Exception in adjust_plines_for_skipcol() (bsc#1217320).
  • CVE-2023-48233: overflow with count for :s command (bsc#1217321).
  • CVE-2023-48234: overflow in nv_z_get_count (bsc#1217324).
  • CVE-2023-48235: overflow in ex address parsing (CVE-2023-48235).
  • CVE-2023-48236: overflow in get_number (bsc#1217329).
  • CVE-2023-48237: overflow in shift_line (bsc#1217330).
  • CVE-2023-48706: heap-use-after-free in ex_substitute (bsc#1217432).
  • CVE-2024-22667: stack-based buffer overflow in did_set_langmap function in map.c (bsc#1219581).
  • CVE-2023-4750: Heap use-after-free in function bt_quickfix (bsc#1215005).
Record
SUSE-SU-2024:1287-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
vim
Azure Linux:2
before 9.0.2112-1
9.0.2112-1
vim
Alpaquita:23
9.0.0999-r0 up to 9.1.0936-r0
9.1.0936-r0
vim
Alpaquita:stream
9.0.1676-r0 up to 9.0.2127-r0
9.0.2127-r0
vim
Debian:12
All versions, plus listed versions
2:9.0.1378-22:9.0.1378-2+deb12u12:9.0.1378-2+deb12u22:9.0.1658-12:9.0.1672-1
Show 40 moreShow less
2:9.0.1894-12:9.0.2018-12:9.0.2087-12:9.0.2103-12:9.0.2116-12:9.0.2189-12:9.1.0-12:9.1.0016-12:9.1.0199-12:9.1.0374-12:9.1.0377-12:9.1.0496-12:9.1.0698-12:9.1.0709-12:9.1.0709-22:9.1.0777-12:9.1.0861-12:9.1.0967-12:9.1.0967-22:9.1.1113-12:9.1.1230-12:9.1.1230-22:9.1.1385-12:9.1.1766-12:9.1.1829-12:9.1.1846-12:9.1.1882-12:9.1.2103-12:9.1.2141-12:9.2.0119-12:9.2.0136-12:9.2.0218-12:9.2.0315-12:9.2.0338-12:9.2.0355-12:9.2.0428-12:9.2.0461-12:9.2.0524-12:9.2.0782-12:9.2.0858-1
None known
vim
Debian:13
before 2:9.0.2116-1
2:9.0.2116-1
vim
Debian:14
before 2:9.0.2116-1
2:9.0.2116-1
vim
Mageia:9
From an advisory covering 8 CVEs
before 9.0.2130-2.mga9
9.0.2130-2.mga9
vim
Root:Alpine:3.18
before 9.0.2073-r00071
9.0.2073-r000719.0.2073-r000729.0.2073-r000759.0.2073-r000749.0.2073-r000739.0.2073-r00076
rootio-vim
Root:Alpine:3.18
before 9.0.2073-r00071
9.0.2073-r000719.0.2073-r000729.0.2073-r000759.0.2073-r000749.0.2073-r000739.0.2073-r00076
vim
SUSE:Linux Enterprise Server 12 SP5
From an advisory covering 10 CVEs
before 9.1.0111-17.29.1
9.1.0111-17.29.1
Show 24 moreShow less
Affected packages
PackageAffectedFixed
vim
SUSE:Linux Enterprise Server for SAP Applications 12 SP5
From an advisory covering 10 CVEs
before 9.1.0111-17.29.1
9.1.0111-17.29.1
vim
SUSE:Linux Enterprise Micro 5.3
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Micro 5.4
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Server 15 SP2-LTSS
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Server 15 SP3-LTSS
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Server 15 SP4-LTSS
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Server for SAP Applications 15 SP2
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Server for SAP Applications 15 SP3
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Server for SAP Applications 15 SP4
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Manager Proxy 4.3
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Manager Server 4.3
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Micro 5.1
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Micro 5.2
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Enterprise Storage 7.1
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
openSUSE:Leap Micro 5.3
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
openSUSE:Leap Micro 5.4
From an advisory covering 10 CVEs
before 9.1.0111-150000.5.60.1
9.1.0111-150000.5.60.1
vim
SUSE:Linux Enterprise Micro 5.5
From an advisory covering 10 CVEs
before 9.1.0111-150500.20.9.1
9.1.0111-150500.20.9.1
vim
SUSE:Linux Enterprise Module for Basesystem 15 SP5
From an advisory covering 10 CVEs
before 9.1.0111-150500.20.9.1
9.1.0111-150500.20.9.1
vim
SUSE:Linux Enterprise Module for Desktop Applications 15 SP5
From an advisory covering 10 CVEs
before 9.1.0111-150500.20.9.1
9.1.0111-150500.20.9.1
vim
openSUSE:Leap 15.5
From an advisory covering 10 CVEs
before 9.1.0111-150500.20.9.1
9.1.0111-150500.20.9.1

History

History
RecordedChangedSources
affected, facts
first indexedCVE List, EUVD, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2023-48232 is a low vulnerability (CVSS 3.9) in Vim, published November 16, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.67%, the 52nd percentile. Fixed in vim 9.0.2112-1.

References

Show 31 moreShow less
MoveEnter Open