Element Plus Link component (el-link) implements insufficient input validation for the href attribute
Date: 2025-09
Affected: npm/element-plus
Attack vector: xss
Category: vulnerability-disclosure
Severity: Medium
CVE: CVE-2025-57665
CWE: CWE-116
CWE-20

Element Plus Link component (el-link) prior to 2.11.0 implements insufficient input validation for the href attribute, creating a security abstraction gap that obscures URL-based attack vectors. The component passes user-controlled href values directly to underlying anchor elements without protocol validation, URL sanitization, or security headers. This allows attackers to inject malicious URLs using dangerous protocols (javascript:, data:, file:) or redirect users to external malicious sites. While native HTML anchor elements present similar risks, UI component libraries bear additional responsibility for implementing security safeguards and providing clear risk documentation. The vulnerability enables XSS attacks, phishing campaigns, and open redirect exploits affecting applications that use Element Plus Link components with user-controlled or untrusted URL inputs. As of version 2.11.0, Element Plus have clearly documented the risks inherent with the component.


Mitigations:

Architectural layers (MAESTRO):