CVE-2022-46294: Open Babel out-of-bounds write in MOPAC input parser

CVE-2022-46294 · Severity: high · CVSS 7.8 · Published 2026-07-01

Open Babel is a widely used software library for converting and processing chemistry data files. A vulnerability in its MOPAC file parser allows a specially crafted file to cause a memory error when opened. This could lead to a program crash or potentially allow an attacker to execute unauthorized code on the system where the file is processed.

Technologies: openbabel (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2022-46294 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2022-46294 being exploited in the wild.
How severe is CVE-2022-46294?
High severity, with a CVSS score of 7.8, published 1 July 2026.
Which products and versions are affected?
openbabel (PyPI) < 3.2.0, ECOSYSTEM:introduced=0,fixed=3.2.0.
Is there a fix for CVE-2022-46294?
Yes. openbabel (PyPI): upgrade to 3.2.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2022-46294 attacked?
It is attacked with local access, in a software library.
Am I affected by CVE-2022-46294?
Check whether you run openbabel (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • openbabel (PyPI): upgrade to 3.2.0 or later
    pip install "openbabel>=3.2.0"

Technical details

An out-of-bounds (OOB) write vulnerability exists in the MOPAC input parser of Open Babel. The root cause is the use of a fixed-size array, `translationVectors[]`, which is designed to hold a maximum of three translation vectors. When parsing a malformed MOPAC file containing more than three Tv atoms, the parser continues to write data beyond the array's allocated memory. This memory corruption can be triggered via the `obabel` CLI tool, the `OBConversion` API, or any of the library's language bindings (Python, Java, etc.). Successful exploitation requires a user to open a malicious file and can lead to arbitrary code execution or a denial-of-service. The issue is addressed in version 3.2.0 by adding bounds checking to ensure no more than three vectors are written.

Affected products

  • Open Babel openbabel <= 3.1.1

Identifiers

  • CVE-2022-46294
  • GHSA-mjmg-352j-f456
  • PYSEC-2026-2786

Timeline

  • 2026-05-09: other: Fix commit authored
  • 2026-05-26: patched: Version 3.2.0 released
  • 2026-07-01: advisory: GitHub Advisory published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.