{"id":"CVE-2026-59863","summary":"Kiota: Workspace-config poisoning: out-of-repo file write + generation-time SSRF","details":"Kiota is an OpenAPI based HTTP Client code generator. Prior to 1.29.1 and 1.32.5, Kiota honored a poisoned .kiota/workspace.json workspace configuration without validating per-client or per-plugin outputPath values during kiota client generate and kiota plugin generate, allowing a malicious repository or pull request to use absolute paths, rooted POSIX / paths, UNC \\\\ or // paths, Windows drive X:\\ paths, or .. traversal segments to write generated client files outside the workspace root on a developer or CI host. This issue is fixed in version 1.29.1 and 1.32.5.","aliases":["GHSA-4rj6-vrwv-wr8m"],"modified":"2026-08-19T12:09:53.004357Z","published":"2026-07-16T14:42:02.337Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-22"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/59xxx/CVE-2026-59863.json"},"references":[{"type":"WEB","url":"https://github.com/microsoft/kiota/releases/tag/v1.32.5"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/59xxx/CVE-2026-59863.json"},{"type":"ADVISORY","url":"https://github.com/microsoft/kiota/security/advisories/GHSA-4rj6-vrwv-wr8m"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-59863"},{"type":"FIX","url":"https://github.com/microsoft/kiota/commit/4049327872db7846ace35c9003774d3e3878e4e9"},{"type":"FIX","url":"https://github.com/microsoft/kiota/pull/7885"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/microsoft/kiota","events":[{"introduced":"6ccf6da832742181cba0ab02588c5795b2185e13"},{"introduced":"0"},{"fixed":"071292ba58e3e2b4e569833ac88b1a7fe4433db7"},{"fixed":"70cd8bcba3ff1815f93187f3eb80ef96fd194d46"},{"fixed":"4049327872db7846ace35c9003774d3e3878e4e9"},{"fixed":"38ba79b2069fc207ec2f3e8c87ea988eea486a64"}],"database_specific":{"extracted_events":[{"introduced":"1.30.0"},{"fixed":"1.31.1"},{"introduced":"0"},{"fixed":"1.29.1"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["v1.29.0","v1.32.4","v1.32.3","v1.32.2","v1.32.1","v1.32.0","v1.31.1","v1.31.0","v1.30.0","v1.27.0","v1.27.0-preview.202506050001","v1.27.0-preview.202505290001","v1.27.0-preview.202505220001","v1.26.1","v1.26.0","v1.25.1-preview.202505010001","v1.25.1-preview.202504240001","v1.25.1-preview.202504170001","v1.25.1-preview.202504100001","v1.25.1","v1.24.3","v1.24.2","v1.24.1","v1.24.0","v1.24.0-preview.202503060001","v1.24.0-preview.202502270001","v1.23.0","v1.23.0-preview.202501310001","v1.22.3","v1.22.2","v1.22.1","v1.22.0","v1.22.0-preview.202412270001","v1.22.0-preview.202412190001","v1.22.0-preview.202412120001","v1.21.0","v1.21.0-preview.202411290004","v1.21.0-preview.202411290003","v1.21.0-preview.202411220001","v1.21.0-preview.202411150001","v1.20.0","v1.20.0-preview.202410240001","v1.20.0-preview.202410180001","v1.19.1","v1.20.0-preview.202410100001","v1.19.0","v1.19.0-preview.202409260001","v1.19.0-preview.202409200002","v1.19.0-preview.202409200001","v1.19.0-preview.202409120001","v1.18.0","v1.18.0-preview.202408290001","v1.18.0-preview.202408220001","v1.18.0-preview.202408150001","v1.17.0","v1.17.0-preview.202408010001","v1.16.0","v1.16.0-preview.202406270001","v1.16.0-preview.202406210001","v1.16.0-preview.202406130001","v1.15.0","v1.15.0-preview.202405310001","v1.15.0-preview.202405230001","v1.15.0-preview.202405160001","v1.15.0-preview.202405090001","v1.14.0","v1.14.0-preview.202404250001","v1.14.0-preview.202404180001","v1.14.0-preview.202404120001","v1.13.0-preview.202403280001","v1.13.0","v1.13.0-preview.202403210001","v1.12.0","v1.12","v1.12.0-preview.202402290001","v1.12.0-preview.202402220002","v1.11.1-preview.202402220001","v1.11.1-preview.202402150001","v1.11.1-preview.202402080001","v1.11.1","v1.11.0","v1.11.0-preview.202401300001","v1.10.1","v1.10.0","v1.10.0-preview.202312220001","v1.9.1","v1.9.0-preview.202311300001","v1.9.0-preview.202311230001","v1.9.0-preview.202311160001","v1.8.2","v1.8.1","v1.8.0","v1.8.0-preview.202310260001","v1.8.0-preview.202310190001","v1.7.0","v1.8.0-preview.202310120001","v1.7.0-preview.202309280001","v1.7.0-preview.202309210001","v1.6.1","v1.6.0","v1.6.0-preview.202309070001","v1.6.0-preview.202308310001","v1.6.0-preview.202308240001","v1.5.1","v1.5.0","v1.5.0-preview.202308030001","v1.5.0-preview.202307270001","v1.5.0-preview.202307200001","v1.5.0-preview.202307170006","v1.4.0","v1.3.0","v1.2.1","v1.2.0","v1.1.1","v1.1.0","v1.0.1","v1.0.0","v0.11.1","v0.11.0","v0.10.0","v0.9.0","v0.8.3","v0.8.2","v0.8.1","v0.8.0","v0.7.0","v0.7.1","v0.6.0","v0.5.1","v0.5.0","v0.4.0","v0.3.0","v0.2.1","v0.2.0","v0.1.3","v0.1.2","v0.1.1","v0.1.0","v0.0.23","v0.0.22","v0.0.21","v0.0.20","v0.0.19","v0.0.18","v0.0.17","v0.0.16","v0.0.15","v0.0.14","v0.0.13","v0.0.12","v0.0.11","v0.0.10","v0.0.9","v0.0.8","v0.0.7","v0.0.6","v0.0.5","v0.0.4","v0.0.3","v0.0.2"],"database_specific":{"vanir_signatures_modified":"2026-08-19T12:09:53Z","vanir_signatures":[{"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["66609017551477010826143835577406265593","35496344713004664179944048284480170529","147500007851372202392601133532187874810","240753228186878202917022054237087631710","322801780681153563118919792465691120440","105331927903652750006918956054969541779","92754106178057991798446179728179208061","253209821667215414607528288804099395645","250008073155348665397373185331785853495","64797852886090781921647040874546962214"]},"id":"CVE-2026-59863-0255b0db","signature_type":"Line","signature_version":"v1","source":"https://github.com/microsoft/kiota/commit/70cd8bcba3ff1815f93187f3eb80ef96fd194d46","target":{"file":"it/java/gh/src/test/java/GHAPITest.java"}}],"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-59863.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N"}]}