CVE-2026-107377
Deferred Deferred - Pending Action

Path Traversal in datamodel-code-generator

Vulnerability report for CVE-2026-107377, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-10-08

Last updated on: 2026-10-08

Assigner: GitHub, Inc.

Description

datamodel-code-generator generates Python data models from schema definitions. From 0.59.0 until 0.81.0, an attacker-controlled Protobuf schema can supply absolute or parent-directory paths captured by WEAK_IMPORT_PATTERN and consumed by _write_missing_weak_imports in src/datamodel_code_generator/parser/protobuf.py. Exploitation requires a victim or automated job to process the attacker-controlled schema with Protobuf input support, which requires the grpcio-tools package. The paths escape the weak_imports temporary directory before protoc runs, allowing creation of directory trees and new files or overwrite of existing writable files with a generated Protobuf syntax declaration. The effect persists when later Protobuf compilation fails. The written content is limited to a proto2 or proto3 syntax declaration, and direct arbitrary code execution has not been demonstrated. This issue is fixed in version 0.81.0.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-10-08
Last Modified
2026-10-08
Generated
2026-10-08
AI Q&A
2026-10-08
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
datamodel-code-generator datamodel-code-generator >= 0.59.0, < 0.81.0

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-73 The product allows user input to control or influence paths or file names that are used in filesystem operations.
CWE-22 The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability affects datamodel-code-generator versions 0.59.0 to 0.81.0. An attacker can craft a Protobuf schema with malicious paths that bypass intended restrictions. The tool processes these paths and writes files outside a temporary directory, potentially creating new files or overwriting existing ones with Protobuf syntax declarations.

Detection Guidance

Check installed versions of datamodel-code-generator between 0.59.0 and 0.81.0. Look for unexpected file modifications or new files in directories where Protobuf schemas are processed. Review logs for Protobuf compilation failures with suspicious file operations.

Impact Analysis

If you process untrusted Protobuf schemas with affected versions, an attacker could overwrite files on your system or create new ones. This requires the grpcio-tools package and Protobuf input support. The impact is limited to file system changes, not direct code execution.

Mitigation Strategies

Upgrade datamodel-code-generator to version 0.81.0 or later. Remove grpcio-tools if Protobuf input support is not required. Audit and restrict write permissions in directories where Protobuf schemas are processed.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-107377. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart