CVE-2026-44913: Apache NiFi CaptureChangeMySQL SQL Injection Vulnerability
Apache NiFi versions 1.2.0 through 2.9.0 contain a SQL injection vulnerability in the CaptureChangeMySQL Processor. The flaw stems from inadequate escaping of database table names, allowing an authenticated attacker with high privileges to inject arbitrary SQL commands by supplying crafted table names. A partial mitigation added in version 1.8.0 introduced quoted boundaries but did not eliminate the risk entirely. Organizations using other NiFi processors are unaffected. Upgrading to version 2.10.0 resolves the issue through improved identifier escaping.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 7.2 HIGH · CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
- Weaknesses (CWE)
- CWE-116
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-06-22 / 2026-06-23
NVD description (verbatim)
Improper escaping of database table names in the CaptureChangeMySQL Processor included with Apache NiFi 1.2.0 through 2.9.0 allows for injecting SQL commands using crafted naming. Manual quoted boundaries added in Apache NiFi 1.8.0 narrowed the scope of potential injection options, but did not cover additional strategies. Apache NiFi installations that do not use the CaptureChangeMySQL Processor are not subject to this vulnerability. Upgrading to Apache NiFi 2.10.0 is the recommended mitigation, which incorporates more robust identifier escaping.
2 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
The CaptureChangeMySQL Processor in NiFi constructs SQL statements dynamically using table names sourced from configuration or external input without sufficient escaping. An attacker with elevated privileges can craft malicious table identifiers that break out of intended quoting mechanisms and inject arbitrary SQL. Although NiFi 1.8.0 added manual quoted boundaries as a defensive layer, this approach was incomplete and did not account for alternative injection vectors. The vulnerability requires high privileges to exploit, which significantly constrains the attack surface. Version 2.10.0 implements more comprehensive identifier escaping that neutralizes known injection patterns.
Business impact
Organizations relying on CaptureChangeMySQL for database change tracking face data confidentiality, integrity, and availability risks if an insider or highly privileged user exploits this vulnerability. An attacker could read sensitive data, modify database contents, or disrupt processing pipelines. The impact is limited to environments where this specific processor is actively deployed and configured, and requires the attacker to possess admin-level NiFi credentials. For organizations not using CaptureChangeMySQL, there is no business risk. Delayed patching extends exposure in affected deployments.
Affected systems
Apache NiFi installations running versions 1.2.0 through 2.9.0 that have the CaptureChangeMySQL Processor enabled are vulnerable. The scope is further restricted to deployments where this processor handles real database change-capture workflows. NiFi instances that do not use this processor, or that run version 2.10.0 or later, are not affected. Verify your NiFi version and review your dataflow configurations to identify active uses of CaptureChangeMySQL.
Exploitability
Exploitation requires high-privilege authentication to NiFi (CVSS:3.1 indicates PR:H, meaning privileged user role is mandatory). An attacker cannot exploit this remotely via unauthenticated access or low-privilege accounts. The barrier to exploitation is meaningful: insider threats and compromised admin accounts present the primary risk vector. No exploit code exists in public repositories, and there is no evidence of active weaponization in the wild. The vulnerability is not severe enough to warrant emergency response for organizations with strong privilege management, but it should be prioritized for patching in environments with elevated insider risk or when admin credentials are shared across multiple users.
Remediation
Upgrade Apache NiFi to version 2.10.0 or later, which incorporates robust identifier escaping that prevents the injection attack. If immediate upgrading is not feasible, disable the CaptureChangeMySQL Processor in production environments until patched. Verify after upgrade that dataflows using this processor continue to function correctly, as the escaping changes may affect edge-case configurations. Test in a staging environment first to confirm compatibility with your specific database and processor settings.
Patch guidance
Apache NiFi 2.10.0 is the recommended target version. Download from the official Apache NiFi release channels and verify artifact signatures. Review the upgrade path for your current version in the Apache NiFi documentation—most organizations can upgrade in-place, but back up your flow configuration and state beforehand. After patching, restart NiFi and validate that CaptureChangeMySQL processors resume normal operation without configuration drift. Monitor logs for any identifier-escaping anomalies during the first 24 hours post-upgrade.
Detection guidance
Monitor NiFi audit logs for CaptureChangeMySQL Processor configuration changes, particularly table name arguments containing special characters (quotes, semicolons, SQL keywords). Watch for failed or malformed SQL statements in processor logs that may indicate injection attempts. Database audit logs can reveal unexpected SQL queries or schema introspection commands executed via NiFi connections. If you suspect exploitation, compare recent dataflow configurations against version-control snapshots to identify unauthorized modifications. Correlate NiFi privilege logs with database access logs to detect high-privilege user activities that deviate from normal patterns.
Why prioritize this
Although the CVSS score of 7.2 is classified as HIGH, the privilege requirement (PR:H) significantly constrains real-world risk. Prioritize this vulnerability based on your threat model: if insider threats or admin-credential compromise are serious concerns in your environment, treat it as critical and patch immediately. For organizations with strong access controls and low insider-risk profiles, this is a standard-priority patch that should be included in the next maintenance window. The existence of a clear, simple mitigation (upgrade to 2.10.0) and the absence of known exploitation in the wild support a measured approach over panic-driven response.
Risk score, explained
CVSS 7.2 (HIGH) reflects the impact severity (all three: confidentiality, integrity, availability) balanced against the high-privilege requirement. The attack vector is network-accessible, and no user interaction is required once the attacker has admin credentials—characteristics that elevate the score. However, the privileged-user constraint prevents this from reaching a critical score (8.0+). The real-world risk for your organization depends on whether CaptureChangeMySQL is deployed and how tightly you control admin-level access. Organizations with mature privilege management and this processor unused can safely deprioritize relative to the numerical score; conversely, those with shared or loosely managed admin accounts should treat it more seriously.
Frequently asked questions
Do I need to patch if I don't use the CaptureChangeMySQL Processor?
No. The vulnerability is isolated to that processor. If your NiFi dataflows do not include CaptureChangeMySQL, you are not affected. Verify your flow configuration to confirm.
Can an unauthenticated user exploit this?
No. The vulnerability requires high-privilege (admin-level) authentication to NiFi. It cannot be exploited by unauthenticated attackers or low-privilege users.
What should I do if I'm on NiFi 1.8.0–2.0.x?
Version 1.8.0 included partial mitigation (quoted boundaries) but is still vulnerable. Upgrade to 2.10.0 to obtain the complete fix. If you are on an intermediate version between 1.8.0 and 2.9.0, the same recommendation applies: upgrade to 2.10.0.
Will upgrading to 2.10.0 break my existing dataflows?
The escaping changes should be backward compatible for standard table names. However, test in a staging environment first if your configuration uses non-standard or special characters in table names.
This analysis is provided for informational purposes. Verify all patch versions, affected product ranges, and remediation steps against official Apache NiFi advisories and your own environmental testing. SEC.co makes no warranty as to the completeness or accuracy of this guidance. Organizations should perform independent risk assessment and testing before applying patches in production. Consult Apache NiFi documentation and your vendor support channels for deployment-specific guidance. Source: NVD (public-domain), retrieved 2026-07-28. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2026-12044HIGHSQL Injection in pgAdmin 4 Description Fields
- CVE-2026-42558HIGHXibo Stored XSS and Iframe Sandbox Escape in Data Connector
- CVE-2026-45011HIGHApostropheCMS 4.29.0 Stored XSS in Image Widget – Security Analysis
- CVE-2026-48209HIGHReflected XSS in OTRS Ticket Handling – HIGH Severity Vulnerability
- CVE-2026-8795HIGHRapid7 Velociraptor YAML Injection in Remapping Artifact (v0.76.6)
- CVE-2026-12047LOWHTML Injection in pgAdmin 4 Cloud Deployment Wizard
- CVE-2026-44311MEDIUMFabric.js XSS Vulnerability in SVG Serialization
- CVE-2026-49472MEDIUMFreeSWITCH XML Parser Denial of Service (MEDIUM)