CVE-2021-44045
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedAn out-of-bounds write vulnerability exists when reading a DGN file using Open Design Alliance Drawings SDK before 2022.11. The specific issue exists within the parsing of DGN files. Crafted data in a DGN file and lack of proper validation for the XFAT sectors count can trigger a write operation past the end of an allocated buffer. An attacker can leverage this vulnerability to execute code in the context of the current process.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceAn out-of-bounds write vulnerability exists in Open Design Alliance Drawings SDK versions prior to 2022.11 when parsing DGN files. The vulnerability stems from insufficient validation of XFAT sector counts during DGN file parsing, allowing an attacker to write beyond allocated buffer boundaries and potentially execute arbitrary code in the current process context.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data< 2022.11CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Local
- Complexity
- Low
- Privileges
- None
- User interaction
- Required
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify OpenDesign Drawings SDK installationSearch for files named OdDgnDb.dll, OdDgnModule.dll, or similar ODA SDK DLLs in common installation directories such as C:\Program Files\OpenDesign, C:\Program Files (x86)\OpenDesign, or within application-specific directoriesAffected if The SDK DLLs are found on the system
-
Determine SDK versionRight-click on the identified ODA SDK DLL (e.g., OdDgnDb.dll) and view Properties, then check the File Version tab. Alternatively, check the version info of any executable or DLL that links to the ODA Drawings SDKAffected if The version is lower than 2022.11 or the version cannot be determined (older installations may not have clear version info)
-
Identify applications using the SDKReview installed software or application logs to find programs that rely on ODA Drawings SDK for CAD file processing. Common applications include CAD viewers, converters, or engineering software that handles DGN filesAffected if Applications relying on ODA Drawings SDK are present and process DGN files
-
Check for DGN file processingMonitor or review file access patterns for .dgn file extensions being opened by applications linked to ODA SDK. Check application configurations or recent file access logs for DGN file activityAffected if DGN files are being opened or processed by affected applications
-
Verify XFAT sector handlingIf you have access to crash dumps or memory dumps from applications using ODA SDK, analyze them for evidence of buffer overflow patterns related to DGN parsing. This requires debugging tools and is typically done by security analystsAffected if Buffer overflow indicators are found in crash dumps or memory analysis related to DGN file parsing
The environment is affected if OpenDesign Drawings SDK version lower than 2022.11 is installed and applications use it to process DGN files from untrusted sources.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scoped2022.11
Upgrade to Drawings SDK version 2022.11 or later which contains the proper validation for XFAT sector counts to prevent the buffer overflow. Until upgraded, avoid opening untrusted DGN files.
Drawings SDK 2022.11 or later
- 1. Identify the current version of Open Design Alliance Drawings SDK being used in your application or project
- 2. Download Drawings SDK version 2022.11 or later from the official Open Design Alliance website (www.opendesign.com)
- 3. Replace the existing SDK files in your project with the updated version 2022.11 or later
- 4. Rebuild your application to link against the updated SDK
- 5. Test the application thoroughly, particularly functionality that involves reading or parsing DGN files
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation3.0 h
- Implementation6.0 h
- Testing6.0 h
- Review / QA3.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $4,992.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2021-44045 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2021-44045 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data