Miggo Logo

CVE-2025-27506: NocoDB Vulnerable to Reflected Cross-Site Scripting on Reset Password Page

5.4

CVSS Score
3.1

Basic Information

EPSS Score
0.2276%
Published
3/6/2025
Updated
3/6/2025
KEV Status
No
Technology
TechnologyJavaScript

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
nocodbnpm< 0.258.00.258.0

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability arises from two key points: (1) The renderPasswordReset function in auth.controller.ts passes the unsanitized tokenId to the EJS template. (2) The template in resetPassword.ts uses the <%- syntax, which does not escape the token value. Together, this allows an attacker to inject arbitrary scripts via the token parameter, leading to reflected XSS. The patch fixed this by wrapping the token in quotes and using secure EJS output methods.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

### Summ*ry T** *PI *n*point r*l*t** to t** p*sswor* r*s*t *un*tion is vuln*r**l* to R**l**t** *ross-Sit*-S*riptin*. ### **t*ils T*rou**out t** sour**-*o** *n*lysis, it **s ***n *oun* t**t t** *n*point /*pi/v*/**/*ut*/p*sswor*/r*s*t/:tok*nI* is v

Reasoning

T** vuln*r**ility *ris*s *rom two k*y points: (*) T** `r*n**rP*sswor*R*s*t` *un*tion in `*ut*.*ontroll*r.ts` p*ss*s t** uns*nitiz** `tok*nI*` to t** *JS t*mpl*t*. (*) T** t*mpl*t* in `r*s*tP*sswor*.ts` us*s t** <%- synt*x, w*i** *o*s not *s**p* t** t