Summary
libosmocore through version 1.14.1 contains out-of-bounds read flaws in GSM 04.80 supplementary-service parsers. A remote attacker who can send specially crafted protocol data may cause the parser to read memory beyond an intended buffer and potentially disclose sensitive information.
libosmocore through version 1.14.1 contains out-of-bounds read flaws in GSM 04.80 supplementary-service parsers. A remote attacker who can send specially crafted protocol data may cause the parser to read memory beyond an intended buffer and potentially disclose sensitive information.
Affected context
The vulnerability occurs in the GSM 04.80 supplementary-service component parsers within libosmocore. It becomes risky when a network-facing application processes attacker-controlled GSM signaling or protocol messages without sufficiently validating message lengths, offsets, and nested data structures.
The vulnerability occurs in the GSM 04.80 supplementary-service component parsers within libosmocore. It becomes risky when a network-facing application processes attacker-controlled GSM signaling or protocol messages without sufficiently validating message lengths, offsets, and nested data structures.
Exploit preconditions
- Attack surface: A service or telecommunications component that uses libosmocore to parse GSM 04.80 supplementary-service messages
- Required access: Remote ability to deliver or influence protocol messages accepted by the affected parser
- Trigger point: Parsing of malformed supplementary-service data in
src/gsm/gsm0480.c - Why exploitation is possible: Insufficient bounds validation may allow parser logic to read outside the supplied buffer and expose adjacent memory contents
- Attack surface: A service or telecommunications component that uses libosmocore to parse GSM 04.80 supplementary-service messages
- Required access: Remote ability to deliver or influence protocol messages accepted by the affected parser
- Trigger point: Parsing of malformed supplementary-service data in
src/gsm/gsm0480.c - Why exploitation is possible: Insufficient bounds validation may allow parser logic to read outside the supplied buffer and expose adjacent memory contents
Why this happens
The underlying bug is improper bounds handling during parsing of variable-length GSM supplementary-service structures. When length fields, offsets, or nested elements are not adequately checked before memory access, parser code can read beyond the valid input buffer. This behavior is associated with out-of-bounds access and may result in information exposure, consistent with CWE-200: Exposure of Sensitive Information to an Unauthorized Actor.
The underlying bug is improper bounds handling during parsing of variable-length GSM supplementary-service structures. When length fields, offsets, or nested elements are not adequately checked before memory access, parser code can read beyond the valid input buffer. This behavior is associated with out-of-bounds access and may result in information exposure, consistent with CWE-200: Exposure of Sensitive Information to an Unauthorized Actor.
Potential impact
- An attacker may obtain sensitive data from adjacent memory
- Protocol-handling processes could disclose internal state or unintended message contents
- Repeated malformed requests could contribute to instability or service disruption
- Exposed data could support further attacks against the affected service or environment
- An attacker may obtain sensitive data from adjacent memory
- Protocol-handling processes could disclose internal state or unintended message contents
- Repeated malformed requests could contribute to instability or service disruption
- Exposed data could support further attacks against the affected service or environment
General mitigation guidance
Mitigation generally focuses on making parser boundaries explicit and reducing trust in externally supplied protocol data.
Common defensive patterns include:
- Validate message lengths, offsets, and element boundaries before every read
- Use bounded parsing routines that carry the remaining buffer size
- Reject malformed, truncated, or internally inconsistent GSM messages early
- Keep sensitive information isolated from protocol parsing buffers where practical
- Run network-facing services with least privilege and restricted access to sensitive resources
- Apply secure-by-default parser behavior that fails closed on validation errors
Mitigation generally focuses on making parser boundaries explicit and reducing trust in externally supplied protocol data.
Common defensive patterns include:
- Validate message lengths, offsets, and element boundaries before every read
- Use bounded parsing routines that carry the remaining buffer size
- Reject malformed, truncated, or internally inconsistent GSM messages early
- Keep sensitive information isolated from protocol parsing buffers where practical
- Run network-facing services with least privilege and restricted access to sensitive resources
- Apply secure-by-default parser behavior that fails closed on validation errors
How teams detect issues like this
Organizations can look for this class of issue through:
- Static analysis targeting unchecked length fields, pointer arithmetic, and buffer reads
- Code review of protocol parsers for missing checks before nested or variable-length accesses
- Fuzz testing with truncated, oversized, and inconsistent GSM 04.80 messages
- Runtime memory-safety instrumentation and sanitizers in testing environments
- Monitoring for abnormal parser errors, malformed-message bursts, and unexpected disclosure responses
- Policy enforcement requiring bounds validation and fuzz coverage for network protocol handlers
Organizations can look for this class of issue through:
- Static analysis targeting unchecked length fields, pointer arithmetic, and buffer reads
- Code review of protocol parsers for missing checks before nested or variable-length accesses
- Fuzz testing with truncated, oversized, and inconsistent GSM 04.80 messages
- Runtime memory-safety instrumentation and sanitizers in testing environments
- Monitoring for abnormal parser errors, malformed-message bursts, and unexpected disclosure responses
- Policy enforcement requiring bounds validation and fuzz coverage for network protocol handlers
Sources
| Source | Link |
|---|---|
| github. | github.com/ |
| osmocom. | osmocom.org/ |

