SkillTree is a micro-learning gamification platform. Prior to version 4.4.2, two independent code flaws combine into a single exploitable attack chain, with three distinct exploitation paths of escalating impact. StringHighlighter.js builds an HTML string by interpolating raw value substrings directly into a template literal with no HTML entity encoding. HighlightedValue.vue renders that string — and all unfiltered plain values — via Vue's v-html directive, which sets innerHTML. Separately, the account registration endpoint accepts firstName, lastName, and nickname fields and stores them without any HTML sanitization. An attacker self-registers with firstName = "" (28 characters — within the 30-character field limit) and visits any quiz. The next time an administrator opens the Quiz Runs page the payload executes in their browser. Three attack paths exist with escalating impact. The first is basic cross-site scripting. Any self-contained payload fitting the 30-character limit (e.g. `, which is 28 chars) fires automatically when the admin navigates to the runs page through normal use. Arbitrary code execution in the admin's browser is confirmed with zero extra steps. The second is remote script loading via import(). Using the split-field technique (lastName = ""), the attacker loads a full JavaScript file from their server. The file has no size limit and can perform any admin action — delete all projects, create backdoor accounts, dump user data, install a keylogger. No phishing required. The only constraint is that the URL must fit in 11 characters (//nsas.cc/p). The third is full cross-site request forgery token theft. Using eval(name), the attacker pre-sets window.name to a data-theft payload by sending the admin one redirect link first. The session cookie is HttpOnly and cannot be read via document.cookie`; however, the XSRF token is readable and the attacker leverages same-origin execution to call admin APIs from inside the victim's browser, relaying the responses to an external server. No admin interaction beyond routine use is required. Version 4.4.2 contains a patch.
CVE-2026-54694
This critical-severity CVE scores 9.6 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.3%, top 79% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- High severity, but no confirmed exploitation yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 9.6
- EG Score
- 9.6(medium)
- EG Risk
- 59(Track*)EG Risk 59/100SSVC: Track*
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity96% × 45%Exploitation40% × 40%Automatability0% × 15%Action: Watch closely — could escalate to Attend. - EPSS PROB
- 0%
- EPSS %ILE
- 21%
- KEV
- Not listed
Published
September 9, 2026
Last Modified
September 10, 2026
Advisory Details (1)
Auto-updated Sep 14, 2026Stored XSS in NationalSecurityAgency/skills-service via User Registration Enabling Admin Account Takeover · Advisory · NationalSecurityAgency/skills-service · GitHub
https://github.com/NationalSecurityAgency/skills-service/security/advisories/GHSA-hqfg-c8wf-w2g8Weakness Classification(5)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 13× in last 7d / 22× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-09-18 23:07 UTCEG score recompute
- 2026-09-18 19:28 UTCEPSS rescore
- 2026-09-17 20:14 UTCEG score recompute
- 2026-09-17 19:31 UTCEPSS rescore
- 2026-09-16 14:39 UTCEG score recompute
- 2026-09-16 14:08 UTCEPSS rescore
- 2026-09-16 06:58 UTCEG score recompute
- 2026-09-16 05:15 UTCEPSS rescore
- 2026-09-15 03:43 UTCEG score recompute
- 2026-09-15 03:11 UTCEPSS rescore
- 2026-09-13 17:16 UTCEG score recompute
- 2026-09-13 16:47 UTCEPSS rescore
- 2026-09-12 18:19 UTCEG score recompute
- 2026-09-11 15:27 UTCEG score recompute
- 2026-09-11 14:53 UTCEPSS rescore
- 2026-09-11 11:37 UTCEG score recompute
- 2026-09-10 20:12 UTCEG score recompute
- 2026-09-10 16:22 UTCEG score recompute
- 2026-09-10 16:10 UTCEG score recompute
- 2026-09-09 19:29 UTCEG score recompute
- 2026-09-09 18:50 UTCEG score recompute
- 2026-09-09 18:49 UTCMITRE cvelistV5first tracked
Frequently asked(5)
What is CVE-2026-54694?
When was CVE-2026-54694 disclosed?
Is CVE-2026-54694 actively exploited?
What is the CVSS score of CVE-2026-54694?
How do I remediate CVE-2026-54694?
Dependency Blast Radius
Explore the affected products and dependency analysis for CVE-2026-54694
Is Your Infrastructure Affected by CVE-2026-54694?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.