OESA-2025-1231 (CVE-2025-1215)

Vulnerability from osv_openeuler – Published: 2025-02-28 11:08 – Updated: 2026-08-06 11:08 – Source website
VLAI
Summary
vim security update
Details

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):

A vulnerability classified as problematic was found in vim up to 9.1.1096. This vulnerability affects unknown code of the file src/main.c. The manipulation of the argument --log leads to memory corruption. It is possible to launch the attack on the local host. Upgrading to version 9.1.1097 is able to address this issue. The patch is identified as c5654b84480822817bb7b69ebc97c174c91185e9. It is recommended to upgrade the affected component.(CVE-2025-1215)

Vim is a greatly improved version of the good old UNIX editor Vi. Vim allows to redirect screen messages using the :redir ex command to register, variables and files. It also allows to show the contents of registers using the :registers or :display ex command. When redirecting the output of :display to a register, Vim will free the register content before storing the new content in the register. Now when redirecting the :display command to a register that is being displayed, Vim will free the content while shortly afterwards trying to access it, which leads to a use-after-free. Vim pre 9.1.1115 checks in the ex_display() function, that it does not try to redirect to a register while displaying this register at the same time. However this check is not complete, and so Vim does not check the + and * registers (which typically donate the X11/clipboard registers, and when a clipboard connection is not possible will fall back to use register 0 instead. In Patch 9.1.1115 Vim will therefore skip outputting to register zero when trying to redirect to the clipboard registers * or +. Users are advised to upgrade. There are no known workarounds for this vulnerability.(CVE-2025-26603)


{
  "affected": [
    {
      "ecosystem_specific": {
        "aarch64": [
          "vim-X11-9.0.2092-17.oe2403.aarch64.rpm",
          "vim-common-9.0.2092-17.oe2403.aarch64.rpm",
          "vim-debuginfo-9.0.2092-17.oe2403.aarch64.rpm",
          "vim-debugsource-9.0.2092-17.oe2403.aarch64.rpm",
          "vim-enhanced-9.0.2092-17.oe2403.aarch64.rpm",
          "vim-minimal-9.0.2092-17.oe2403.aarch64.rpm",
          "vim-X11-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-common-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-debuginfo-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-debugsource-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-enhanced-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-minimal-9.0.2092-17.oe2403sp1.aarch64.rpm"
        ],
        "noarch": [
          "vim-filesystem-9.0.2092-17.oe2403.noarch.rpm",
          "vim-filesystem-9.0.2092-17.oe2403sp1.noarch.rpm"
        ],
        "src": [
          "vim-9.0.2092-17.oe2403.src.rpm",
          "vim-9.0.2092-17.oe2403sp1.src.rpm"
        ],
        "x86_64": [
          "vim-X11-9.0.2092-17.oe2403.x86_64.rpm",
          "vim-common-9.0.2092-17.oe2403.x86_64.rpm",
          "vim-debuginfo-9.0.2092-17.oe2403.x86_64.rpm",
          "vim-debugsource-9.0.2092-17.oe2403.x86_64.rpm",
          "vim-enhanced-9.0.2092-17.oe2403.x86_64.rpm",
          "vim-minimal-9.0.2092-17.oe2403.x86_64.rpm",
          "vim-X11-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-common-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-debuginfo-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-debugsource-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-enhanced-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-minimal-9.0.2092-17.oe2403sp1.x86_64.rpm"
        ]
      },
      "package": {
        "ecosystem": "openEuler:24.03-LTS",
        "name": "vim",
        "purl": "pkg:rpm/openEuler/vim\u0026distro=openEuler-24.03-LTS"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "9.0.2092-17.oe2403sp1"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "ecosystem_specific": {
        "aarch64": [
          "vim-X11-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-common-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-debuginfo-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-debugsource-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-enhanced-9.0.2092-17.oe2403sp1.aarch64.rpm",
          "vim-minimal-9.0.2092-17.oe2403sp1.aarch64.rpm"
        ],
        "noarch": [
          "vim-filesystem-9.0.2092-17.oe2403sp1.noarch.rpm"
        ],
        "src": [
          "vim-9.0.2092-17.oe2403sp1.src.rpm"
        ],
        "x86_64": [
          "vim-X11-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-common-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-debuginfo-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-debugsource-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-enhanced-9.0.2092-17.oe2403sp1.x86_64.rpm",
          "vim-minimal-9.0.2092-17.oe2403sp1.x86_64.rpm"
        ]
      },
      "package": {
        "ecosystem": "openEuler:24.03-LTS-SP1",
        "name": "vim",
        "purl": "pkg:rpm/openEuler/vim\u0026distro=openEuler-24.03-LTS-SP1"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "9.0.2092-17.oe2403sp1"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "ecosystem_specific": {
        "aarch64": [
          "vim-X11-9.0-32.oe2003sp4.aarch64.rpm",
          "vim-common-9.0-32.oe2003sp4.aarch64.rpm",
          "vim-debuginfo-9.0-32.oe2003sp4.aarch64.rpm",
          "vim-debugsource-9.0-32.oe2003sp4.aarch64.rpm",
          "vim-enhanced-9.0-32.oe2003sp4.aarch64.rpm",
          "vim-minimal-9.0-32.oe2003sp4.aarch64.rpm"
        ],
        "noarch": [
          "vim-filesystem-9.0-32.oe2003sp4.noarch.rpm"
        ],
        "src": [
          "vim-9.0-32.oe2003sp4.src.rpm"
        ],
        "x86_64": [
          "vim-X11-9.0-32.oe2003sp4.x86_64.rpm",
          "vim-common-9.0-32.oe2003sp4.x86_64.rpm",
          "vim-debuginfo-9.0-32.oe2003sp4.x86_64.rpm",
          "vim-debugsource-9.0-32.oe2003sp4.x86_64.rpm",
          "vim-enhanced-9.0-32.oe2003sp4.x86_64.rpm",
          "vim-minimal-9.0-32.oe2003sp4.x86_64.rpm"
        ]
      },
      "package": {
        "ecosystem": "openEuler:20.03-LTS-SP4",
        "name": "vim",
        "purl": "pkg:rpm/openEuler/vim\u0026distro=openEuler-20.03-LTS-SP4"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "9.0-32.oe2003sp4"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "ecosystem_specific": {
        "aarch64": [
          "vim-X11-9.0-32.oe2203sp3.aarch64.rpm",
          "vim-common-9.0-32.oe2203sp3.aarch64.rpm",
          "vim-debuginfo-9.0-32.oe2203sp3.aarch64.rpm",
          "vim-debugsource-9.0-32.oe2203sp3.aarch64.rpm",
          "vim-enhanced-9.0-32.oe2203sp3.aarch64.rpm",
          "vim-minimal-9.0-32.oe2203sp3.aarch64.rpm"
        ],
        "noarch": [
          "vim-filesystem-9.0-32.oe2203sp3.noarch.rpm"
        ],
        "src": [
          "vim-9.0-32.oe2203sp3.src.rpm"
        ],
        "x86_64": [
          "vim-X11-9.0-32.oe2203sp3.x86_64.rpm",
          "vim-common-9.0-32.oe2203sp3.x86_64.rpm",
          "vim-debuginfo-9.0-32.oe2203sp3.x86_64.rpm",
          "vim-debugsource-9.0-32.oe2203sp3.x86_64.rpm",
          "vim-enhanced-9.0-32.oe2203sp3.x86_64.rpm",
          "vim-minimal-9.0-32.oe2203sp3.x86_64.rpm"
        ]
      },
      "package": {
        "ecosystem": "openEuler:22.03-LTS-SP3",
        "name": "vim",
        "purl": "pkg:rpm/openEuler/vim\u0026distro=openEuler-22.03-LTS-SP3"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "9.0-32.oe2203sp3"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "ecosystem_specific": {
        "aarch64": [
          "vim-X11-9.0-32.oe2203sp4.aarch64.rpm",
          "vim-common-9.0-32.oe2203sp4.aarch64.rpm",
          "vim-debuginfo-9.0-32.oe2203sp4.aarch64.rpm",
          "vim-debugsource-9.0-32.oe2203sp4.aarch64.rpm",
          "vim-enhanced-9.0-32.oe2203sp4.aarch64.rpm",
          "vim-minimal-9.0-32.oe2203sp4.aarch64.rpm"
        ],
        "noarch": [
          "vim-filesystem-9.0-32.oe2203sp4.noarch.rpm"
        ],
        "src": [
          "vim-9.0-32.oe2203sp4.src.rpm"
        ],
        "x86_64": [
          "vim-X11-9.0-32.oe2203sp4.x86_64.rpm",
          "vim-common-9.0-32.oe2203sp4.x86_64.rpm",
          "vim-debuginfo-9.0-32.oe2203sp4.x86_64.rpm",
          "vim-debugsource-9.0-32.oe2203sp4.x86_64.rpm",
          "vim-enhanced-9.0-32.oe2203sp4.x86_64.rpm",
          "vim-minimal-9.0-32.oe2203sp4.x86_64.rpm"
        ]
      },
      "package": {
        "ecosystem": "openEuler:22.03-LTS-SP4",
        "name": "vim",
        "purl": "pkg:rpm/openEuler/vim\u0026distro=openEuler-22.03-LTS-SP4"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "9.0-32.oe2203sp4"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "severity": "Medium"
  },
  "details": "Vim is an advanced text editor that seeks to provide the power of the de-facto Unix editor \u0026amp;apos;Vi\u0026amp;apos;, 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.\r\n\r\nSecurity Fix(es):\n\nA vulnerability classified as problematic was found in vim up to 9.1.1096. This vulnerability affects unknown code of the file src/main.c. The manipulation of the argument --log leads to memory corruption. It is possible to launch the attack on the local host. Upgrading to version 9.1.1097 is able to address this issue. The patch is identified as c5654b84480822817bb7b69ebc97c174c91185e9. It is recommended to upgrade the affected component.(CVE-2025-1215)\n\nVim is a greatly improved version of the good old UNIX editor Vi. Vim allows to redirect screen messages using the `:redir` ex command to register, variables and files. It also allows to show the contents of registers using the `:registers` or `:display` ex command. When redirecting the output of `:display` to a register, Vim will free the register content before storing the new content in the register. Now when redirecting the `:display` command to a register that is being displayed, Vim will free the content while shortly afterwards trying to access it, which leads to a use-after-free. Vim pre 9.1.1115 checks in the ex_display() function, that it does not try to redirect to a register while displaying this register at the same time. However this check is not complete, and so Vim does not check the `+` and `*` registers (which typically donate the X11/clipboard registers, and when a clipboard connection is not possible will fall back to use register 0 instead. In Patch 9.1.1115 Vim will therefore skip outputting to register zero when trying to redirect to the clipboard registers `*` or `+`. Users are advised to upgrade. There are no known workarounds for this vulnerability.(CVE-2025-26603)",
  "id": "OESA-2025-1231",
  "modified": "2026-08-06T11:08:19Z",
  "published": "2025-02-28T11:08:19Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2025-1231"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-1215"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-26603"
    }
  ],
  "schema_version": "1.7.2",
  "severity": [
    {
      "score": "CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L",
      "type": "CVSS_V3"
    }
  ],
  "summary": "vim security update",
  "upstream": [
    "CVE-2025-1215",
    "CVE-2025-26603"
  ]
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Vulnerability timeline

Sightings and recorded dates, grouped by day · UTC

JSON
How durations are calculated

Following the VTEM framework (Black Hat USA 2015), time to patch starts when the vendor or a coordinator was informed, total time to patch at discovery, and disclosure to patch at public disclosure; vendor response time runs from the report to its acknowledgement. Time to exploit and time unpatched start at the earliest discovery or report, falling back to public disclosure. Unpatched time ends at the first recorded patch, or the calculation time when no patch is recorded. Exploitation to patch shows the interval between those two events; a published proof of concept is a public exploit, not exploitation.

Each result shows its source dates. A negative interval means the end event came first; when date-only inputs leave the order open, the result says so. Date-only inputs are approximate. The earliest evidence wins: KEV report dates and sightings are labelled as such. Records describing another vulnerability are listed but never calculated from, and a PoC alone does not establish exploitation. Missing patch evidence does not prove that no patch exists. Filters below change the event list only.

Events included in the timeline

Loading timeline…


    Loading…

    Loading…

    Loading…

    Related by attack behaviour

    Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.