CVE-2023-4738
Heap-based Buffer Overflow in vim/vim
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.8
Heap-based Buffer Overflow in vim/vim
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
- Record
CVE-2023-4738- CVSS 3.0
- 7.8 High
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Weakness
- CWE-122
- Updated
- 2026-11-02
EUVDEUVD-2023-54586
7.8
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
- Record
EUVD-2023-54586- CVSS 3.0
- 7.8 High
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-x7vr-7frv-2rrh
7.8
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
- Record
GHSA-x7vr-7frv-2rrh- CVSS 3.0
- 7.8 High
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Weakness
- CWE-122, CWE-787
- Updated
- 2026-11-02
NVD
7.8
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
- Record
CVE-2023-4738- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - CVSS 3.0
- 7.8 High
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Weakness
- CWE-122, CWE-787
- Updated
- 2026-11-02
OSVALPINE-CVE-2023-4738
7.8
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
- Record
ALPINE-CVE-2023-4738- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
OSVAZL-28661
7.8
CVE-2023-4738 affecting package vim for versions less than 9.0.1897-1
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
- Record
AZL-28661- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Show 8 moreShow less
OSVBELL-CVE-2023-4738
7.8
- Record
BELL-CVE-2023-4738- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSV
7.8
Heap-based Buffer Overflow in vim/vim
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
- Record
CVE-2023-4738- CVSS 3.0
- 7.8 High
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Weakness
- CWE-122
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2023-4738
7.8
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
- Record
DEBIAN-CVE-2023-4738- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVOESA-2023-1653
7.8
vim security update
Vim is an advanced text editor that seeks to provide the power of the de-facto Unix editor 'Vi', with a more complete feature set. Vim is a highly configurable text editor built to enable efficient text editing. It is an improved version of the vi editor distributed with most UNIX systems.
Security Fix(es):
Use After Free in GitHub repository vim/vim prior to 9.0.1840.(CVE-2023-4733)
Integer Overflow or Wraparound in GitHub repository vim/vim prior to 9.0.1846.(CVE-2023-4734)
Out-of-bounds Write in GitHub repository vim/vim prior to 9.0.1847.(CVE-2023-4735)
Untrusted Search Path in GitHub repository vim/vim prior to 9.0.1833.(CVE-2023-4736)
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.(CVE-2023-4738)
Use After Free in GitHub repository vim/vim prior to 9.0.1857.(CVE-2023-4750)
Use After Free in GitHub repository vim/vim prior to 9.0.1858.(CVE-2023-4752)
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1873.(CVE-2023-4781)
- Record
OESA-2023-1653- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVopenSUSE-SU-2024:13226-1 No score
gvim-9.0.1894-1.1 on GA media
These are all security issues fixed in the gvim-9.0.1894-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:13226-1- Updated
- 2026-11-02
OSVSUSE-SU-2023:3942-1 No score
Security update for vim
This update for vim fixes the following issues:
Security fixes:
- CVE-2023-4733: Fixed use-after-free in function buflist_altfpos (bsc#1215004).
- CVE-2023-4734: Fixed segmentation fault in function f_fullcommand (bsc#1214925).
- CVE-2023-4735: Fixed out of bounds write in ops.c (bsc#1214924).
- CVE-2023-4738: Fixed heap buffer overflow in vim_regsub_both (bsc#1214922).
- CVE-2023-4752: Fixed heap use-after-free in function ins_compl_get_exp (bsc#1215006).
- CVE-2023-4781: Fixed heap buffer overflow in function vim_regsub_both (bsc#1215033).
Other fixes:
- Calling vim on xterm leads to missing first character of the command prompt (bsc#1211461)
- Rendering corruption in gvim with all 9.x versions (bsc#1210738)
- Updated to version 9.0 with patch level 1894
- Record
SUSE-SU-2023:3942-1- Updated
- 2026-11-02
OSVSUSE-SU-2023:3955-1 No score
Security update for vim
This update for vim fixes the following issues:
Security fixes:
- CVE-2023-4733: Fixed use-after-free in function buflist_altfpos (bsc#1215004).
- CVE-2023-4734: Fixed segmentation fault in function f_fullcommand (bsc#1214925).
- CVE-2023-4735: Fixed out of bounds write in ops.c (bsc#1214924).
- CVE-2023-4738: Fixed heap buffer overflow in vim_regsub_both (bsc#1214922).
- CVE-2023-4752: Fixed heap use-after-free in function ins_compl_get_exp (bsc#1215006).
- CVE-2023-4781: Fixed heap buffer overflow in function vim_regsub_both (bsc#1215033).
Other fixes:
- Update to version 9.0 with patch level 1894, for the complete list of changes see https://github.com/vim/vim/compare/v9.0.1443...v9.0.1894
- Use app icons generated from vimlogo.eps in the source tarball; add higher resolution icons of sizes 128x128, 256x256, and 512x512 as png sources
- Record
SUSE-SU-2023:3955-1- Updated
- 2026-11-02
OSVSUSE-SU-2023:4557-1 No score
Security update for vim
This update for vim fixes the following issues:
Updated to version 9.0 with patch level 2103, fixes the following security problems
- CVE-2023-5344: vim: Heap-based Buffer Overflow in vim prior to 9.0.1969 (bsc#1215940)
- CVE-2023-5441: vim: segfault in exmode when redrawing (bsc#1216001)
- CVE-2023-5535: vim: use-after-free from buf_contents_changed() (bsc#1216167)
- CVE-2023-46246: vim: Integer Overflow in :history command (bsc#1216696)
- CVE-2023-4738: vim: heap-buffer-overflow in vim_regsub_both (bsc#1214922)
- CVE-2023-4735: vim: OOB Write ops.c (bsc#1214924)
- CVE-2023-4734: vim: segmentation fault in function f_fullcommand (bsc#1214925)
- CVE-2023-4733: vim: use-after-free in function buflist_altfpos (bsc#1215004)
- CVE-2023-4752: vim: Heap Use After Free in function ins_compl_get_exp (bsc#1215006)
- CVE-2023-4781: vim: heap-buffer-overflow in function vim_regsub_both (bsc#1215033)
- Record
SUSE-SU-2023:4557-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
vimAlpine:v3.18 |
before 9.0.2073-r0 | 9.0.2073-r0 |
vimAlpine:v3.19 |
before 9.0.1888-r0 | 9.0.1888-r0 |
vimAlpine:v3.20 |
before 9.0.1888-r0 | 9.0.1888-r0 |
vimAlpine:v3.21 |
before 9.0.1888-r0 | 9.0.1888-r0 |
vimAlpine:v3.22 |
before 9.0.1888-r0 | 9.0.1888-r0 |
vimAlpine:v3.23 |
before 9.0.1888-r0 | 9.0.1888-r0 |
vimAlpine:v3.24 |
before 9.0.1888-r0 | 9.0.1888-r0 |
vimAzure Linux:2 |
before 9.0.1897-1 | 9.0.1897-1 |
vimAlpaquita:23 |
9.0.0999-r0 up to 9.1.0936-r0 | 9.1.0936-r0 |
vimAlpaquita:stream |
9.0.1676-r0 up to 9.0.2127-r0 | 9.0.2127-r0 |
Show 36 moreShow less
| Package | Affected | Fixed |
|---|---|---|
vimDebian:12 |
before 2:9.0.1378-2+deb12u1, plus listed versions 2:9.0.1378-2 |
2:9.0.1378-2+deb12u1 |
vimDebian:13 |
before 2:9.0.1894-1 | 2:9.0.1894-1 |
vimDebian:14 |
before 2:9.0.1894-1 | 2:9.0.1894-1 |
vimDebian:11 From an advisory covering 32 CVEs |
before 2:8.2.2434-3+deb11u2, plus listed versions 2:8.2.2434-32:8.2.2434-3+deb11u1 |
2:8.2.2434-3+deb11u2 |
vimopenEuler:20.03-LTS-SP1 From an advisory covering 8 CVEs |
before 9.0-16.oe1 | 9.0-16.oe1 |
vimopenEuler:20.03-LTS-SP3 From an advisory covering 8 CVEs |
before 9.0-16.oe1 | 9.0-16.oe1 |
vimopenEuler:22.03-LTS From an advisory covering 8 CVEs |
before 9.0-17.oe2203sp2 | 9.0-17.oe2203sp2 |
vimopenEuler:22.03-LTS-SP1 From an advisory covering 8 CVEs |
before 9.0-17.oe2203sp1 | 9.0-17.oe2203sp1 |
vimopenEuler:22.03-LTS-SP2 From an advisory covering 8 CVEs |
before 9.0-17.oe2203sp2 | 9.0-17.oe2203sp2 |
vimSUSE:Linux Enterprise Server 12 SP5 From an advisory covering 6 CVEs |
before 9.0.1894-17.23.2 | 9.0.1894-17.23.2 |
vimSUSE:Linux Enterprise Server for SAP Applications 12 SP5 From an advisory covering 6 CVEs |
before 9.0.1894-17.23.2 | 9.0.1894-17.23.2 |
vimSUSE:Linux Enterprise Micro 5.3 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Micro 5.4 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Module for Basesystem 15 SP4 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Module for Desktop Applications 15 SP4 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Server 15 SP1-LTSS From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Server 15 SP2-LTSS From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Server 15 SP3-LTSS From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Server for SAP Applications 15 SP1 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Server for SAP Applications 15 SP2 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Server for SAP Applications 15 SP3 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Manager Proxy 4.2 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Manager Server 4.2 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Micro 5.1 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Micro 5.2 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Enterprise Storage 7.1 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimopenSUSE:Leap 15.4 From an advisory covering 6 CVEs |
before 9.0.1894-150000.5.54.1 | 9.0.1894-150000.5.54.1 |
vimSUSE:Linux Enterprise Micro 5.5 From an advisory covering 10 CVEs |
before 9.0.2103-150500.20.6.1 | 9.0.2103-150500.20.6.1 |
vimSUSE:Linux Enterprise Module for Basesystem 15 SP5 From an advisory covering 10 CVEs |
before 9.0.2103-150500.20.6.1 | 9.0.2103-150500.20.6.1 |
vimSUSE:Linux Enterprise Module for Desktop Applications 15 SP5 From an advisory covering 10 CVEs |
before 9.0.2103-150500.20.6.1 | 9.0.2103-150500.20.6.1 |
vimopenSUSE:Leap 15.5 From an advisory covering 10 CVEs |
before 9.0.2103-150500.20.6.1 | 9.0.2103-150500.20.6.1 |
vimopenSUSE:Tumbleweed From an advisory covering 4 CVEs |
before 9.0.1894-1.1 | 9.0.1894-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| affected | OSV | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2023-4738 is a high vulnerability (CVSS 7.8) in Vim, published September 2, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.57%, the 47th percentile. Fixed in vim 9.0.2073-r0.
References
huntr.dev/bounties/9fc7dced-a7bb-4479-9718-f956df20f612
github.com/vim/vim/commit/ced2c7394aafdc90fb7845e09b3a3fee23d48cb1
support.apple.com/kb/HT213984
seclists.org/fulldisclosure/2023/Oct/24
lists.debian.org/debian-lts-announce/2025/03/msg00023.html
nvd.nist.gov/vuln/detail/CVE-2023-4738
Show 39 moreShow less
github.com/advisories/GHSA-x7vr-7frv-2rrh
security.alpinelinux.org/vuln/CVE-2023-4738
docs.bell-sw.com/security/cves/CVE-2023-4738
github.com/CVEProject/cvelistV5/tree/main/cves/2023/4xxx/CVE-2023-4738.json
security-tracker.debian.org/tracker/CVE-2023-4738
openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2023-1653
nvd.nist.gov/vuln/detail/CVE-2023-4733
nvd.nist.gov/vuln/detail/CVE-2023-4734
nvd.nist.gov/vuln/detail/CVE-2023-4735
nvd.nist.gov/vuln/detail/CVE-2023-4736
nvd.nist.gov/vuln/detail/CVE-2023-4750
nvd.nist.gov/vuln/detail/CVE-2023-4752
nvd.nist.gov/vuln/detail/CVE-2023-4781
suse.com/support/update/announcement/2023/suse-su-20233942-1
bugzilla.suse.com/1210738
bugzilla.suse.com/1211461
bugzilla.suse.com/1214922
bugzilla.suse.com/1214924
bugzilla.suse.com/1214925
bugzilla.suse.com/1215004
bugzilla.suse.com/1215006
bugzilla.suse.com/1215033
suse.com/security/cve/CVE-2023-4733
suse.com/security/cve/CVE-2023-4734
suse.com/security/cve/CVE-2023-4735
suse.com/security/cve/CVE-2023-4738
suse.com/security/cve/CVE-2023-4752
suse.com/security/cve/CVE-2023-4781
suse.com/support/update/announcement/2023/suse-su-20233955-1
suse.com/support/update/announcement/2023/suse-su-20234557-1
bugzilla.suse.com/1215940
bugzilla.suse.com/1216001
bugzilla.suse.com/1216167
bugzilla.suse.com/1216696
suse.com/security/cve/CVE-2023-46246
suse.com/security/cve/CVE-2023-5344
suse.com/security/cve/CVE-2023-5441
suse.com/security/cve/CVE-2023-5535
suse.com/security/cve/CVE-2023-4751