This is an automated email from the ASF dual-hosted git repository.

pkarwasz pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 8e69696ef022a6e322d4a7ea3ad31d349bdc1232
Author: Piotr P. Karwasz <[email protected]>
AuthorDate: Mon Nov 6 16:19:27 2023 +0100

    Check security bugs reported in other modules
---
 .../log4j/flume/appender/FlumePersistentManager.java        | 13 +++++++++++++
 .../apache/logging/log4j/flume/appender/package-info.java   |  2 +-
 .../org/apache/logging/log4j/jul/Log4jBridgeHandler.java    |  7 ++++++-
 .../java/org/apache/logging/log4j/jul/package-info.java     |  2 +-
 .../logging/log4j/layout/template/json/util/Uris.java       |  9 +++++++++
 log4j-perf/pom.xml                                          |  7 +++----
 6 files changed, 33 insertions(+), 7 deletions(-)

diff --git 
a/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java
 
b/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java
index aa32f7cf33..6eb8d91ee7 100644
--- 
a/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java
+++ 
b/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java
@@ -48,6 +48,7 @@ import com.sleepycat.je.LockMode;
 import com.sleepycat.je.OperationStatus;
 import com.sleepycat.je.StatsConfig;
 import com.sleepycat.je.Transaction;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import org.apache.flume.Event;
 import org.apache.flume.event.SimpleEvent;
 import org.apache.logging.log4j.LoggingException;
@@ -171,6 +172,10 @@ public class FlumePersistentManager extends 
FlumeAvroManager {
     }
 
     @Override
+    @SuppressFBWarnings(
+            value = {"CIPHER_INTEGRITY", "ECB_MODE"},
+            justification = "Work-in-progress: 
https://github.com/apache/logging-log4j2/issues/1947";
+    )
     public void send(final Event event)  {
         if (worker.isShutdown()) {
             throw new LoggingException("Unable to record event");
@@ -384,6 +389,10 @@ public class FlumePersistentManager extends 
FlumeAvroManager {
          * @return The FlumeKratiManager.
          */
         @Override
+        @SuppressFBWarnings(
+                value = "PATH_TRAVERSAL_IN",
+                justification = "The name of the directory is provided in a 
configuration file."
+        )
         public FlumePersistentManager createManager(final String name, final 
FactoryData data) {
             SecretKey secretKey = null;
             Database database = null;
@@ -777,6 +786,10 @@ public class FlumePersistentManager extends 
FlumeAvroManager {
             return errors;
         }
 
+        @SuppressFBWarnings(
+                value = {"CIPHER_INTEGRITY", "ECB_MODE"},
+                justification = "Work-in-progress: 
https://github.com/apache/logging-log4j2/issues/1947";
+        )
         private SimpleEvent createEvent(final DatabaseEntry data) {
             final SimpleEvent event = new SimpleEvent();
             try {
diff --git 
a/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/package-info.java
 
b/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/package-info.java
index 9ea0704d3d..77dac0c5d4 100644
--- 
a/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/package-info.java
+++ 
b/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/package-info.java
@@ -19,7 +19,7 @@
  */
 @Export
 @Open("org.apache.logging.log4j.core")
-@Version("2.20.1")
+@Version("2.20.2")
 package org.apache.logging.log4j.flume.appender;
 
 import aQute.bnd.annotation.jpms.Open;
diff --git 
a/log4j-jul/src/main/java/org/apache/logging/log4j/jul/Log4jBridgeHandler.java 
b/log4j-jul/src/main/java/org/apache/logging/log4j/jul/Log4jBridgeHandler.java
index a2087d90af..9b41c3330f 100644
--- 
a/log4j-jul/src/main/java/org/apache/logging/log4j/jul/Log4jBridgeHandler.java
+++ 
b/log4j-jul/src/main/java/org/apache/logging/log4j/jul/Log4jBridgeHandler.java
@@ -25,6 +25,7 @@ import java.util.Set;
 import java.util.function.Consumer;
 import java.util.logging.LogRecord;
 
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import org.apache.logging.log4j.core.LoggerContext;
 import org.apache.logging.log4j.core.config.Configuration;
 import org.apache.logging.log4j.core.config.LoggerConfig;
@@ -137,7 +138,11 @@ public class Log4jBridgeHandler extends 
java.util.logging.Handler implements Con
 
 
     /** Perform init. of this handler with given configuration (typical use is 
for constructor). */
-       protected void init(boolean debugOutput, String suffixToAppend, boolean 
propagateLevels) {
+    @SuppressFBWarnings(
+            value = "INFORMATION_EXPOSURE_THROUGH_AN_ERROR_MESSAGE",
+            justification = "The data is available only in debug mode."
+    )
+    protected void init(boolean debugOutput, String suffixToAppend, boolean 
propagateLevels) {
            this.doDebugOutput = debugOutput;
         if (debugOutput) {
             new Exception("DIAGNOSTIC ONLY (sysout):  Log4jBridgeHandler 
instance created (" + this + ")")
diff --git 
a/log4j-jul/src/main/java/org/apache/logging/log4j/jul/package-info.java 
b/log4j-jul/src/main/java/org/apache/logging/log4j/jul/package-info.java
index ad9d54ef40..dd22747306 100644
--- a/log4j-jul/src/main/java/org/apache/logging/log4j/jul/package-info.java
+++ b/log4j-jul/src/main/java/org/apache/logging/log4j/jul/package-info.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 @Export
-@Version("2.20.1")
+@Version("2.20.2")
 package org.apache.logging.log4j.jul;
 
 import org.osgi.annotation.bundle.Export;
diff --git 
a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/Uris.java
 
b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/Uris.java
index 694d0eaa96..5182e64e63 100644
--- 
a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/Uris.java
+++ 
b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/Uris.java
@@ -30,6 +30,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
 
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import org.apache.logging.log4j.Logger;
 import org.apache.logging.log4j.status.StatusLogger;
 import org.apache.logging.log4j.util.LoaderUtil;
@@ -93,6 +94,10 @@ public final class Uris {
         }
     }
 
+    @SuppressFBWarnings(
+            value = "PATH_TRAVERSAL_IN",
+            justification = "The uri parameter comes from aconfiguration file."
+    )
     private static String readFileUri(
             final URI uri,
             final Charset charset)
@@ -103,6 +108,10 @@ public final class Uris {
         }
     }
 
+    @SuppressFBWarnings(
+            value = "URLCONNECTION_SSRF_FD",
+            justification = "The uri parameter comes fro a configuration file."
+    )
     private static String readClassPathUri(
             final URI uri,
             final Charset charset)
diff --git a/log4j-perf/pom.xml b/log4j-perf/pom.xml
index 7f13277e17..964b033eea 100644
--- a/log4j-perf/pom.xml
+++ b/log4j-perf/pom.xml
@@ -30,10 +30,9 @@
   <description>The Apache Log4j development-time performance 
tests</description>
 
   <properties>
-    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-    <log4jParentDir>${basedir}/..</log4jParentDir>
-    <docLabel>Apache Log4J Performance Tests</docLabel>
-    <projectDir>/log4j-perf</projectDir>
+    <!-- Ignore less important (high rank) bugs for test artifacts -->
+    <spotbugs.maxRank>9</spotbugs.maxRank>
+
     <uberjar.name>benchmarks</uberjar.name>
     <bnd.baseline.skip>true</bnd.baseline.skip>
     <maven.deploy.skip>true</maven.deploy.skip>

Reply via email to