{"id":"GHSA-4jqc-jvh2-pxg9","aliases":[],"status":"published","title":"Path traversal for local publishers in TechDocs backend","description":"### Impact\nA malicious actor with the ability to register entities in the Software Catalog is able to write files to arbitrary paths on the techdocs backend host instance when `techdocs.publisher.type` is set to `local`.\n\nThis vulnerability is mitigated by the fact that the Software Catalog must be configured with non-standard field format validators and/or non-standard entity policies.\n\n### Patches\nThose affected are advised to upgrade to `@backstage/plugin-techdocs-node` version `1.1.2` or higher.\n\n### Workarounds\nIf patching or upgrading is not possible, it would be sufficient to update any custom Catalog field format validators and/or custom entity policies to disallow entity names, kinds, and namespaces containing `..`\n\n\u003c!--\n### References\ntodo: Link to blog post / published report.\n--\u003e\n\n### For more information\nIf you have any questions or comments about this advisory:\n\n- Open an issue in the [Backstage repository](https://github.com/backstage/backstage)\n- Visit our chat, linked to in the [Backstage README](https://github.com/backstage/backstage)","facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"published":"2022-06-17T01:11:10Z","modified":"2023-01-12T05:01:02Z","fixes":[{"ecosystem":"npm","package":"@backstage/plugin-techdocs-node","fixed_in":["1.1.2"],"sources":["ghsa","osv"]},{"ecosystem":"npm","package":"@backstage/techdocs-common","fixed_in":["0.11.16"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"@backstage/plugin-techdocs-node","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.2"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@backstage/techdocs-common","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.11.16"}]}]},{"source":"osv","ecosystem":"npm","package":"@backstage/plugin-techdocs-node","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.1.2"}]}]},{"source":"osv","ecosystem":"npm","package":"@backstage/techdocs-common","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.11.16"}]}]}],"references":[{"url":"https://github.com/backstage/backstage/security/advisories/GHSA-4jqc-jvh2-pxg9","tags":["web"]},{"url":"https://github.com/backstage/backstage/commit/429c9f9daa5654dd1b996aa85f7264eb23a2e4fa","tags":["web"]},{"url":"https://github.com/advisories/GHSA-4jqc-jvh2-pxg9"},{"url":"https://github.com/backstage/backstage","tags":["package"]}],"sources":{"ghsa":[{"id":"GHSA-4jqc-jvh2-pxg9","title":"Path traversal for local publishers in TechDocs backend","description":"### Impact\nA malicious actor with the ability to register entities in the Software Catalog is able to write files to arbitrary paths on the techdocs backend host instance when `techdocs.publisher.type` is set to `local`.\n\nThis vulnerability is mitigated by the fact that the Software Catalog must be configured with non-standard field format validators and/or non-standard entity policies.\n\n### Patches\nThose affected are advised to upgrade to `@backstage/plugin-techdocs-node` version `1.1.2` or higher.\n\n### Workarounds\nIf patching or upgrading is not possible, it would be sufficient to update any custom Catalog field format validators and/or custom entity policies to disallow entity names, kinds, and namespaces containing `..`\n\n\u003c!--\n### References\ntodo: Link to blog post / published report.\n--\u003e\n\n### For more information\nIf you have any questions or comments about this advisory:\n\n- Open an issue in the [Backstage repository](https://github.com/backstage/backstage)\n- Visit our chat, linked to in the [Backstage README](https://github.com/backstage/backstage)","status":"published","published":"2022-06-17T01:11:10Z","modified":"2023-01-12T05:01:02Z","updated_at":"2026-11-02T14:36:13.23016Z"}],"osv":[{"id":"GHSA-4jqc-jvh2-pxg9","title":"Path traversal for local publishers in TechDocs backend","description":"### Impact\nA malicious actor with the ability to register entities in the Software Catalog is able to write files to arbitrary paths on the techdocs backend host instance when `techdocs.publisher.type` is set to `local`.\n\nThis vulnerability is mitigated by the fact that the Software Catalog must be configured with non-standard field format validators and/or non-standard entity policies.\n\n### Patches\nThose affected are advised to upgrade to `@backstage/plugin-techdocs-node` version `1.1.2` or higher.\n\n### Workarounds\nIf patching or upgrading is not possible, it would be sufficient to update any custom Catalog field format validators and/or custom entity policies to disallow entity names, kinds, and namespaces containing `..`\n\n\u003c!--\n### References\ntodo: Link to blog post / published report.\n--\u003e\n\n### For more information\nIf you have any questions or comments about this advisory:\n\n- Open an issue in the [Backstage repository](https://github.com/backstage/backstage)\n- Visit our chat, linked to in the [Backstage README](https://github.com/backstage/backstage)","status":"published","published":"2022-06-17T01:11:10Z","modified":"2022-06-17T01:11:10Z","updated_at":"2026-11-02T15:46:37.148947Z"}]}}
