CVE-2022-46289
High · 7.8CVSS
7.8
EPSS
0.8%
Published
Jul 21, 2023
CISA due date
—
Cloudanix analysis
A bug in widely used chemistry software lets attackers run malicious code on a computer simply by tricking someone into opening a specially made data file.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Full Compromise
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Out-of-bounds write due to integer wrap-around in nAtoms calculation within ORCA file parsing, resulting in undersized buffer allocation and subsequent memory corruption that enables arbitrary code execution.
Why it matters to the business
Attackers can execute arbitrary code on systems that parse untrusted molecular data files, leading to full system compromise, data theft, or ransomware deployment in environments using this chemistry toolkit for research or processing pipelines.
How an attack unfolds
An attacker crafts a malformed ORCA file that triggers wrap-around during nAtoms processing. When the victim opens the file with Open Babel, the resulting undersized allocation is overwritten, allowing shellcode execution without authentication.
How to fix it
Upgrade to a version of Open Babel containing the fix for the nAtoms wrap-around in ORCA parsing; if no official release is available, apply the patch from commit after 530dbfa3 or replace the library with a maintained alternative until fixed packages are published.
How to confirm the fix worked
Confirm the installed Open Babel version is newer than 3.1.1 and does not contain commit 530dbfa3; test parsing of known-malformed ORCA samples in a sandbox to verify absence of crashes or code execution.
Typical attack path
- Attacker creates specially malformed ORCA file exploiting nAtoms wrap-around
- Victim receives file via email, download, or shared storage
- Victim opens file using Open Babel or dependent application
- Parser allocates undersized buffer and performs out-of-bounds write
- Attacker-controlled code executes with privileges of the parsing process
How to detect it
Review process creation and file-access logs for Open Babel invocations against recently received or unusual molecular files; look for segmentation faults or unexpected child processes spawned during parsing of ORCA files.
What your security team should do
- Immediately restrict Open Babel usage to trusted files only and isolate parsing workloads
- Monitor for new fixed releases and schedule urgent upgrade once available
- Scan all internal repositories and build pipelines for the vulnerable 3.1.1 version
- Implement file-type sandboxing or content-disarmament for molecular data files
The record
Multiple out-of-bounds write vulnerabilities exist in the ORCA format nAtoms functionality of Open Babel 3.1.1 and master commit 530dbfa3. A specially-crafted malformed file can lead to arbitrary code execution. An attacker can provide a malicious file to trigger this vulnerability.nAtoms calculation wrap-around, leading to a small buffer allocation
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | openbabel | 0 | No fix |
| Debian:12 | openbabel | 0 | No fix |
| Debian:13 | openbabel | 0 | No fix |
| Debian:14 | openbabel | 0 | No fix |
| Ubuntu:16.04:LTS | openbabel | 0 | No fix |
| Ubuntu:18.04:LTS | openbabel | 0 | No fix |
| Ubuntu:20.04:LTS | openbabel | 0 | No fix |
| Ubuntu:22.04:LTS | openbabel | 0 | No fix |
| Ubuntu:24.04:LTS | openbabel | 0 | No fix |
| Ubuntu:24.10 | openbabel | 0 | No fix |
| Ubuntu:25.04 | openbabel | 0 | No fix |
| Ubuntu:25.10 | openbabel | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | openbabel | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | openbabel | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | openbabel | 0 | No fix |
| openSUSE:Leap 16.0 | openbabel | 0 | 3.2.0-bp160.1.1 |
Related vulnerabilities
- CVE-2022-46294 Multiple out-of-bounds write vulnerabilities exist in the translationVectors parsing… Also affects openbabel
- CVE-2022-46293 Multiple out-of-bounds write vulnerabilities exist in the translationVectors parsing… Also affects openbabel
- CVE-2022-46295 Multiple out-of-bounds write vulnerabilities exist in the translationVectors parsing… Also affects openbabel
- CVE-2022-37331 An out-of-bounds write vulnerability exists in the Gaussian format orientation… Also affects openbabel
- CVE-2022-43607 An out-of-bounds write vulnerability exists in the MOL2 format attribute and value… Also affects openbabel
- CVE-2022-42885 A use of uninitialized pointer vulnerability exists in the GRO format res functionality… Also affects openbabel
- CVE-2022-41793 An out-of-bounds write vulnerability exists in the CSR format title functionality of Open… Also affects openbabel
- CVE-2022-43467 An out-of-bounds write vulnerability exists in the PQS format coord_file functionality of… Also affects openbabel