Skip to main content
mySites.guru
CriticalA PHP security release fixes two CVSS 9.2 flaws, and PHP 8.1 and older get no patchWhat it means for your site

DPCalendar security vulnerabilities

mySites.guru tracks 7 vulnerabilities in DPCalendar (com_dpcalendar), covering 4 CVEs. Every connected Joomla site is checked against them on each audit.

Is my site affected?

Your site is affected if it runs DPCalendar in any of these ranges:

  • from 9.0.0 up to but not including 10.12.1
  • from 9.0.0 up to but not including 10.11.2
  • from 9.0.0 up to and including 10.11.2
  • from 7.0.0 up to but not including 8.19.6
  • from 5.5.0 up to but not including 8.19.5
  • from 8.18.0 up to but not including 8.19.4
  • from 8.0.0 up to and including 8.14.0
Latest safe version
10.12.1 or later. No rule we check matches that release or any newer one.
What to do
Update DPCalendar to 10.12.1 or later from the vendor, then confirm the installed version on the Joomla administrator's Extensions: Manage screen.

Every DPCalendar vulnerability we track

Newest first. CVSS is the score published in each CVE record, where it has one; the severity column is the rating our check uses.

CVEAffected versionsFixed inSeverityAdded
CVE-2026-78071CVSS 7.5from 7.0.0 up to but not including 8.19.68.19.6High2026-08-28
CVE-2026-78071CVSS 7.5from 9.0.0 up to but not including 10.12.110.12.1High2026-08-28
CVE-2026-78070CVSS 6.9from 5.5.0 up to but not including 8.19.58.19.5Medium2026-08-28
CVE-2026-78070CVSS 6.9from 9.0.0 up to and including 10.11.2after 10.11.2Medium2026-08-28
CVE-2026-57831CVSS 8.7from 9.0.0 up to but not including 10.11.210.11.2High2026-07-13
CVE-2026-57831CVSS 8.7from 8.18.0 up to but not including 8.19.48.19.4High2026-07-13
CVE-2024-21727CVSS 6.1from 8.0.0 up to and including 8.14.0update to 8.14.1Medium2024-02-15

What we check for

HighCVE-2026-780712026-08-28

DPCalendar (com_dpcalendar) 7.0.0 to 8.19.5 (Joomla 3) - Authenticated Stored Cross-Site Scripting

DPCalendar renders a calendar location title into a data-title HTML attribute without escaping it, giving a stored cross-site scripting flaw. A payload such as x" onmouseover="alert(1) has no HTML tags, so it passes through the filterText input filter unchanged and breaks out of the attribute on output, where it becomes a live event handler. Storing the payload requires an account with DPCalendar location create permission (CVSS 4.0 vector PR:H), but the script then runs in the browser of every visitor who views that location page, so the permission bounds who can plant it and not who it hits. This was reported in two stages. Toan Le found the original as vendor issue 12203, fixed on 2026-08-27 in 8.19.5 and 10.12.0, which escaped nine of the ten data-title sinks in the component. mySites.guru proved the same day that the tenth was still open, at components/com_dpcalendar/site/tmpl/location/default_map.php line 23, reported it to Digital Peak and the Joomla Security Strike Team, and Digital Peak confirmed it on 2026-08-28. That last sink was closed on 2026-09-10 in 8.19.6 and 10.12.1, along with seven identical sinks in the free mod_dpcalendar_upcoming module templates (blog, default, horizontal, icon, panel, simple and timeline). CVE-2026-78071 was updated on 2026-09-10 to widen its affected range to 7.0.0-8.19.5 and 9.0.0-10.12.0 and to credit both finders. On Joomla 3 the fixed version is 8.19.6, which is a security-only release containing this one change. If you have overridden the DPCalendar location templates, the unescaped output is still in your override and updating the extension will not reach it.

Affected versions: ≥ 7.0.0 and < 8.19.6

Full advisory: our disclosure post

HighCVE-2026-780712026-08-28

DPCalendar (com_dpcalendar) 9.0.0 to 10.12.0 (Joomla 4 to 6) - Authenticated Stored Cross-Site Scripting

DPCalendar renders a calendar location title into a data-title HTML attribute without escaping it, giving a stored cross-site scripting flaw. A payload such as x" onmouseover="alert(1) has no HTML tags, so it passes through the filterText input filter unchanged and breaks out of the attribute on output, where it becomes a live event handler. Storing the payload requires an account with DPCalendar location create permission (CVSS 4.0 vector PR:H), but the script then runs in the browser of every visitor who views that location page, so the permission bounds who can plant it and not who it hits. This was reported in two stages. Toan Le found the original as vendor issue 12203, fixed on 2026-08-27 in 8.19.5 and 10.12.0, which escaped nine of the ten data-title sinks in the component. mySites.guru proved the same day that the tenth was still open, at components/com_dpcalendar/site/tmpl/location/default_map.php line 23, reported it to Digital Peak and the Joomla Security Strike Team, and Digital Peak confirmed it on 2026-08-28. That last sink was closed on 2026-09-10 in 8.19.6 and 10.12.1, along with seven identical sinks in the free mod_dpcalendar_upcoming module templates (blog, default, horizontal, icon, panel, simple and timeline). CVE-2026-78071 was updated on 2026-09-10 to widen its affected range to 7.0.0-8.19.5 and 9.0.0-10.12.0 and to credit both finders. Update to 10.12.1 on Joomla 4, 5 and 6. The 9.x line has no patch of its own, so sites there need the staged upgrade across to 10.12.1 rather than a point update. If you have overridden the DPCalendar location templates, the unescaped output is still in your override and updating the extension will not reach it.

Affected versions: ≥ 9.0.0 and < 10.12.1

Full advisory: our disclosure post

HighCVE-2026-578312026-07-13

DPCalendar (com_dpcalendar) 9.0 to 10.11.1 (Joomla 4 to 6) - Unauthenticated Blind SQL Injection

DPCalendar on the Joomla 4 to 6 line (9.x and 10.x) contains an unauthenticated blind SQL injection in the front-end events model. The filter_created_by request parameter is placed into the events query without an integer cast (site EventsModel::getListQuery), so an anonymous visitor can inject boolean conditions and read arbitrary database contents including user password hashes and the Joomla secret through the public events feed at index.php?option=com_dpcalendar&view=events&format=raw. No login, token or CSRF is required. It is a read-only injection (no write or RCE). All editions (Free, Pro, Business) share the vulnerable site model. The flaw dates to 8.18.0 and affects every current-line release up to and including 10.11.0. Fixed in 10.11.2, which integer-casts the author filter. Update to 10.11.2 or later; on the 9.x line the upgrade path is 9.x to 10.0.0, then 10.6.0, then 10.11.2. Joomla 3 (8.x) sites are handled by a separate rule (fixed in 8.19.4). Temporary mitigation: block non-numeric filter_created_by at the WAF, or unpublish DPCalendar front-end menu items. Discovered and reported by mySites.guru.

Affected versions: ≥ 9.0.0 and < 10.11.2

Full advisory: our disclosure post

HighCVE-2026-578312026-07-13

DPCalendar (com_dpcalendar) 8.18.0 to 8.19.3 (Joomla 3) - Unauthenticated Blind SQL Injection

DPCalendar on the Joomla 3 (8.x) branch contains an unauthenticated blind SQL injection in the front-end events model. The filter_created_by request parameter is placed into the events query without an integer cast (site EventsModel::getListQuery), so an anonymous visitor can inject boolean conditions and read arbitrary database contents including user password hashes and the Joomla secret through the public events feed at index.php?option=com_dpcalendar&view=events&format=raw. No login, token or CSRF is required. It is a read-only injection (no write or RCE). All editions (Free, Pro, Business) share the vulnerable site model. The flaw was introduced in 8.18.0 and affects every 8.x release from 8.18.0 up to 8.19.3. Fixed in 8.19.4, which integer-casts the author filter. Update to 8.19.4 or later, or migrate to Joomla 4 to 6 and DPCalendar 10.11.2. Joomla 4 to 6 (9.x and 10.x) sites are handled by a separate rule (fixed in 10.11.2). Temporary mitigation: block non-numeric filter_created_by at the WAF, or unpublish DPCalendar front-end menu items. Discovered and reported by mySites.guru.

Affected versions: ≥ 8.18.0 and < 8.19.4

Full advisory: our disclosure post

MediumCVE-2026-780702026-08-28

DPCalendar (com_dpcalendar) 5.5.0 to 8.19.4 (Joomla 3) - Authenticated Blind SQL Injection

DPCalendar contains a blind SQL injection reachable by saving a Joomla article. The DPCalendar content plugin passes the order and orderdir parameters of a {dpcalendar} tag into the events query ORDER BY clause without validating them against the model filter_fields allow-list. The sink used the database escape() helper, which secures string literals but not SQL identifiers, so the sort column is injectable. Exploitation requires an account holding permission to create or update articles, so this is authenticated and privileged (CVSS 4.0 vector PR:H), not anonymous. Reported by Toan Le as vendor issue 12206. Fixed in 10.12.0 on the Joomla 4 to 6 branch and backported to 8.19.5 on the Joomla 3 branch. Temporary mitigation: disable the "Content - DPCalendar" plugin, which is the only route in.

Affected versions: ≥ 5.5.0 and < 8.19.5

Full advisory: joomla.digital-peak.com

MediumCVE-2026-780702026-08-28

DPCalendar (com_dpcalendar) 9.0.0 to 10.11.2 (Joomla 4 to 6) - Authenticated Blind SQL Injection

DPCalendar contains a blind SQL injection reachable by saving a Joomla article. The DPCalendar content plugin passes the order and orderdir parameters of a {dpcalendar} tag into the events query ORDER BY clause without validating them against the model filter_fields allow-list. The sink used the database escape() helper, which secures string literals but not SQL identifiers, so the sort column is injectable. Exploitation requires an account holding permission to create or update articles, so this is authenticated and privileged (CVSS 4.0 vector PR:H), not anonymous. Reported by Toan Le as vendor issue 12206. Fixed in 10.12.0 on the Joomla 4 to 6 branch and backported to 8.19.5 on the Joomla 3 branch. Temporary mitigation: disable the "Content - DPCalendar" plugin, which is the only route in.

Affected versions: ≥ 9.0.0 and ≤ 10.11.2

Full advisory: joomla.digital-peak.com

MediumCVE-2024-217272024-02-15

DPCalendar (com_dpcalendar) 8.0.0 to 8.14.0 - Cross-Site Scripting

DP Calendar by Digital Peak, versions 8.0.0 through 8.14.0, is affected by a cross-site scripting vulnerability. Update to 8.14.1 or later; the current Joomla 4/5/6 branch is 10.11.2. Sites on the 8.x branch should also check the separate unauthenticated SQL injection rules for DPCalendar.

Affected versions: ≥ 8.0.0 and ≤ 8.14.0

Full advisory: extensions.joomla.org

Timeline

  1. 15 February 2024Check added for CVE-2024-21727 (from 8.0.0 up to and including 8.14.0)
  2. 15 February 2024CVE-2024-21727 record published
  3. 13 July 2026Check added for CVE-2026-57831 (from 9.0.0 up to but not including 10.11.2)
  4. 13 July 2026Check added for CVE-2026-57831 (from 8.18.0 up to but not including 8.19.4)
  5. 13 July 2026We published: Unauthenticated SQL Injection in DPCalendar found by mySites.guru
  6. 15 July 2026CVE-2026-57831 record published
  7. 27 August 2026We published: DPCalendar 10.12.0 fixes an SQL injection and an XSS
  8. 28 August 2026Check added for CVE-2026-78071 (from 7.0.0 up to but not including 8.19.6)
  9. 28 August 2026Check added for CVE-2026-78071 (from 9.0.0 up to but not including 10.12.1)
  10. 28 August 2026Check added for CVE-2026-78070 (from 5.5.0 up to but not including 8.19.5)
  11. 28 August 2026Check added for CVE-2026-78070 (from 9.0.0 up to and including 10.11.2)
  12. 28 August 2026CVE-2026-78071 record published
  13. 28 August 2026CVE-2026-78070 record published
  14. 10 September 2026We published: Digital Peak patches four Joomla extensions after a Claude audit

What we have written about DPCalendar

References

Each CVE page above links its official cve.org record and its NVD entry.

DPCalendar vulnerability questions

Which versions of DPCalendar are vulnerable?
mySites.guru tracks 7 vulnerabilities in DPCalendar (com_dpcalendar). A site is affected if its installed version is in any of these ranges: from 9.0.0 up to but not including 10.12.1; from 9.0.0 up to but not including 10.11.2; from 9.0.0 up to and including 10.11.2; from 7.0.0 up to but not including 8.19.6; from 5.5.0 up to but not including 8.19.5; from 8.18.0 up to but not including 8.19.4; from 8.0.0 up to and including 8.14.0.
What is the latest safe version of DPCalendar?
10.12.1. Every vulnerability tracked here is fixed by 10.12.1, and no rule we check matches that release or any later one.
How do I check which version of DPCalendar my Joomla site runs?
The installed version is listed on the Joomla administrator's Extensions: Manage screen; search it for com_dpcalendar. mySites.guru reads the installed version on every audit of a connected site and checks it against these rules.

Running DPCalendar on a site you manage?

A free audit tells you which of your Joomla and WordPress sites run an affected version, which are out of date, and which have not been backed up. No card required. If a site is already compromised, fix.mysites.guru is a single fixed fee per incident, usually resolved the same day.

This check is part of the mySites.guru Joomla vulnerability scanner, which reads every installed extension's version on each audit. Browse the rest of the Joomla vulnerability database.

CVE identifiers: CVE-2026-78071, CVE-2026-57831, CVE-2026-78070, CVE-2024-21727. Rules current as of 24 October 2026.