Answer in brief
CVE-2026-27641 records a Critical severity (CVSS 9.8) vulnerability in Flask-Reuploaded vulnerable to Remote Code Execution via Server-Side Template Injection. The current sources do not mark it as known exploited. The current feed maps flask-reuploaded (pip), flask-reuploaded (pypi). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 9.8. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps flask-reuploaded (pip), flask-reuploaded (pypi). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| flask-reuploadedpip | <1.5.0 | 1.5.0 |
| flask-reuploadedpypi | >=0 <1.5.0 | 1.5.0 |
Published upstream
Feb 25, 2026
Evidence: source:ghsa:source_dates:source-dates:recordSource modified
Oct 27, 2026
Evidence: source:ghsa:source_dates:source-dates:recordFirst seen by HOL
Oct 27, 2026
### Impact A critical path traversal and extension bypass vulnerability in Flask-Reuploaded allows remote attackers to achieve arbitrary file write and remote code execution through Server-Side Template Injection (SSTI). ### Patches Flask-Reuploaded has been patched in version 1.5.0 ### Workarounds 1. **Do not pass user input to the `name` parameter** 2. Use auto-generated filenames only 3. Implement strict input validation if `name` must be used ```python from werkzeug.utils import secure_filename import os # Sanitize user input before passing to save() safe_name = secure_filename(request.form.get('custom_name')) # Remove path separators safe_name = os.path.basename(safe_name) # Validate extension matches policy if not photos.extension_allowed(photos.get_extension(safe_name)): abort(400) filename = photos.save(file, name=safe_name) ``` ### Resources The fix is documented in the pull request, see https://github.com/jugmac00/flask-reuploaded/pull/180. A proper write-up was created by the reporter of the vulnerability, Jaron Cabral (https://www.linkedin.com/in/jaron-cabral-751994357/), but is not yet available as of time of this publication.
Quoted source text, attributed separately from HOL analysis.