Thumbor has HMAC validation bypass via multiple .replace() calls when removing URL signature
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| thumbor | thumbor | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Thumbor | Thumbor |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-mw3h-qjxj-6xg9 | Thumbor has HMAC validation bypass via multiple .replace() calls when removing URL signature |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.352% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Thumbor
Thumbor thumbor |
|
| Vendors & Products |
Thumbor
Thumbor thumbor |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Thumbor is an open-source photo thumbnail service by globo.com. Prior to 7.8.0, Thumbor’s HMAC validation can be bypassed due to the use of Python’s .replace() when removing the signature from the URL before validation. Since .replace() removes all occurrences of the substring, an attacker can insert the same signature multiple times in the URL and manipulate the final URL used for validation. This allows crafting URLs where the validated string differs from the actual requested resource, enabling loading images from unintended domains or paths. This issue is fixed in 7.8.0. | |
| Title | Thumbor has HMAC validation bypass via multiple .replace() calls when removing URL signature | |
| Weaknesses | CWE-347 | |
| References |
| |
| Metrics |
cvssV3_1
|