{"id":"CVE-2026-54690","summary":"datamodel-code-generator vulnerable to SSRF via JSON-Schema `$ref` to HTTP URL (silent by default)","details":"datamodel-code-generator generates Pydantic v2 models, dataclasses, TypedDict, and msgspec.Struct from OpenAPI, JSON Schema, GraphQL, Avro, Protobuf, and raw JSON, YAML, or CSV. From 0.9.1 until 0.61.0, datamodel-code-generator silently dereferences attacker-controlled JSON Schema $ref HTTP or HTTPS URLs in src/datamodel_code_generator/parser/jsonschema.py through _get_ref_body, and the --allow-remote-refs gate can warn instead of blocking, allowing server-side request forgery through src/datamodel_code_generator/http.py. This issue is fixed in version 0.61.0.","aliases":["GHSA-954p-556p-r752"],"modified":"2026-07-31T03:34:07.363001269Z","published":"2026-07-28T21:42:06.802Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54690.json","cna_assigner":"GitHub_M","cwe_ids":["CWE-918"]},"references":[{"type":"WEB","url":"https://github.com/koxudaxi/datamodel-code-generator/releases/tag/0.61.0"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54690.json"},{"type":"ADVISORY","url":"https://github.com/koxudaxi/datamodel-code-generator/security/advisories/GHSA-954p-556p-r752"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54690"},{"type":"FIX","url":"https://github.com/koxudaxi/datamodel-code-generator/commit/5fdba4a09f2d7a9996a504975b7ef7d63e3715bb"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/koxudaxi/datamodel-code-generator","events":[{"introduced":"81a72d1a37e02fb72634a615530ca9b0656b3c5a"},{"fixed":"5fdba4a09f2d7a9996a504975b7ef7d63e3715bb"},{"fixed":"21a25c4aa3ac6cf55c2e20e33467b95d07892602"}],"database_specific":{"source":["AFFECTED_FIELD","REFERENCES"],"extracted_events":[{"introduced":"0.9.1"},{"fixed":"0.61.0"}]}}],"versions":["0.60.2","0.60.1","0.60.0","0.59.1","0.59.0","0.58.0","0.57.0","0.56.1","0.56.0","0.55.0","0.54.1","0.54.0","0.53.0","0.52.2","0.52.1","0.52.0","0.51.0","0.50.0","0.49.0","0.48.0","0.47.0","0.46.0","0.45.0","0.44.0","0.43.1","0.43.0","0.42.2","0.42.1","0.42.0","0.41.0","0.40.0","0.39.0","0.38.0","0.37.0","0.36.0","0.35.0","0.34.0","0.33.0","0.32.0","0.31.2","0.31.1","0.31.0","0.30.2","0.30.1","0.30.0","0.29.0","0.28.5","0.28.4","0.28.3","0.28.2","0.28.1","0.28.0","0.27.3","0.27.2","0.27.1","0.27.0","0.26.5","0.26.4","0.26.3","0.26.2","0.26.1","0.26.0","0.25.9","0.25.8","0.25.7","0.25.6","0.25.5","0.25.4","0.25.3","0.25.2","0.25.1","0.25.0","0.24.2","0.24.1","0.24.0","0.23.0","0.22.1","0.22.0","0.21.5","0.21.4","0.21.3","0.21.2","0.21.1","0.21.0","0.20.0","0.19.0","0.18.1","0.18.0","0.17.2","0.17.1","0.17.0","0.16.1","0.16.0","0.15.0","0.14.1","0.14.0","0.13.5","0.13.4","0.13.3","0.13.2","0.13.1","0.13.0","0.12.3","0.12.2","0.12.1","0.12.0","0.11.20","0.11.19","0.11.18","0.11.17","0.11.16","0.11.15","0.11.14","0.11.13","0.11.12","0.11.11","0.11.10","0.11.9","0.11.8","0.11.7","0.11.6","0.11.5","0.11.4","0.11.3","0.11.2","0.11.1","0.11.0","0.10.3","0.10.2","0.10.1","0.10.0","0.9.4","0.9.3","0.9.2","0.9.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54690.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N"}]}