Platform
nodejs
Component
file-type
Opgelost in
13.0.1
21.3.1
CVE-2026-31808 beschrijft een denial-of-service (DoS) kwetsbaarheid in de file-type module voor Node.js, specifiek bij het verwerken van ASF (WMV/WMA) bestanden. Een kwaadwillende input kan een oneindige lus veroorzaken, wat resulteert in het vastlopen van de Node.js event loop. Deze kwetsbaarheid treft versies van file-type die ouder zijn dan 21.3.1. Een patch is beschikbaar in versie 21.3.1.
Deze kwetsbaarheid stelt een aanvaller in staat om een denial-of-service aan te vallen op Node.js applicaties die de file-type module gebruiken om het type van onbetrouwbare bestanden te bepalen. Door een speciaal geconstrueerd ASF-bestand te leveren, kan de parser in een oneindige lus terechtkomen. Dit resulteert in een blokkade van de Node.js event loop, waardoor de applicatie niet meer reageert en mogelijk crasht. De impact is significant omdat het de beschikbaarheid van de applicatie direct aantast. Een 55-byte payload is voldoende om dit te veroorzaken. Dit type aanval kan leiden tot serviceonderbrekingen en potentiële dataverlies, afhankelijk van de functionaliteit van de getroffen applicatie.
Deze kwetsbaarheid is openbaar bekend en de details zijn beschikbaar. Er zijn momenteel geen meldingen van actieve exploitatie in de wildernis, maar de eenvoud van de exploitatie maakt het waarschijnlijk dat dit in de toekomst kan gebeuren. De kwetsbaarheid is opgenomen in het CISA KEV catalogus (KEV status onbekend op moment van schrijven). Er zijn publieke proof-of-concept (PoC) beschikbaar, wat de kans op misbruik vergroot.
Applications that rely on the file-type module to determine file types, particularly those handling untrusted or attacker-controlled input, are at risk. This includes web applications with file upload functionality, media processing services, and any Node.js application utilizing the file-type module for file type detection.
• nodejs / server:
npm list file-typeThis command will list the installed version of the file-type module. If the version is less than 21.3.1, the system is vulnerable.
• nodejs / server:
journalctl -u nodejs | grep -i "file-type"Monitor Node.js logs for any errors or unusual activity related to the file-type module, particularly around file parsing.
• generic web:
Inspect file upload endpoints for proper ASF file validation. Ensure that the size field of ASF sub-headers is validated to prevent zero-sized values.
disclosure
Exploit Status
EPSS
0.03% (8% percentiel)
CISA SSVC
CVSS-vector
De primaire mitigatie voor CVE-2026-31808 is het upgraden van de file-type module naar versie 21.3.1 of hoger. Indien een directe upgrade niet mogelijk is, overweeg dan het implementeren van een Web Application Firewall (WAF) of proxy om ASF-bestanden met verdachte kenmerken te blokkeren. Controleer de input van ASF-bestanden op ongebruikelijke grootte-attributen in sub-headers. Het monitoren van de Node.js processen op ongebruikelijk hoog CPU-gebruik of langdurige blokkades kan helpen bij het detecteren van een aanval. Na de upgrade, bevestig de correcte werking door een testbestand te verwerken en te controleren of de event loop niet vastloopt.
Actualiseer de `file-type` afhankelijkheid naar versie 21.3.1 of hoger. Dit corrigeert de denial of service kwetsbaarheid veroorzaakt door een oneindige lus bij het verwerken van verkeerde ASF bestanden. Voer `npm install file-type@latest` of `yarn upgrade file-type` uit om te updaten.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
CVE-2026-31808 is a denial-of-service vulnerability in the file-type Node.js module, allowing an attacker to stall the event loop by providing a crafted ASF file.
You are affected if you are using a version of the file-type module prior to 21.3.1 and handle untrusted ASF files.
Upgrade the file-type module to version 21.3.1 or later. If upgrading is not possible, implement input validation to reject ASF files with zero-sized sub-headers.
There are currently no confirmed reports of active exploitation, but the vulnerability's simplicity suggests it could be exploited.
Refer to the official Node.js security advisories and the file-type module's repository for updates and information.
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.