GHSA-HF3J-86P7-MFW8
Vulnerability from github – Published: 2026-07-30 20:57 – Updated: 2026-07-30 20:57Summary
The AWS Amplify Studio amplify-codegen-ui is a package that generates front-end code from UI Builder entities (components, forms, views, and themes) primarily used in AWS Amplify Studio for component previews and in AWS Command Line Interface (AWS CLI) for generating component files in customers' local applications.
An issue exists in the Amplify Studio property binding process of the amplify-codegen-uipackage that could potentially allow an authenticated user to run arbitrary JavaScript code during the component rendering and build process.
Impact
When importing a component schema using the create-component command, Amplify Studio will import and generate the component on the users' behalf. The expression-binding function does not validate the component schema properties before converting them to expressions. As a result, an authenticated user who can create or modify components could run arbitrary JavaScript code during the component rendering and build process.
Impacted versions: <=2.20.2
Patches
This issue has been addressed partially in version 2.20.3 and additional fixes in 2.20.4. We recommend upgrading to the latest version and ensuring any forked or derivative code is patched to incorporate the new fixes.
Workarounds
There are no workarounds. Upgrade to version 2.20.4.
If you have any questions or comments about this advisory, AWS asks that you contact AWS/Amazon Security via the issue-reporting page or directly via email to aws-security@amazon.com. Please do not create a public GitHub issue.
Credit
AWS would like to thank ray the bounty hunter for collaborating on this issue through the coordinated issue disclosure process.
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 2.20.2"
},
"package": {
"ecosystem": "npm",
"name": "@aws-amplify/codegen-ui-react"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2.20.3"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2025-4318"
],
"database_specific": {
"cwe_ids": [
"CWE-95"
],
"github_reviewed": true,
"github_reviewed_at": "2026-07-30T20:57:24Z",
"nvd_published_at": "2025-05-05T19:15:57Z",
"severity": "CRITICAL"
},
"details": "### Summary\nThe AWS Amplify Studio [amplify-codegen-ui](https://github.com/aws-amplify/amplify-codegen-ui) is a package that generates front-end code from UI Builder entities (components, forms, views, and themes) primarily used in AWS Amplify Studio for component previews and in AWS Command Line Interface (AWS CLI) for generating component files in customers\u0027 local applications.\n\nAn issue exists in the Amplify Studio property binding process of the `amplify-codegen-ui `package that could potentially allow an authenticated user to run arbitrary JavaScript code during the component rendering and build process.\n\n### Impact\nWhen importing a component schema using the [create-component](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/amplifyuibuilder/create-component.html) command, Amplify Studio will import and generate the component on the users\u0027 behalf. The expression-binding function does not validate the component schema properties before converting them to expressions. As a result, an authenticated user who can create or modify components could run arbitrary JavaScript code during the component rendering and build process. \n\n**Impacted versions: \u003c=2.20.2**\n\n### Patches\nThis issue has been addressed partially in version [2.20.3](https://github.com/aws-amplify/amplify-codegen-ui/pull/1174) and additional fixes in [2.20.4](https://github.com/aws-amplify/amplify-codegen-ui/pull/1196). We recommend upgrading to the latest version and ensuring any forked or derivative code is patched to incorporate the new fixes.\n\n### Workarounds\nThere are no workarounds. Upgrade to version [2.20.4](https://github.com/aws-amplify/amplify-codegen-ui/releases/tag/v2.20.4).\n\nIf you have any questions or comments about this advisory, AWS asks that you contact AWS/Amazon Security via the [issue-reporting page](https://aws.amazon.com/security/vulnerability-reporting/) or directly via email to [aws-security@amazon.com](mailto:aws-security@amazon.com). Please do not create a public GitHub issue.\n\n### Credit\nAWS would like to thank `ray the bounty hunter` for collaborating on this issue through the coordinated issue disclosure process.",
"id": "GHSA-hf3j-86p7-mfw8",
"modified": "2026-07-30T20:57:24Z",
"published": "2026-07-30T20:57:24Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/aws-amplify/amplify-codegen-ui/security/advisories/GHSA-hf3j-86p7-mfw8"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-4318"
},
{
"type": "WEB",
"url": "https://github.com/aws-amplify/amplify-codegen-ui/commit/ca98c38b7c3d69ae7c94d2f62b51e32e8165dae6"
},
{
"type": "WEB",
"url": "https://aws.amazon.com/security/security-bulletins/AWS-2025-010"
},
{
"type": "WEB",
"url": "https://blog.securelayer7.net/cve-2025-4318-aws-amplify-rce"
},
{
"type": "PACKAGE",
"url": "https://github.com/aws-amplify/amplify-codegen-ui"
},
{
"type": "WEB",
"url": "https://github.com/aws-amplify/amplify-codegen-ui/releases/tag/v2.20.3"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H",
"type": "CVSS_V4"
}
],
"summary": "AWS Amplify Studio UI Component Properties Has an Input Validation Issue"
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.