CVE-2021-46311
Medium · 5.5CVSS
5.5
EPSS
0.6%
Published
Jan 21, 2022
CISA due date
—
Cloudanix analysis
A flaw in multimedia handling software can make it stop working when it tries to read certain files, causing interruptions until the program is updated.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
NULL pointer dereference in gf_sg_destroy_routes at scenegraph/vrml_route.c causes immediate process crash on malformed VRML route handling.
Why it matters to the business
Media processing applications become unavailable when users open specially crafted scene files, leading to workflow interruptions and potential data loss during rendering or playback sessions.
How an attack unfolds
An attacker crafts a VRML file that reaches the route destruction path with a null pointer, triggering the dereference and DoS when the file is loaded by the vulnerable parser.
How to fix it
Upgrade GPAC to a build containing the fix for the route destruction path; apply the referenced semantic-release/semantic-release commit 58a226f29c04ee56bbb02cc661f020d568849cad equivalent patch if backporting is required.
How to confirm the fix worked
Confirm the installed GPAC binary reports a version after the route handling correction; attempt to load known trigger files in a controlled environment and verify no crash occurs.
Typical attack path
- Create or obtain a malformed VRML scene containing invalid route definitions
- Deliver the file to a target system running the affected GPAC build
- Trigger loading or processing of the scene via local application or command line
- Execute gf_sg_destroy_routes on the corrupted structure
- Cause unhandled null dereference and application termination
How to detect it
Review application and system logs for sudden GPAC process terminations when handling scene files; correlate crashes with recent file access timestamps and check for any public exploit samples matching the route function signature.
What your security team should do
- Immediately inventory all GPAC deployments and schedule upgrades to the corrected build
- Restrict processing of untrusted VRML or scene graph files until patched
- Monitor for application crashes correlated with media file ingestion
- Test the fix in staging before production rollout
The record
A NULL pointer dereference vulnerability exists in GPAC v1.1.0 via the function gf_sg_destroy_routes () at scenegraph/vrml_route.c. This vulnerability can lead to a Denial of Service (DoS).
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | gpac | 0 | No fix |
| Ubuntu:20.04:LTS | gpac | 0 | No fix |
| Ubuntu:22.04:LTS | gpac | 0 | No fix |
| Ubuntu:24.04:LTS | gpac | 0 | No fix |
| Ubuntu:Pro:14.04:LTS | gpac | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | gpac | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | gpac | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | gpac | 0 | No fix |
| Ubuntu:Pro:22.04:LTS | gpac | 0 | No fix |
| Ubuntu:Pro:24.04:LTS | gpac | 0 | No fix |
Related vulnerabilities
- CVE-2023-4679 A use after free vulnerability exists in GPAC version 2.3-DEV-revrelease, specifically in… Also affects gpac
- CVE-2023-46931 GPAC 2.3-DEV-rev605-gfc9e29089-master contains a heap-buffer-overflow in… Also affects gpac
- CVE-2021-46313 The binary MP4Box in GPAC v1.0.1 was discovered to contain a segmentation fault via the… Also affects gpac
- CVE-2021-46234 A NULL pointer dereference vulnerability exists in GPAC v1.1.0 via the function… Also affects gpac
- CVE-2021-46238 GPAC v1.1.0 was discovered to contain a stack overflow via the function gf_node_get_name… Also affects gpac
- CVE-2021-46240 A NULL pointer dereference vulnerability exists in GPAC v1.1.0 via the function… Also affects gpac
- CVE-2021-46239 The binary MP4Box in GPAC v1.1.0 was discovered to contain an invalid free vulnerability… Also affects gpac
- CVE-2021-46237 An untrusted pointer dereference vulnerability exists in GPAC v1.1.0 via the function… Also affects gpac