{
  "affected": [
    {
      "ranges": [
        {
          "database_specific": {
            "extracted_events": [
              {
                "introduced": "0"
              },
              {
                "fixed": "5.2.3"
              }
            ],
            "source": [
              "AFFECTED_FIELD",
              "REFERENCES"
            ]
          },
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "247ace42277be1236e508adfaf49f87475603c93"
            }
          ],
          "repo": "https://github.com/azure/kafka-sink-azure-kusto",
          "type": "GIT"
        }
      ]
    }
  ],
  "aliases": [
    "GHSA-c9mr-mqvh-6wgj"
  ],
  "database_specific": {
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
      "CWE-943"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/42xxx/CVE-2026-42316.json"
  },
  "details": "kafka-sink-azure-kusto Kafka Connect plugin is the official Microsoft sink for Azure Data Explorer (Kusto). Prior to 5.2.3, kafka-sink-azure-kusto did not sanitize user-controlled values inside the kusto.tables.topics.mapping configuration. The db, table, mapping, and format fields of each mapping entry were interpolated directly into KQL management/query commands via String.formatted(...) (e.g., FETCH_TABLE_COMMAND.formatted(table) → \"\u003ctable\u003e | count\", FETCH_TABLE_MAPPING_COMMAND.formatted(table, format, mapping) → \".show table \u003ctable\u003e ingestion \u003cformat\u003e mapping '\u003cmapping\u003e'\"). An actor able to influence the connector configuration (for example, someone with permissions to submit or edit Kafka Connect connector configs) could embed KQL metacharacters (;, |, ') to execute arbitrary management commands in the context of the connector's service principal — enabling schema enumeration/modification, ingestion-mapping tampering, or changes to streaming/retention policies on the target Azure Data Explorer database. This is a tampering vulnerability. Exploitation requires privileged access to the connector configuration; no end-user interaction or Kafka record payload is involved. This vulnerability is fixed in 5.2.3.",
  "id": "CVE-2026-42316",
  "modified": "2026-08-07T11:31:27.701750933Z",
  "published": "2026-05-11T16:41:07.091Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/Azure/kafka-sink-azure-kusto/releases/tag/v5.2.3"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/Azure/kafka-sink-azure-kusto/security/advisories/GHSA-c9mr-mqvh-6wgj"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/42xxx/CVE-2026-42316.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-42316"
    },
    {
      "type": "FIX",
      "url": "https://github.com/Azure/kafka-sink-azure-kusto/pull/155"
    }
  ],
  "schema_version": "1.8.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N/E:P/RL:O/RC:C",
      "type": "CVSS_V3"
    }
  ],
  "summary": "KQL injection via kusto.tables.topics.mapping in kafka-sink-azure-kusto"
}