CVE-2021-39584
Medium · 5.5CVSS
5.5
EPSS
0.7%
Published
Sep 20, 2021
CISA due date
—
Cloudanix analysis
A problem in an old Flash-file utility can make the program crash when it tries to read certain files, stopping any automated tasks that use the utility.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Application
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
NULL pointer dereference in namespace_set_hash() within pool.c causes the process to crash when processing a specially crafted input file.
Why it matters to the business
Tools that convert or inspect Flash files become unavailable when fed malicious input, interrupting build pipelines, document processing, or archival workflows that depend on the affected package.
How an attack unfolds
An attacker supplies a malformed SWF file to any swftools binary that reaches namespace_set_hash(). The dereference immediately terminates the process, producing a denial-of-service condition. Public exploit code exists that automates generation of the crashing file.
How to fix it
No fixed version is published. Remove or isolate swftools from any path that processes external files; replace the functionality with maintained alternatives such as swfmill or modern libraries that parse SWF safely.
How to confirm the fix worked
Attempt to process the known crashing SWF with the updated or replacement tool and confirm the process exits cleanly without a segmentation fault or abort.
Typical attack path
- Identify a workflow that invokes an swftools binary on untrusted SWF input
- Craft or obtain a minimal SWF that triggers the NULL dereference in pool.c
- Deliver the file through the normal input channel (CLI argument, web upload, automated converter)
- Observe immediate crash of the tool and resulting service interruption
How to detect it
Monitor process crash logs, core dumps, and application error streams for abrupt termination while handling SWF files; correlate with file names or upload timestamps that match untrusted sources.
What your security team should do
- Inventory all systems and CI jobs that call any swftools binary
- Block untrusted SWF files from reaching those binaries immediately
- Migrate to a supported SWF processing library and remove the package
- Add the crashing test case to regression suites of any replacement tooling
The record
An issue was discovered in swftools through 20200710. A NULL pointer dereference exists in the function namespace_set_hash() located in pool.c. It allows an attacker to cause Denial of Service.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Ubuntu:16.04:LTS | swftools | 0 | No fix |
| Ubuntu:18.04:LTS | swftools | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | swftools | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | swftools | 0 | No fix |
Related vulnerabilities
- CVE-2024-28458 Null Pointer Dereference vulnerability in swfdump in swftools 0.9.2 allows attackers to… Also affects swftools
- CVE-2024-26334 swftools v0.9.2 was discovered to contain a segmentation violation via the function… Also affects swftools
- CVE-2024-26337 swftools v0.9.2 was discovered to contain a segmentation violation via the function… Also affects swftools
- CVE-2024-26335 swftools v0.9.2 was discovered to contain a segmentation violation via the function… Also affects swftools
- CVE-2024-26339 swftools v0.9.2 was discovered to contain a strcpy parameter overlap via… Also affects swftools
- CVE-2024-26333 swftools v0.9.2 was discovered to contain a segmentation violation via the function… Also affects swftools
- CVE-2024-25165 A global-buffer-overflow vulnerability was found in SWFTools v0.9.2, in the function… Also affects swftools
- CVE-2024-22956 swftools 0.9.2 was discovered to contain a heap-use-after-free vulnerability via the… Also affects swftools