ETK-2026-3006Zero's internal tracking ID, independent of the CVE number.
waiting for further signalsZero needs more public information before it can validate it.description
Openedx-platform can render unsafe HTML from course certificate view overrides on certificate pages. A course author or instructor can store content that executes in the browser of users who visit an affected certificate page, including public certificate visitors.
mitigation
Upgrade openedx-platform to version ulmo or later (>= ulmo). Until the upgrade is complete, restrict Studio author access and limit public access to certificate pages where practical.
fixed in >= ulmo
outcome
Contextual, not validated: no deterministic check could cover this one, and no technique passed our review.
source signals
Public signals that triggered or updated the pipeline. These are inputs for the deltas above.
- 2026-10-29 15:35Zghsa: trigger signal, started the run
- 2026-10-29 15:35Z
this entry in the feed
GET /api/v1/feed/ETK-2026-3006
{ "etk_id": "ETK-2026-3006", "cve_id": null, "display_id": "ETK-2026-3006", "ghsa_id": "GHSA-2vm4-4f35-jgpv", "euvd_id": null, "status": "published", "anchor_state": "awaiting_cve", "title": "Stored cross-site scripting in openedx-platform certificate views", "summary": "Openedx-platform can render unsafe HTML from course certificate view overrides on certificate pages. A course author or instructor can store content that executes in the browser of users who visit an affected certificate page, including public certificate visitors.", "mitigation": "Upgrade openedx-platform to version ulmo or later (>= ulmo). Until the upgrade is complete, restrict Studio author access and limit public access to certificate pages where practical.", "vendor": "pip", "product": "pip:openedx-platform", "affected": [ { "affected_notes": [], "affected_ranges": [ ">= cypress" ], "ecosystem": "pip", "fixed_versions": [ ">= ulmo" ], "package_name": "openedx-platform", "purl": "pkg:pypi/openedx-platform" } ], "cwes": [ 79 ], "cvss_score": 9.3, "cvss_src": "cna_vendor", "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H", "epss_score": null, "epss_percentile": null, "epss_asof": null, "automation": "contextual", "check": false, "check_confidence_basis": null, "exploit": false, "pipeline_minutes": 88.84475578333333, "t0_at": null, "signals": { "public_poc": { "at": "2026-10-29T15:35:31+00:00", "days": -0.3274977903009259, "is_lower_bound": true, "measured_at": "2026-10-29T23:27:06.938052+00:00", "url": "https://github.com/openedx/openedx-platform/security/advisories/GHSA-2vm4-4f35-jgpv" }, "trigger_signal": { "at": "2026-10-29T15:35:31+00:00", "days": -0.3274977903009259, "is_lower_bound": true, "measured_at": "2026-10-29T23:27:06.938052+00:00", "url": "https://github.com/openedx/openedx-platform/security/advisories/GHSA-2vm4-4f35-jgpv" } } }
published 2026-10-29 20:09Z
last change 2026-10-29 23:03Z
Need the technical details behind an entry?
Every entry here shows what we attempted and when. The technical details, the generated exploit that fired it and the evidence behind the verdict are not public. Tell us about your use case and we’ll get back to you about extended API access.