CVE-2026-42190: Rwsdk RedwoodSDK Has Same-site CSRF Through Vulnerability
MODERATECVE-2026-42190 is a MODERATE (CVSS 5.3) redwoodsdk has same-site csrf through vulnerability (CWE-352: Cross-Site Request Forgery (CSRF)) affecting Rwsdk libraries in the npm ecosystem. The issue involves redwoodsdk has same-site csrf through lack of origin validation in its server actions. Remediation is available by upgrading affected packages to version 1.2.3.
CVE-2026-42190 at a Glance
Security Impact
CVSS: 5.3
The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N).
How to Fix CVE-2026-42190
To remediate this vulnerability, upgrade all affected Rwsdk dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
npm install rwsdk@1.2.3
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
npm ls rwsdk
How to Check if You Are Affected
To determine whether your Node.js application is affected by CVE-2026-42190, inspect your project dependencies using npm:
npm ls rwsdk
Analyze the terminal output to locate any version of Rwsdk in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.2.3), your application is affected.
Note: The npm ls rwsdk command inspects dependencies declared in your package.json and lockfile; it does not perform automated runtime dynamic scanning.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-352: Cross-Site Request Forgery (CSRF), where the web application does not, or cannot, sufficiently verify whether a request was intentionally provided by the user who sent the request, which could have originated from an unauthorized actor. In Rwsdk, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
CVE-2026-42190 Affected Rwsdk Versions
1 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
rwsdk
|
npm |
≥ 1.0.0-beta.50
< 1.2.3
|
1.2.3
|
References
Frequently Asked Questions
What is CVE-2026-42190?
Which Rwsdk versions are affected?
What version fixes CVE-2026-42190?
Is rwsdk affected?
What is the CVSS score of CVE-2026-42190?
What CWE is associated with CVE-2026-42190?
How can I check npm dependencies for CVE-2026-42190?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-m2m6-cff5-3w7c",
"modified" : "2026-05-13T13:34:12Z",
"published" : "2026-04-24T15:36:52Z",
"aliases" : [ "CVE-2026-42190" ],
"summary" : "RedwoodSDK has Same-site CSRF through lack of origin validation in its server actions",
"details" : "### Summary\n\nServer actions in `rwsdk` apply HTTP method enforcement but no origin validation. A request originating from a different origin that the browser treats as same-site can invoke a server action with the victim's session cookie attached.\n\n### Impact\n\nAn attacker who controls any origin the browser considers same-site with the deployed app can induce an authenticated victim's browser to invoke arbitrary server actions. The exposure depends on deployment shape:\n\n- Apps deployed on custom domains (for example `app.example.com`) are exposed whenever the attacker controls any sibling subdomain under the same registrable domain. Plausible vectors include subdomain takeover of stale DNS records pointing at third-party services, cross-site scripting on a sibling application, or content served from a user-content subdomain.\n- Apps deployed on platform-suffix domains on the Public Suffix List (`*.workers.dev`, `*.pages.dev`) are not exposed to the sibling-subdomain vector, because sibling subdomains under those suffixes are treated as cross-site.\n- In local development, `localhost` on any other port is treated as same-site with the app's dev server. A separate process running on the developer's machine can invoke server actions against the dev server.\n\nThe attacker cannot read action responses (`mode: \"no-cors\"` yields opaque responses). Impact is therefore limited to side effects of action invocation: writes, state changes, and any externally observable action the application performs in response.\n\nCross-site requests from unrelated origins (`evil.com` targeting `app.com`) are not affected because `SameSite=Lax` session cookies are not attached by default in that scenario.\n\n### Affected Configurations\n\nApplications using `rwsdk` server actions (`serverAction()` or functions invoked via the RSC action protocol) in combination with cookie-based authentication. `serverQuery()` is not affected because it is designed to be idempotent and is invoked via GET.\n\n### Patch\n\nThe patched release enforces an Origin/Host match for non-GET action requests. Requests whose `Origin` header does not match the request's own origin are rejected with HTTP 403 unless the origin is listed in a new `allowedOrigins` configuration option.\n\nNo application code changes are required for apps that invoke server actions from their own origin. Apps that legitimately invoke server actions from another origin must add those origins to the `allowedOrigins` option on `defineApp`.\n\n### Credits\n\nReported by `@mthx`.",
"severity" : [ {
"type" : "CVSS_V3",
"score" : "CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "npm",
"name" : "rwsdk"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "1.0.0-beta.50"
}, {
"fixed" : "1.2.3"
} ]
} ],
"database_specific" : {
"last_known_affected_version_range" : "<= 1.2.2"
}
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/redwoodjs/sdk/security/advisories/GHSA-m2m6-cff5-3w7c"
}, {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-42190"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/redwoodjs/sdk"
}, {
"type" : "WEB",
"url" : "https://github.com/redwoodjs/sdk/releases/tag/v1.2.3"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-352" ],
"severity" : "MODERATE",
"github_reviewed" : true,
"github_reviewed_at" : "2026-04-24T15:36:52Z",
"nvd_published_at" : "2026-05-08T20:16:31Z"
}
}