{"data":{"id":"7e3ef578-1d4a-4ab9-b610-4c3cb7807216","title":"GHSA-w28w-gp39-m4p6: Prompty: Server-Side Template Injection to Remote Code Execution in the @prompty/core Nunjucks Renderer","summary":"The TypeScript Nunjucks renderer in @prompty/core evaluated untrusted .prompty template bodies with unrestricted JavaScript member access. An attacker-controlled template could traverse constructor and prototype properties to run JavaScript in the host Node.js process. Affected versions are <= 0.1.4 and <= 2.0.0-beta.4.","solution":"Upgrade to @prompty/core 2.0.0-beta.5 or later. The patched renderer sanitizes render inputs to own-data-only values, rejects constructor/prototype member traversal, and disallows template function calls. Ordinary interpolation, conditionals, loops, and own nested data properties remain supported.","labels":["security"],"sourceUrl":"https://github.com/advisories/GHSA-w28w-gp39-m4p6","publishedAt":"2026-07-24T16:23:59.000Z","cveId":null,"cweIds":null,"cvssScore":null,"cvssSeverity":"critical","severity":"critical","attackType":["other"],"issueType":"vulnerability","affectedPackages":["@prompty/core@>= 2.0.0-alpha.1, <= 2.0.0-beta.4 (fixed: 2.0.0-beta.5)","@prompty/core@<= 0.1.4 (fixed: 0.1.5)"],"affectedPackageNames":["@prompty/core"],"affectedPackageRefs":["npm:@prompty/core"],"affectedVendors":[],"affectedVendorsRaw":["Prompty","@prompty/core"],"classifierModel":"claude-haiku-5-5","classifierPromptVersion":"v4","summaryPromptVersion":"v2","headline":null,"headlinePromptVersion":null,"cvssVector":null,"attackVector":null,"attackComplexity":null,"privilegesRequired":null,"userInteraction":null,"exploitMaturity":null,"epssScore":null,"epssCheckedAt":null,"kevDateAdded":null,"advisoryAliases":["GHSA-w28w-gp39-m4p6"],"affectedPackagesSource":null,"affectedPackagesCheckedAt":null,"patchAvailable":true,"disclosureDate":"2026-07-24T16:23:59.000Z","fixReleasedAt":"2026-07-20T17:42:22.539Z","daysToFix":-4,"fixCheckedAt":"2026-10-29T21:32:40.059Z","capecIds":null,"crossRefCount":0,"attackSophistication":"moderate","impactType":["confidentiality","integrity","availability","safety"],"aiComponentTargeted":"framework","llmSpecific":false,"classifierConfidence":0.93,"researchCategory":null,"atlasIds":null,"fixes":[{"ecosystem":"npm","name":"@prompty/core","fixedVersion":"0.1.5","matchedVersion":"0.1.5","fixReleasedAt":"2026-07-20T18:54:30.428Z","daysToFix":-4,"match":"ecosystem","source":"registry","status":"found","checkedAt":"2026-10-29T21:32:39.912Z"},{"ecosystem":"npm","name":"@prompty/core","fixedVersion":"2.0.0-beta.5","matchedVersion":"2.0.0-beta.5","fixReleasedAt":"2026-07-20T17:42:22.539Z","daysToFix":-4,"match":"ecosystem","source":"registry","status":"found","checkedAt":"2026-10-29T21:32:39.912Z"}]}}