Safeguard
Vulnerability Analysis•

CVE-2025-29913: Critical Underflow in NASA CryptoLib AAD Prep

CVE-2025-29913 is a critical (9.8) integer underflow in NASA CryptoLib 1.3.3 and earlier in Crypto_TC_Prep_AAD. Check the advisory for a fixed release.

Safeguard Security Team
4 min read

CVE-2025-29913 is a critical (CVSS 9.8) integer underflow in NASA CryptoLib 1.3.3 and earlier. A crafted telecommand frame makes Crypto_TC_Prep_AAD compute a bad MAC start index, causing an out-of-bounds memory read. The advisory lists no patched release, so check it.

What's affected

The record and the project advisory list NASA CryptoLib versions 1.3.3 and prior as affected. CryptoLib is a software only implementation of the CCSDS Space Data Link Security Protocol, Extended Procedures (SDLS-EP), used to secure links between a spacecraft running the core Flight System (cFS) and a ground station.

The advisory page I reviewed shows no patched release version. The record links to a fix commit for some of these issues, but a commit is not a release. Check the CryptoLib releases page and the advisory for the first fixed release before you decide that you are covered.

The record does not flag this CVE as known exploited (not in the CISA KEV catalog at the time of writing).

How to check if you're exposed

CryptoLib is usually built from source and linked into flight or ground software, so there may be no package manager entry to query.

  1. Search your build tree and your software bill of materials for CryptoLib, and note the version or commit you build from.
  2. If you vendor the source, look at the git history for the project's fix commit and see whether it is included in your tree.
  3. List every program that links the library and receives frames from a radio link, simulator or test harness.

Safeguard's free in-browser dependency scan at gold.safeguard.sh/scan can show whether a project's dependency list includes an affected component, and the Gold directory lets you look up the CVE and its related weaknesses.

What to do now

  1. Find every build that includes CryptoLib 1.3.3 or earlier, including ground segment tools and test benches.
  2. Check the CryptoLib advisory and releases for a fixed version, or for the fix commit referenced in the record, and plan the update.
  3. Until you have a fix, validate frame length fields and header sizes in your own code before passing frames to CryptoLib, and drop frames that fail those checks.
  4. Run the affected components with the least privilege your platform allows, and keep them away from networks that untrusted parties can reach.
  5. Add fuzz tests for frame parsing to your pipeline, since the advisories describe issues found that way.

Why it matters

The record maps the flaw to CWE-125 (Out-of-bounds Read) and CWE-191 (Integer Underflow). The advisory says the code works out where the message authentication code begins by subtracting trailer sizes from the frame length. If the frame length is smaller than those sizes, the result wraps, and the code reads from a location outside the buffer.

Out-of-bounds reads often cause crashes, which matters for availability, and they can leak data in other settings. The record also mentions the possibility of code execution, so a conservative reading is to treat it as memory corruption until the maintainers say otherwise.

The advisory notes that the problem was still present at the commit of an earlier fix. This is a sign that fixes in this code path should be checked against the full family of CryptoLib issues, not one by one.

Quick check

What is the MAC start index?

It is the position in the frame where the message authentication code is read. The flaw is in how that position is calculated.

Does the record confirm exploitation?

No. It is not in the CISA KEV catalog and the advisory does not report exploitation.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

We email you a link to confirm, and only then add you to the list. Unsubscribe in one click. Privacy

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.