Intel

AIKIDO-2026-653585

marcel is vulnerable to Interpretation Conflict

Interpretation Conflict Pre-CVE
Found by Aikido Intel before public disclosure or CVE publication.
Published Aug 27, 2026

30

Low Risk

This Affects:

RUBYmarcel
0.3.0 - 1.2.1
Fixed in 2.0.0
Are you affected? Scan for Free

TL;DR

Marcel's parse_media_type accepted loosely tokenized declared_type values, so malformed Content-Type strings, comma-separated lists, invalid encodings, and inputs larger than 8 KiB were treated as real media types. HTML and XHTML magic also matched unanchored markup anywhere in the sample, so container formats with later HTML-like bytes were labeled text/html while some genuine HTML was not. Applications that store and serve the sniffed type, can therefore attach the wrong Content-Type to untrusted uploads. The fix validates declared types against a single well-formed media-type grammar, bounds them to 8 KiB, and matches HTML and XHTML only from bounded opening-tag patterns.

Who does this affect?

You are affected if you are using a version that falls within the vulnerable range and your application uses Marcel to identify MIME types of untrusted uploads and relies on the returned type for serving or allowlisting.

Background info

marcel is vulnerable to Interpretation Conflict in versions 0.3.0 - 1.2.1.

How to fix this

Upgrade the marcel library to the patch version.

Are You Affected?

Connect your repositories to instantly see whether vulnerable or malicious packages exist in your codebase.

Free. No credit card required.

Aikido Platform