Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach unauthenticated /api/index endpoint
-
DeliverySubmit document with embedded script
-
ExploitPayload stored unescaped in index
-
ExecutionAdmin search renders result via v-html
-
ImpactScript executes in admin browser session
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The attacker must be able to reach the /api/index endpoint and submit document text without authentication (PR:N), and that text must contain HTML/script that gets stored in the GoFound index. The payload is inert until an administrator logs into the GoFound dashboard and performs a search that matches the malicious document - only then does searcher/engine.go return the stored content unescaped and dashboard.vue render it with v-html, triggering execution (UI:A). Limiting factors: exploitation depends entirely on that admin search interaction, impact is scoped to the administrator's browser session rather than the server, and the affected software is version 1.4.1 and earlier of a niche product with limited deployment. |
| Impact | Signals point to a genuine but moderate, interaction-gated issue rather than a drop-everything emergency. The input CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N, 5.1 Medium) describes unauthenticated, network-reachable injection with low attack complexity and no attack requirements, but crucially requires active user interaction (UI:A): the payload only fires when an administrator runs a dashboard search that matches the attacker's indexed document. My independent CVSS 3.1 assessment is 6.1 (scope-changed stored XSS), consistent with that reading. No EPSS score and no KEV listing were provided, so there is no evidence of active exploitation or quantified exploitation probability; the vuln.today Decision label is this_month, i.e. a prioritize-and-schedule item, not act_now or emergency. A public PoC reference exists but is not verified as working exploit code, so exploit maturity is unconfirmed. The impact is confined to the administrator's browser session (SC:L/SI:L, no confidentiality/integrity/availability impact to the server itself, VC/VI/VA:N), and the affected product (sea-team GoFound) has a small deployment footprint. Net: a real, patch-worthy stored XSS that can hijack an admin session, but its reach is limited by the required admin search interaction and the product's niche adoption. |
| Exploit ScenarioDerived | An unauthenticated attacker sends a document containing malicious HTML/JavaScript to the /api/index endpoint, which GoFound stores in its index. When an administrator later performs a dashboard search whose results match that document, searcher/engine.go returns the stored text unescaped and dashboard.vue renders it via v-html, executing the attacker's script in the admin's authenticated browser session. A public PoC reference exists but is not verified as working exploit code. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Nov 02, 2026
Stored cross-site scripting in GoFound through 1.4.1 lets unauthenticated attackers plant HTML/script by submitting document text to the /api/index endpoint, with no credentials required (CVSS:4.0 PR:N). The payload stays inert in the index until an administrator runs a dashboard search that matches the poisoned document, at which point searcher/engine.go returns the stored content unescaped and dashboard.vue renders it via v-html, executing in the admin's browser session. Exploitation is therefore interaction-gated and scoped to the administrator's browser rather than the server; a public PoC reference exists but is not verified as working exploit code, and there is no CISA KEV confirmation of active exploitation. The issue is rated 5.1 and prioritised as "this_month" rather than an emergency.
RemediationAI
No vendor-released patch or fixed version is identified in the available data; the upstream issue at https://github.com/sea-team/gofound/issues/101 and the VulnCheck advisory at https://www.vulncheck.com/advisories/gofound-through-1.4.1-stored-xss-via-admin-dashboard-search-results are the tracking points to monitor for a fix. Until a patched release exists, break the disclosed attack path: require authentication or network-level restriction (reverse proxy ACL, IP allowlist) in front of /api/index so arbitrary parties cannot write documents into the index - the trade-off is that any legitimate anonymous indexing client must be given credentials or allowlisted addresses. Where the index may already contain untrusted content, avoid running searches from the v-html-rendering dashboard until the escaping defect in searcher/engine.go and the rendering in dashboard.vue are corrected, since that interaction is the sole trigger; administrators who must search should treat results from externally writable indexes as untrusted. Purging or rebuilding the index removes previously injected documents, but it does not close the ingestion path.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
GoFound is a Go-based full-text search engine whose indexing API (/api/index) accepts document text and stores it for later retrieval. The flaw is CWE-79 (improper neutralisation of input during web page generation) in its stored/persistent form: content accepted at index time is neither sanitised on input nor escaped on output. Two code paths in the v1.4.1 tree are implicated in the public references - searcher/engine.go, which returns matching document content back to the client without escaping, and the Vue admin frontend component web/admin/assets/web/src/views/dashboard.vue, which binds search results with v-html, causing stored markup to be parsed as HTML rather than displayed as text. Because the sink is the administrator-facing dashboard, the trust boundary crossed is the admin session, not the server process; the independently assessed CVSS:3.1 vector (AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N) reflects that scope change and the requirement for a victim-initiated search. CPE cpe:2.3:a:sea-team:gofound:*:*:*:*:*:*:*:* with a wildcard version indicates the vendor's GoFound is affected up to and including 1.4.1, the last version referenced in the public issue and source links.
Know when Gofound gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Unauthenticated network injection (PR:N) but execution requires an admin to run a matching search (UI:R); payload crosses into the admin browser context (S:C) with low confidentiality/integrity impact and no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
GoFound through 1.4.1 contains a stored cross-site scripting vulnerability that allows unauthenticated attackers to inject scripts by submitting document text to /api/index. Attackers can index malicious HTML that searcher/engine.go returns unescaped and dashboard.vue renders with v-html, executing script in an administrator's browser when an admin search matches the document.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
EUVD-2026-115203
GHSA-g5pg-j2rm-rmvx
NVD
CVE.org
EPSS
Exploit-DB