---
id: "CVE-2026-102785"
kind: "vulnerability"
aliases: ["CVE-2026-102785"]
title: "YOOtheme Pro: unauthenticated image handler lets attackers upload and run PHP"
severity: "critical"
cvss: 10.0
epss: 0.00701
exploited: false
status: "open"
category: "package"
products: [{"name": "YOOtheme Pro", "fixed": ["5.0.53"], "affected": ">= 5.0.0, <= 5.0.52", "ecosystem": "joomla"}]
ecosystems: ["joomla"]
tags: ["joomla", "package", "php", "poc-public", "self-hosted", "yootheme-pro"]
not_affected_if: ["patched-5.0.53", "version-outside-5.0.0-5.0.52", "yootheme-pro-4"]
published_at: "2026-10-22T13:17:27+00:00"
first_seen_at: "2026-10-23T21:57:31+00:00"
updated_at: "2026-10-24T07:15:51+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-102785", "first_seen_at": "2026-10-23T21:57:31+00:00"}, {"source": "analyst", "url": null, "first_seen_at": "2026-10-23T22:48:37+00:00"}, {"source": "github-poc", "url": "https://github.com/antid00t/CVE-2026-102785", "first_seen_at": "2026-10-24T00:39:46+00:00"}, {"source": "epss", "url": "https://api.first.org/data/v1/epss?cve=CVE-2026-102785", "first_seen_at": "2026-10-24T07:15:51+00:00"}]
---

# YOOtheme Pro: unauthenticated image handler lets attackers upload and run PHP

YOOtheme Pro's public image transformation handler does not fully verify its request signature, so an attacker can reuse a signature from a public image URL and add operations. This lets them write a PHP-executable file into a public media directory and run code on the server without logging in.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- joomla:YOOtheme Pro affected >= 5.0.0, <= 5.0.52 fixed 5.0.53

## How to check

Joomla admin > System > Manage > Extensions: check YOOtheme Pro version; 5.0.0 to 5.0.52 is vulnerable, 5.0.53+ fixed, 4.x not affected. Look for .php files or PNG/PHP polyglots in public media/image cache directories (e.g. under images/ and the YOOtheme cache) that you did not create.

## Fix

Update YOOtheme Pro to 5.0.53 or later (Joomla Extensions manager / YOOtheme updater). Back up first. Then check for unexpected PHP files in public media and image cache dirs.

## Timeline

- 2026-10-23T21:57:31+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-102785
- 2026-10-23T22:48:37+00:00 analyst — Fixed in YOOtheme Pro 5.0.53 (21 Oct 2026) per vendor changelog; affected 5.0.0-5.0.52 per CVE record; Pro 4 and earlier not affected. No exploitation or public PoC found; no interim mitigation known (mySites.guru).
- 2026-10-24T00:39:46+00:00 github-poc https://github.com/antid00t/CVE-2026-102785
- 2026-10-24T07:15:51+00:00 epss https://api.first.org/data/v1/epss?cve=CVE-2026-102785

## Documents

- [advisory] YOOtheme Pro Changelog (5.0.53) https://yootheme.com/changelog
- [advisory] CVE Record CVE-2026-102785 https://www.cve.org/CVERecord?id=CVE-2026-102785
- [describes] YOOtheme Pro 5.0.53 critical RCE fix (mySites.guru) https://mysites.guru/blog/yootheme-pro-5-critical-security-update/
- [discussion] https://x.com/yootheme/status/2112897636470534544 https://x.com/yootheme/status/2112897636470534544
- [poc] antid00t/CVE-2026-102785 https://github.com/antid00t/CVE-2026-102785

## From the sources

Joomla Extension - yootheme.com - Unauthenticated remote code execution in YOOtheme Pro 5.0.0-5.0.52 - YOOtheme Pro’s publicly accessible image transformation handler incompletely binds normalized image operations and the output destination to its request signature. An unauthenticated remote attacker can reuse a signature disclosed in a legitimate public image URL, inject additional image operations, traverse out of the intended cache directory, and write an attacker-controlled PNG/PHP polyglot to an executable public media directory.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
