CVE-2021-27411
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 · uneditedMicrium OS Versions 5.10.1 and prior are vulnerable to integer wrap-around in functions Mem_DynPoolCreate, Mem_DynPoolCreateHW and Mem_PoolCreate. This unverified memory assignment can lead to arbitrary memory allocation, resulting in unexpected behavior such as very small blocks of memory being allocated instead of very large ones.
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 confidenceInteger wrap-around vulnerability in Micrium OS memory pool creation functions (Mem_DynPoolCreate, Mem_DynPoolCreateHW, Mem_PoolCreate) allows unverified memory size calculations to result in allocating very small memory blocks instead of requested large blocks due to integer overflow during size computation.
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<= 5.10.1CVSS 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
- Network
- Complexity
- Low
- Privileges
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- None
- Integrity
- Low
- Availability
- Low
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
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 Micrium OS version in useSearch project files, build artifacts, or firmware images for version strings containing 'Micrium' or 'uC/OS' (the commercial name). Check README files, version headers, or lib manifests for version numbers.Affected if The discovered version is 5.10.1 or lower.
-
Locate memory pool creation functions in sourceSearch codebase for function definitions or declarations of Mem_DynPoolCreate, Mem_DynPoolCreateHW, or Mem_PoolCreate.Affected if These functions exist in the codebase and are part of the Micrium OS memory module.
-
Check if memory pool functions are calledSearch for invocations of these functions in application code: look for patterns like Mem_DynPoolCreate(, Mem_DynPoolCreateHW(, or Mem_PoolCreate(.Affected if The application code calls any of these three pool creation functions.
-
Identify pool size parameter usageReview all calls to the affected functions and examine the size/blk_size parameter values being passed. Look for cases where a calculated or user-controlled size could approach or exceed UINT_MAX.Affected if Size parameters passed to these functions could contain large values (near UINT_MAX or larger than available memory) that may cause integer wrap-around during computation.
Your environment is affected if you are using Micrium OS version 5.10.1 or lower and your code invokes Mem_DynPoolCreate, Mem_DynPoolCreateHW, or Mem_PoolCreate with potentially large size parameters that could overflow during internal calculations.
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 · scopedImplement validation checks for integer overflow/wrap-around before memory allocation calculations in the affected pool creation functions; ensure size parameters cannot wrap around to smaller values.
Micrium OS version 5.10.2 or later
- 1. Identify all deployments of Micrium OS in your environment that are at version 5.10.1 or prior.
- 2. Obtain the fixed version of Micrium OS (version 5.10.2 or later) from the official Silicon Labs distribution channels.
- 3. Before deploying the update, review your application's use of Mem_DynPoolCreate, Mem_DynPoolCreateHW, and Mem_PoolCreate functions to ensure proper memory allocation parameters are being passed.
- 4. Deploy the upgraded Micrium OS version to all affected systems.
- 5. After upgrade, test memory pool allocation functionality to verify correct block sizes are being allocated.
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-27411 — 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-27411 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