{"id":"GHSA-5c7w-4wm3-85vw","title":"@asymmetric-effort/specifyjs: GraphQL gql tag allows metacharacter injection","summary":"@asymmetric-effort/specifyjs: GraphQL gql tag allows metacharacter injection","severity":"medium","cwe":["CWE-943"],"vendor":"asymmetric-effort","product":"@asymmetric-effort/specifyjs","ecosystem":"npm","affected":["@asymmetric-effort/specifyjs < 0.2.136"],"patched":["@asymmetric-effort/specifyjs 0.2.136"],"published":"2026-07-02","updated":"2026-07-02","source":"GHSA","sourceUrl":"https://github.com/advisories/GHSA-5c7w-4wm3-85vw","references":[{"url":"https://github.com/asymmetric-effort/specifyjs/security/advisories/GHSA-5c7w-4wm3-85vw"},{"url":"https://github.com/asymmetric-effort/specifyjs/commit/25d1fb491d99479efdf501f5f75e0bb80c908f0a"},{"url":"https://github.com/advisories/GHSA-5c7w-4wm3-85vw"}],"tags":["ghsa","npm"],"ingestedAt":"2026-07-02T19:41:50.962Z","slug":"GHSA-5c7w-4wm3-85vw","body":"## Overview\n\n## Finding\n\n**Location**: `core/src/client/graphql.ts:66-80`\n\nThe `gql` template tag function warned about interpolated values containing GraphQL metacharacters (`{}():`) but still concatenated them into the query string, enabling potential GraphQL injection.\n\n## Status\n\n**Fixed in v0.2.136** — The `gql` function now throws an error when metacharacters are detected in interpolated values, forcing developers to use the `variables` parameter.\n\n## Affected packages\n\n- `@asymmetric-effort/specifyjs < 0.2.136`\n\n## Remediation\n\nUpgrade to a patched release:\n\n- `@asymmetric-effort/specifyjs 0.2.136`","depth":"sunlit","depthScore":28,"depthScoreParts":{"impact":27.5,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}