TypeORM is a TypeScript and JavaScript ORM for Node.js that supports PostgreSQL, MySQL, MariaDB, SQLite, SQL Server, Oracle, and other databases. Prior to versions 0.3.31 and 1.1.0, typeorm migration:generate embeds database schema metadata into JavaScript or TypeScript template literals in src/commands/MigrationGenerateCommand.ts, escaping backticks but not ${...} interpolation. An attacker with database schema write access can place a payload in column COMMENT or DEFAULT metadata, or another introspected schema string, and the JavaScript engine evaluates the payload when the generated migration is loaded through migration:run, import, or require. This issue is fixed in versions 0.3.31 and 1.1.0.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-94"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/73xxx/CVE-2026-73651.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "0.3.31"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "1.0.0"
},
{
"fixed": "1.1.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "41d1c62fe49f99c3ca916d4d986f61ee9f45d519"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "b175f9b8be422edd2a2ac035ba90c3f2ce782dfe"
}
],
"source": "REFERENCES_COMMIT"
},
{
"original_tag": "0.3.31",
"range": [
{
"fixed": "797320375fb83b2e9af4a6455e0b1b4483be329d"
}
],
"source": "REFERENCES_TAG"
},
{
"original_tag": "1.1.0",
"range": [
{
"fixed": "8748b1be17bf93fc9b62b3444e411e9055e9e017"
}
],
"source": "REFERENCES_TAG"
}
]
}