Find, fix and prevent vulnerabilities in your code.
critical severity
- Vulnerable module: org.postgresql:postgresql
- Introduced through: org.postgresql:postgresql@42.6.0
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.postgresql:postgresql@42.6.0Remediation: Upgrade to org.postgresql:postgresql@42.6.1.
Overview
org.postgresql:postgresql is a Java JDBC 4.2 (JRE 8+) driver for PostgreSQL database.
Affected versions of this package are vulnerable to SQL Injection when using PreferQueryMode=SIMPLE, which is not the default setting. By passing in a numeric value placeholder immediately preceded by a minus and followed by a second placeholder for a string value, on the same line, an attacker can construct a payload that alters the parameterized query into which it is interpolated. This effectively bypasses the protections against SQL Injection that parameterized queries offer.
Remediation
Upgrade org.postgresql:postgresql to version 42.2.28.jre7, 42.3.9, 42.4.4, 42.5.5, 42.6.1, 42.7.2 or higher.
References
high severity
- Vulnerable module: commons-lang:commons-lang
- Introduced through: com.orientechnologies:orientdb-client@3.2.23 and org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › com.orientechnologies:orientdb-client@3.2.23 › com.orientechnologies:orientdb-core@3.2.23 › commons-lang:commons-lang@2.6
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › commons-configuration:commons-configuration@1.10 › commons-lang:commons-lang@2.6
Overview
Affected versions of this package are vulnerable to Uncontrolled Recursion via the ClassUtils.getClass function. An attacker can cause the application to terminate unexpectedly by providing excessively long input values.
Remediation
There is no fixed version for commons-lang:commons-lang.
References
high severity
- Vulnerable module: org.apache.commons:commons-lang3
- Introduced through: org.apache.commons:commons-lang3@3.12.0, org.apache.commons:commons-text@1.10.0 and others
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.apache.commons:commons-lang3@3.12.0Remediation: Upgrade to org.apache.commons:commons-lang3@3.18.0.
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.apache.commons:commons-text@1.10.0 › org.apache.commons:commons-lang3@3.12.0Remediation: Upgrade to org.apache.commons:commons-text@1.14.0.
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.commons:commons-configuration2@2.9.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:tinkergraph-gremlin@3.7.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.commons:commons-configuration2@2.9.0 › org.apache.commons:commons-text@1.10.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.commons:commons-text@1.10.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:tinkergraph-gremlin@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-groovy@3.7.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:tinkergraph-gremlin@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-groovy@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-groovy@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-lang3@3.12.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0 › org.apache.commons:commons-lang3@3.12.0
Overview
Affected versions of this package are vulnerable to Uncontrolled Recursion via the ClassUtils.getClass function. An attacker can cause the application to terminate unexpectedly by providing excessively long input values.
Remediation
Upgrade org.apache.commons:commons-lang3 to version 3.18.0 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-core
- Introduced through: com.orientechnologies:orientdb-client@3.2.23
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › com.orientechnologies:orientdb-client@3.2.23 › com.orientechnologies:orientdb-core@3.2.23 › com.fasterxml.jackson.core:jackson-core@2.14.2Remediation: Upgrade to com.orientechnologies:orientdb-client@3.2.24.
Overview
com.fasterxml.jackson.core:jackson-core is a Core Jackson abstractions, basic JSON streaming API implementation
Affected versions of this package are vulnerable to Denial of Service (DoS) due to missing input size validation when performing numeric type conversions. A remote attacker can exploit this vulnerability by causing the application to deserialize data containing certain numeric types with large values, causing the application to exhaust all available resources.
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade com.fasterxml.jackson.core:jackson-core to version 2.15.0-rc1 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-core
- Introduced through: com.orientechnologies:orientdb-client@3.2.23
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › com.orientechnologies:orientdb-client@3.2.23 › com.orientechnologies:orientdb-core@3.2.23 › com.fasterxml.jackson.core:jackson-core@2.14.2Remediation: Upgrade to com.orientechnologies:orientdb-client@3.2.24.
Overview
com.fasterxml.jackson.core:jackson-core is a Core Jackson abstractions, basic JSON streaming API implementation
Affected versions of this package are vulnerable to Stack-based Buffer Overflow due to the parse process, which accepts an unlimited input file with deeply nested data. An attacker can cause a stack overflow and crash the application by providing input files with excessively deep nesting.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-core to version 2.15.0-rc1 or higher.
References
high severity
- Vulnerable module: commons-beanutils:commons-beanutils
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:tinkergraph-gremlin@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › commons-beanutils:commons-beanutils@1.9.4
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-core@3.7.0 › commons-beanutils:commons-beanutils@1.9.4
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › commons-beanutils:commons-beanutils@1.9.4
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-groovy@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › commons-beanutils:commons-beanutils@1.9.4
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › commons-beanutils:commons-beanutils@1.9.4
Overview
commons-beanutils:commons-beanutils is a provides an easy-to-use but flexible wrapper around reflection and introspection.
Affected versions of this package are vulnerable to Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') via the getProperty and getNestedProperty methods of the PropertyUtilsBean class. An attacker can execute arbitrary code by accessing the declaredClass property of Java enum objects, which allows access to the ClassLoader.
Note:
The BeanIntrospector class that can mitigate this vulnerability was added in version 1.9.2 but its usage was not enabled by default.
Remediation
Upgrade commons-beanutils:commons-beanutils to version 1.11.0 or higher.
References
high severity
- Vulnerable module: io.netty:netty-codec-http
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http@4.1.86.Final
Overview
io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.
Affected versions of this package are vulnerable to HTTP Request Smuggling via the parsing of chunk extensions in HTTP/1.1 messages with chunked encoding. An attacker can bypass HTTP request boundaries by sending specially crafted HTTP requests that exploit differences in how standalone newline characters are parsed between reverse proxies and the backend, potentially allowing them to smuggle additional requests.
Remediation
Upgrade io.netty:netty-codec-http to version 4.1.125.Final, 4.2.5.Final or higher.
References
high severity
- Vulnerable module: io.netty:netty-codec-http
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http@4.1.86.Final
Overview
io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.
Affected versions of this package are vulnerable to Improper Handling of Highly Compressed Data (Data Amplification) via the BrotliDecoder.decompress function, which has no limit on how often it calls pull, decompressing data 64K bytes at a time. An attacker can exhaust system memory and cause application downtime by submitting specially crafted compressed input that triggers excessive buffer allocations.
PoC
import io.netty.buffer.Unpooled;
import io.netty.channel.embedded.EmbeddedChannel;
import java.util.Base64;
public class T {
public static void main(String[] args) {
EmbeddedChannel channel = new EmbeddedChannel(new BrotliDecoder());
channel.writeInbound(Unpooled.wrappedBuffer(Base64.getDecoder().decode("aPpxD1tETigSAGj6cQ8vRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROMBIAEgIaHwBETlQQVFcXlgA=")));
}
}
Remediation
Upgrade io.netty:netty-codec-http to version 4.1.125.Final or higher.
References
high severity
- Vulnerable module: io.netty:netty-codec-http2
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http2@4.1.86.Final
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http2@4.1.86.Final
Overview
io.netty:netty-codec-http2 is a HTTP2 sub package for the netty library, an event-driven asynchronous network application framework.
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling through the improper handling of concurrently active streams per connection. An attacker can cause resource exhaustion and disrupt service availability by rapidly sending crafted frames, such as WINDOW_UPDATE, HEADERS, or PRIORITY, that manipulate the server's stream reset logic, leading to unbounded concurrent stream processing.
Remediation
Upgrade io.netty:netty-codec-http2 to version 4.1.124.Final, 4.2.4.Final or higher.
References
high severity
- Vulnerable module: io.netty:netty-codec-http2
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http2@4.1.86.FinalRemediation: Upgrade to org.janusgraph:janusgraph-core@1.0.1.
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http2@4.1.86.FinalRemediation: Upgrade to org.janusgraph:janusgraph-core@1.0.1.
Overview
io.netty:netty-codec-http2 is a HTTP2 sub package for the netty library, an event-driven asynchronous network application framework.
Affected versions of this package are vulnerable to Denial of Service (DoS) in the implementation of the HTTP/2 protocol. An attacker can cause a denial of service (including via DDoS) by rapidly resetting many streams through request cancellation.
Remediation
Upgrade io.netty:netty-codec-http2 to version 4.1.100.Final or higher.
References
high severity
- Vulnerable module: io.netty:netty-codec-http2
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http2@4.1.86.Final
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http2@4.1.86.Final
Overview
io.netty:netty-codec-http2 is a HTTP2 sub package for the netty library, an event-driven asynchronous network application framework.
Affected versions of this package are vulnerable to Improper Handling of Highly Compressed Data (Data Amplification) via the BrotliDecoder.decompress function, which has no limit on how often it calls pull, decompressing data 64K bytes at a time. An attacker can exhaust system memory and cause application downtime by submitting specially crafted compressed input that triggers excessive buffer allocations.
PoC
import io.netty.buffer.Unpooled;
import io.netty.channel.embedded.EmbeddedChannel;
import java.util.Base64;
public class T {
public static void main(String[] args) {
EmbeddedChannel channel = new EmbeddedChannel(new BrotliDecoder());
channel.writeInbound(Unpooled.wrappedBuffer(Base64.getDecoder().decode("aPpxD1tETigSAGj6cQ8vRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROMBIAEgIaHwBETlQQVFcXlgA=")));
}
}
Remediation
Upgrade io.netty:netty-codec-http2 to version 4.1.125.Final or higher.
References
high severity
- Vulnerable module: org.apache.ivy:ivy
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-groovy@3.7.0 › org.apache.ivy:ivy@2.5.1Remediation: Upgrade to org.janusgraph:janusgraph-core@1.0.1.
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-groovy@3.7.0 › org.apache.groovy:groovy-groovysh@4.0.9 › org.apache.groovy:groovy-console@4.0.9 › org.apache.ivy:ivy@2.5.1Remediation: Upgrade to org.janusgraph:janusgraph-core@1.0.1.
Overview
Affected versions of this package are vulnerable to XML External Entity (XXE) Injection. When Apache Ivy parses XML files - either its own configuration, Ivy files or Apache Maven POMs - it will allow downloading external document type definitions and expand any entity references contained therein when used.
This can be used to exfiltrate data, access resources only the machine running Ivy has access to or disturb the execution of Ivy in different ways.
Workaround
Users who are unable to upgrade to the fixed version can use Java system properties to restrict the processing of external DTDs.
Details
XXE Injection is a type of attack against an application that parses XML input. XML is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. By default, many XML processors allow specification of an external entity, a URI that is dereferenced and evaluated during XML processing. When an XML document is being parsed, the parser can make a request and include the content at the specified URI inside of the XML document.
Attacks can include disclosing local files, which may contain sensitive data such as passwords or private user data, using file: schemes or relative paths in the system identifier.
For example, below is a sample XML document, containing an XML element- username.
<xml>
<?xml version="1.0" encoding="ISO-8859-1"?>
<username>John</username>
</xml>
An external XML entity - xxe, is defined using a system identifier and present within a DOCTYPE header. These entities can access local or remote content. For example the below code contains an external XML entity that would fetch the content of /etc/passwd and display it to the user rendered by username.
<xml>
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
<!ENTITY xxe SYSTEM "file:///etc/passwd" >]>
<username>&xxe;</username>
</xml>
Other XXE Injection attacks can access local resources that may not stop returning data, possibly impacting application availability and leading to Denial of Service.
Remediation
Upgrade org.apache.ivy:ivy to version 2.5.2 or higher.
References
high severity
- Vulnerable module: org.apache.commons:commons-configuration2
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.commons:commons-configuration2@2.9.0Remediation: Upgrade to org.janusgraph:janusgraph-core@1.0.1.
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:tinkergraph-gremlin@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-groovy@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
Overview
org.apache.commons:commons-configuration2 is a group of tools to assist in the reading of configuration/preferences files in various formats.
Affected versions of this package are vulnerable to Out-of-Bounds Write due to the improper handling of a cyclical object tree when calling the ListDelimiterHandler.flatten method. An attacker can trigger a StackOverflowError and potentially cause a denial of service condition by submitting a specially crafted configuration object.
Remediation
Upgrade org.apache.commons:commons-configuration2 to version 2.10.1 or higher.
References
high severity
- Vulnerable module: org.apache.commons:commons-configuration2
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.commons:commons-configuration2@2.9.0Remediation: Upgrade to org.janusgraph:janusgraph-core@1.0.1.
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:tinkergraph-gremlin@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-groovy@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › org.apache.tinkerpop:gremlin-core@3.7.0 › org.apache.commons:commons-configuration2@2.9.0
Overview
org.apache.commons:commons-configuration2 is a group of tools to assist in the reading of configuration/preferences files in various formats.
Affected versions of this package are vulnerable to Out-of-Bounds Write due to the improper handling of certain configurations in the AbstractListDelimiterHandler.flattenIterator method. An attacker can trigger a stack overflow by submitting a crafted configuration file or input, leading to a denial of service condition.
Remediation
Upgrade org.apache.commons:commons-configuration2 to version 2.10.1 or higher.
References
high severity
- Vulnerable module: ch.qos.logback:logback-classic
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7Remediation: Upgrade to ch.qos.logback:logback-classic@1.4.12.
Overview
ch.qos.logback:logback-classic is a reliable, generic, fast and flexible logging library for Java.
Affected versions of this package are vulnerable to Denial of Service (DoS). An attacker can mount a denial-of-service attack by sending poisoned data. This is only exploitable if logback receiver component is deployed.
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade ch.qos.logback:logback-classic to version 1.2.13, 1.3.12, 1.4.12 or higher.
References
high severity
- Vulnerable module: ch.qos.logback:logback-classic
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7Remediation: Upgrade to ch.qos.logback:logback-classic@1.4.14.
Overview
ch.qos.logback:logback-classic is a reliable, generic, fast and flexible logging library for Java.
Affected versions of this package are vulnerable to Uncontrolled Resource Consumption ('Resource Exhaustion') via the logback receiver component. An attacker can mount a denial-of-service attack by sending poisoned data.
Note:
Successful exploitation requires the logback-receiver component being enabled and also reachable by the attacker.
Remediation
Upgrade ch.qos.logback:logback-classic to version 1.2.13, 1.3.14, 1.4.14 or higher.
References
high severity
- Vulnerable module: ch.qos.logback:logback-core
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7 › ch.qos.logback:logback-core@1.4.7Remediation: Upgrade to ch.qos.logback:logback-classic@1.4.12.
Overview
ch.qos.logback:logback-core is a logback-core module.
Affected versions of this package are vulnerable to Denial of Service (DoS). An attacker can mount a denial-of-service attack by sending poisoned data. This is only exploitable if logback receiver component is deployed.
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade ch.qos.logback:logback-core to version 1.2.13, 1.3.12, 1.4.12 or higher.
References
high severity
- Vulnerable module: ch.qos.logback:logback-core
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7 › ch.qos.logback:logback-core@1.4.7Remediation: Upgrade to ch.qos.logback:logback-classic@1.4.14.
Overview
ch.qos.logback:logback-core is a logback-core module.
Affected versions of this package are vulnerable to Uncontrolled Resource Consumption ('Resource Exhaustion') via the logback receiver component. An attacker can mount a denial-of-service attack by sending poisoned data.
Note:
Successful exploitation requires the logback-receiver component being enabled and also reachable by the attacker.
Remediation
Upgrade ch.qos.logback:logback-core to version 1.2.13, 1.3.14, 1.4.14 or higher.
References
high severity
- Module: com.github.jnr:jnr-posix
- Introduced through: com.orientechnologies:orientdb-client@3.2.23
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › com.orientechnologies:orientdb-client@3.2.23 › com.orientechnologies:orientdb-core@3.2.23 › com.github.jnr:jnr-posix@3.1.15
Multiple licenses: EPL-1.0, GPL-2.0, LGPL-2.1
medium severity
- Vulnerable module: commons-configuration:commons-configuration
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › commons-configuration:commons-configuration@1.10
Overview
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling due several issues in the loading of untrusted configurations. An attacker can cause excessive resource consumption by manipulating the configuration data or introducing unexpected usage patterns. Users affected by this issue are recommended to upgrade to the 2.x version line org.apache.commons:commons-configuration2, which fixes these issues.
Note: This is only exploitable if the application is configured to load untrusted configurations.
Remediation
There is no fixed version for commons-configuration:commons-configuration.
References
medium severity
new
- Vulnerable module: io.netty:netty-codec-smtp
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-smtp@4.1.86.Final
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › org.apache.tinkerpop:gremlin-util@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-smtp@4.1.86.Final
Overview
Affected versions of this package are vulnerable to CRLF Injection via insufficient input validation in the DefaultSmtpRequest process. An attacker can inject arbitrary SMTP commands by supplying malicious parameters containing CRLF sequences, allowing the sending of forged emails that appear to originate from a trusted server.
Remediation
Upgrade io.netty:netty-codec-smtp to version 4.1.128.Final, 4.2.7.Final or higher.
References
medium severity
- Vulnerable module: ch.qos.logback:logback-classic
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7Remediation: Upgrade to ch.qos.logback:logback-classic@1.5.13.
Overview
ch.qos.logback:logback-classic is a reliable, generic, fast and flexible logging library for Java.
Affected versions of this package are vulnerable to Improper Neutralization of Special Elements via the JaninoEventEvaluator extension. An attacker can execute arbitrary code by compromising an existing logback configuration file or injecting an environment variable before program execution.
Remediation
Upgrade ch.qos.logback:logback-classic to version 1.3.15, 1.5.13 or higher.
References
medium severity
- Vulnerable module: ch.qos.logback:logback-core
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7 › ch.qos.logback:logback-core@1.4.7Remediation: Upgrade to ch.qos.logback:logback-classic@1.5.19.
Overview
ch.qos.logback:logback-core is a logback-core module.
Affected versions of this package are vulnerable to External Initialization of Trusted Variables or Data Stores via the conditional processing of the logback.xml configuration file when both the Janino library and Spring Framework are present on the class path. An attacker can execute arbitrary code by compromising an existing configuration file or injecting a malicious environment variable before program execution. This is only exploitable if the attacker has write access to a configuration file or can set a malicious environment variable.
Remediation
Upgrade ch.qos.logback:logback-core to version 1.5.19 or higher.
References
medium severity
- Vulnerable module: ch.qos.logback:logback-core
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7 › ch.qos.logback:logback-core@1.4.7Remediation: Upgrade to ch.qos.logback:logback-classic@1.5.13.
Overview
ch.qos.logback:logback-core is a logback-core module.
Affected versions of this package are vulnerable to Improper Neutralization of Special Elements via the JaninoEventEvaluator extension. An attacker can execute arbitrary code by compromising an existing logback configuration file or injecting an environment variable before program execution.
Remediation
Upgrade ch.qos.logback:logback-core to version 1.3.15, 1.5.13 or higher.
References
medium severity
- Vulnerable module: io.netty:netty-codec-http
- Introduced through: org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.janusgraph:janusgraph-core@1.0.0-20231020-183655.ff58c43 › org.janusgraph:janusgraph-driver@1.0.0-20231020-183655.ff58c43 › org.apache.tinkerpop:gremlin-driver@3.7.0 › io.netty:netty-all@4.1.86.Final › io.netty:netty-codec-http@4.1.86.Final
Overview
io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling due to the accumulation of data in the HttpPostRequestDecoder. The decoder cumulates bytes in the undecodedChunk buffer until it can decode a field, allowing for data to accumulate without limits.
An attacker can cause a denial of service by sending a chunked post consisting of many small fields that will be accumulated in the bodyListHttpData list.
Remediation
Upgrade io.netty:netty-codec-http to version 4.1.108.Final or higher.
References
medium severity
- Module: ch.qos.logback:logback-classic
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7
Dual license: EPL-1.0, LGPL-2.1
medium severity
- Module: ch.qos.logback:logback-core
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7 › ch.qos.logback:logback-core@1.4.7
Dual license: EPL-1.0, LGPL-2.1
low severity
- Vulnerable module: org.jetbrains.kotlin:kotlin-stdlib
- Introduced through: org.jetbrains.kotlin:kotlin-reflect@1.8.21 and org.jetbrains.kotlin:kotlin-stdlib-jdk8@1.8.21
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.jetbrains.kotlin:kotlin-reflect@1.8.21 › org.jetbrains.kotlin:kotlin-stdlib@1.8.21Remediation: Upgrade to org.jetbrains.kotlin:kotlin-reflect@2.1.0.
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.jetbrains.kotlin:kotlin-stdlib-jdk8@1.8.21 › org.jetbrains.kotlin:kotlin-stdlib@1.8.21Remediation: Upgrade to org.jetbrains.kotlin:kotlin-stdlib-jdk8@2.1.0.
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › org.jetbrains.kotlin:kotlin-stdlib-jdk8@1.8.21 › org.jetbrains.kotlin:kotlin-stdlib-jdk7@1.8.21 › org.jetbrains.kotlin:kotlin-stdlib@1.8.21Remediation: Upgrade to org.jetbrains.kotlin:kotlin-stdlib-jdk8@2.1.0.
Overview
org.jetbrains.kotlin:kotlin-stdlib is a Kotlin Standard Library for JVM.
Affected versions of this package are vulnerable to Information Exposure. A Kotlin application using createTempDir or createTempFile and placing sensitive information within either of these locations would be leaking this information in a read-only way to other users also on this system.
Note: As of version 1.4.21, the vulnerable functions have been marked as deprecated. Due to still being usable, this advisory is kept as "unfixed".
PoC by JLLeitschuh
package org.jlleitschuh.sandbox
import org.junit.jupiter.api.Test
import java.io.BufferedReader
import java.io.File
import java.io.IOException
import java.io.InputStreamReader
import java.nio.file.Files
class KotlinTempDirectoryPermissionCheck {
@Test
fun `kotlin check default directory permissions`() {
val dir = createTempDir()
runLS(dir.parentFile, dir) // Prints drwxr-xr-x
}
@Test
fun `Files check default directory permissions`() {
val dir = Files.createTempDirectory("random-directory")
runLS(dir.toFile().parentFile, dir.toFile()) // Prints drwx------
}
@Test
fun `kotlin check default file permissions`() {
val file = createTempFile()
runLS(file.parentFile, file) // Prints -rw-r--r--
}
@Test
fun `Files check default file permissions`() {
val file = Files.createTempFile("random-file", ".txt")
runLS(file.toFile().parentFile, file.toFile()) // Prints -rw-------
}
private fun runLS(file: File, lookingFor: File) {
val processBuilder = ProcessBuilder()
processBuilder.command("ls", "-l", file.absolutePath)
try {
val process = processBuilder.start()
val output = StringBuilder()
val reader = BufferedReader(
InputStreamReader(process.inputStream)
)
reader.lines().forEach { line ->
if (line.contains("total")) {
output.append(line).append('\n')
}
if (line.contains(lookingFor.name)) {
output.append(line).append('\n')
}
}
val exitVal = process.waitFor()
if (exitVal == 0) {
println("Success!")
println(output)
} else {
//abnormal...
}
} catch (e: IOException) {
e.printStackTrace()
} catch (e: InterruptedException) {
e.printStackTrace()
}
}
}
Remediation
Upgrade org.jetbrains.kotlin:kotlin-stdlib to version 2.1.0 or higher.
References
low severity
- Vulnerable module: ch.qos.logback:logback-core
- Introduced through: ch.qos.logback:logback-classic@1.4.7
Detailed paths
-
Introduced through: robfrank/testcontainers-examples@robfrank/testcontainers-examples#c1421a21c8e1c0304af90070e0fdf87fe214a09c › ch.qos.logback:logback-classic@1.4.7 › ch.qos.logback:logback-core@1.4.7Remediation: Upgrade to ch.qos.logback:logback-classic@1.5.13.
Overview
ch.qos.logback:logback-core is a logback-core module.
Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) through the SaxEventRecorder process. An attacker can forge requests by compromising logback configuration files in XML.
Remediation
Upgrade ch.qos.logback:logback-core to version 1.3.15, 1.5.13 or higher.