CVE-2020-1928: Insertion of Sensitive Information into Log File in Apache NiFi
Summary
CVE-2020-1928: Apache NiFi Insertion of Sensitive Information into Log File. Affects org.apache.nifi:nifi-parameter versions >= 1.10.0, < 1.11.0. Fixed in 1.11.0. How to fix ↓
Also tracked for
- nifi · Bitnami
The same CVE-2020-1928 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
Apache NiFi is an open-source data integration tool that enables the automation of data flow between systems. It provides a web-based user interface for designing, managing, and monitoring data flows. NiFi is built on the concepts of flow-based programming and provides a wide range of processors, controllers, and services to facilitate data integration tasks. However, a vulnerability has been discovered in Apache NiFi version 1.10.0 that allows for the insertion of sensitive information into log files.
Vulnerability Detail
The vulnerability in Apache NiFi 1.10.0 involves the sensitive parameter parser, which logs parsed values for debugging purposes. This logging behavior exposes literal values entered in a sensitive property when no parameter is present. An attacker with access to the log files could potentially extract sensitive information, such as passwords or API keys, leading to unauthorized access or data breaches. The vulnerability has a CVSS score of 5.3, indicating a moderate severity level.
How To Fix
Minimum fixed version
1.11.0
This is the first release that contains the fix.
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
As a workaround, users can manually modify the Apache NiFi configuration to disable logging of sensitive information. This can be achieved by adjusting the log levels or configuring log filters to exclude sensitive properties. Here is an example of how to modify the logback.xml configuration file to exclude sensitive properties:
<configuration>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>/path/to/log/file.log</file>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n</pattern>
</encoder>
<filter class="ch.qos.logback.core.filter.EvaluatorFilter">
<evaluator>
<expression>!contains(message, 'sensitive_property')</expression>
</evaluator>
<OnMismatch>DENY</OnMismatch>
<OnMatch>NEUTRAL</OnMatch>
</filter>
</appender>
...
</configuration>
Conclusion
In conclusion, Apache NiFi version 1.10.0 is vulnerable to the insertion of sensitive information into log files. To mitigate this vulnerability, it is crucial to upgrade to Apache NiFi version 1.11.0-RC1 or later. Alternatively, users can implement a workaround by modifying the Apache NiFi configuration to exclude logging of sensitive properties. For further assistance or support in vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for org.apache.nifi:nifi-parameter →
FAQ
Apache NiFi is an open-source data integration tool that facilitates the automation of data flow between systems. It provides a web-based user interface for designing, managing, and monitoring data flows.
The vulnerability allows for the insertion of sensitive information into log files, which can be accessed by attackers. This could lead to unauthorized access or data breaches if sensitive information, such as passwords or API keys, is exposed.
The vulnerability has a CVSS score of 5.3, indicating a moderate severity level.
To fix this vulnerability, it is recommended to upgrade to Apache NiFi version 1.11.0-RC1 or later. This version includes a fix for the logging behavior that exposes sensitive information.
Yes, users can manually modify the Apache NiFi configuration to disable logging of sensitive information. This can be achieved by adjusting log levels or configuring log filters to exclude sensitive properties.