Vulnerabilities

50 via 226 paths

Dependencies

94

Source

GitHub

Find, fix and prevent vulnerabilities in your code.

Issue type
  • 50
  • 2
Severity
  • 2
  • 23
  • 21
  • 6
Status
  • 52
  • 0
  • 0

critical severity

Improper Validation of Certificate with Host Mismatch

  • Vulnerable module: org.springframework.boot:spring-boot-autoconfigure
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1, org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 and others

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.14.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springdoc:springdoc-openapi-starter-common@2.1.0 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1

Overview

Affected versions of this package are vulnerable to Improper Validation of Certificate with Host Mismatch due to establishing SSL connections to Cassandra without verifying that the hostname in the server's SSL certificate actually matched the hostname of the server being connected to. While the application might have verified that the certificate was signed by a trusted Certificate Authority (CA), failing to verify the hostname means an attacker could present any valid certificate (even one meant for a different domain) to successfully intercept the connection, leaving the application vulnerable to Man-in-the-Middle (MitM) attacks.

Remediation

Upgrade org.springframework.boot:spring-boot-autoconfigure to version 3.5.14, 4.0.6 or higher.

References

critical severity

Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection')

  • Vulnerable module: org.springframework.data:spring-data-mongodb
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.data:spring-data-mongodb@4.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.

Overview

Affected versions of this package are vulnerable to Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection') via parameter binding when a repository query method is annotated with @Query and uses a capture-all placeholder. An attacker can execute arbitrary SpEL expressions by supplying crafted input to the annotated query parameter.

Remediation

Upgrade org.springframework.data:spring-data-mongodb to version 4.5.12, 5.0.6 or higher.

References

high severity

Uncontrolled Recursion

  • Vulnerable module: org.apache.commons:commons-lang3
  • Introduced through: org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springdoc:springdoc-openapi-starter-common@2.1.0 › io.swagger.core.v3:swagger-core-jakarta@2.2.9 › org.apache.commons:commons-lang3@3.12.0
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.10.

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

Improper Certificate Validation

  • Vulnerable module: com.squareup.okhttp3:okhttp
  • Introduced through: org.seleniumhq.selenium:selenium-java@3.141.59

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.

Overview

com.squareup.okhttp3:okhttp is a HTTP & HTTP/2 client for Android and Java applications

Affected versions of this package are vulnerable to Improper Certificate Validation via the verifyHostName function in OkHostnameVerifier.java. An attacker can gain unauthorized access to sensitive information by presenting a certificate for an incorrect domain, which is improperly accepted during cryptographic verification.

Remediation

Upgrade com.squareup.okhttp3:okhttp to version 4.9.2 or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: org.springframework.data:spring-data-commons
  • Introduced through: org.springframework.data:spring-data-commons@3.0.0, org.springframework.data:spring-data-rest-core@4.0.0 and others

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-commons@3.5.12.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.data:spring-data-mongodb@4.0.0 › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.

Overview

org.springframework.data:spring-data-commons is a maven plugin to centralize common resources and configuration for Spring Data Maven builds.

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via the property-lookup cache. An attacker can cause unbounded memory consumption by sending repeated requests with unique, attacker-controlled property names, leading to heap exhaustion.

Note:

This is only exploitable if the application uses features that forward HTTP-supplied strings to PropertyPath.from without prior filtering, in particular Querydsl web bindings (via QuerydslPredicateArgumentResolver) with the default permit-all visibility, and @ProjectedPayload form-parameter binding (via MapDataBinder).

Remediation

Upgrade org.springframework.data:spring-data-commons to version 3.5.12, 4.0.6 or higher.

References

high severity

Improperly Controlled Modification of Dynamically-Determined Object Attributes

  • Vulnerable module: org.springframework.data:spring-data-rest-core
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.

Overview

org.springframework.data:spring-data-rest-core is a Spring Data REST.

Affected versions of this package are vulnerable to Improperly Controlled Modification of Dynamically-Determined Object Attributes. due to missing write-access enforcement in the JsonPointerMapping class in JsonPointerMapping.java. When a JSON Patch (application/json-patch+json) request is processed, the write-access filter is applied only to the final segment of a multi-segment JSON Pointer and not to intermediate path segments. An attacker can send a JSON Patch request whose path traverses a container property marked read-only at the Jackson level into a nested embeddable object, collection, or map element that carries no per-field restriction, modifying data the application intends to be immutable.

Note:

Only applications whose domain model includes an embeddable object, collection, or map property whose container is marked read-only at the Jackson level, while the inner element type carries no per-field restriction, are affected.

Remediation

Upgrade org.springframework.data:spring-data-rest-core to version 4.5.12, 5.0.6 or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: org.springframework.hateoas:spring-hateoas
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.hateoas:spring-hateoas@2.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.

Overview

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via unbounded caching of StringLinkRelation instances. An attacker can cause denial of service by supplying a large number of unique link relation values, causing the static cache to grow without limit. Repeated processing of attacker-controlled hypermedia can consume excessive memory and eventually lead to application unavailability.

Remediation

Upgrade org.springframework.hateoas:spring-hateoas to version 2.5.3, 3.0.4 or higher.

References

high severity
new

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: tools.jackson.core:jackson-core
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-jackson@4.2.0-M2 › tools.jackson.core:jackson-databind@3.1.6 › tools.jackson.core:jackson-core@3.1.6

Overview

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the _reportInvalidToken(int, String, String) method of UTF8DataInputJsonParser, which accumulates invalid token characters into a StringBuilder with no check against ErrorReportConfiguration.getMaxErrorTokenLength(), unlike UTF8StreamJsonParser, ReaderBasedJsonParser, and NonBlockingUtf8JsonParserBase, which enforce the 256-character default. An attacker can exhaust the JVM heap by submitting a sufficiently long malformed token, since the whole token is copied into the exception message, where a 20-million-character token produces a 20,000,109-character message against 367 characters on the bounded path. This requires the application to create its parser through JsonFactory.createParser(DataInput), and no configuration constrains the path, since maxDocumentLength does not apply to DataInput sources and maxStringLength does not cover it.

Remediation

Upgrade tools.jackson.core:jackson-core to version 3.1.7, 3.2.3 or higher.

References

high severity
new

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-jackson@4.2.0-M2 › tools.jackson.core:jackson-databind@3.1.6

Overview

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the resolveForwardReference() method of CollectionDeserializer.CollectionReferringAccumulator, and in the corresponding map accumulators, which perform a linear search of the pending accumulator for every resolved object ID. An attacker can consume quadratic CPU and exhaust a request-time or worker-capacity budget by submitting JSON whose N unresolved object-ID references resolve in reverse order, costing roughly N*(N+1)/2 comparisons, measured at 2,003,000 for N=2,000. This requires the application to deserialize attacker-influenced JSON into an identity-enabled collection or map under @JsonIdentityInfo, though it needs no deep nesting or unusual JSON syntax.

Remediation

Upgrade tools.jackson.core:jackson-databind to version 3.1.7, 3.2.3 or higher.

References

high severity

Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection')

  • Vulnerable module: org.springframework.data:spring-data-rest-core
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.

Overview

org.springframework.data:spring-data-rest-core is a Spring Data REST.

Affected versions of this package are vulnerable to Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection'). in the processing of JSON Patch requests containing map-typed properties. An attacker can execute arbitrary SpEL expressions by supplying crafted map keys in the JSON Pointer path segment.

Remediation

Upgrade org.springframework.data:spring-data-rest-core to version 4.5.12, 5.0.6 or higher.

References

high severity

Improperly Controlled Modification of Dynamically-Determined Object Attributes

  • Vulnerable module: org.springframework.hateoas:spring-hateoas
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.hateoas:spring-hateoas@2.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.

Overview

Affected versions of this package are vulnerable to Improperly Controlled Modification of Dynamically-Determined Object Attributes via reflective property binding in PropertyUtils.createObjectFromProperties(). An attacker can modify security-sensitive object properties by supplying crafted hypermedia payloads, as property binding performed by the Collection+JSON and UBER deserializers ignores Jackson access-control annotations and sets bean properties directly through reflection. This may allow unauthorized modification of fields that developers intended to restrict from client control.

Note: This is only exploitable if the application enables the COLLECTION_JSON or UBER media types, accepts a RepresentationModel or EntityModel as @RequestBody, and relies on Jackson annotations to protect sensitive properties while still exposing corresponding setter methods.

Remediation

Upgrade org.springframework.hateoas:spring-hateoas to version 2.5.3, 3.0.4 or higher.

References

high severity
new

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: com.google.guava:guava
  • Introduced through: org.seleniumhq.selenium:selenium-java@3.141.59

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.51.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.15.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.15.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.15.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.15.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.51.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.51.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.51.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.51.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.51.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.51.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.51.0.

Overview

com.google.guava:guava is a set of core libraries that includes new collection types (such as multimap and multiset,immutable collections, a graph library, functional types, an in-memory cache and more.

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via the readObject deserialization paths in CompactHashMap, CompactHashSet, and MapMakerInternalMap. An attacker can crash a Java process with an OutOfMemoryError by supplying a crafted serialized stream that declares an oversized element count or initial capacity. During deserialization, CompactHashMap and CompactHashSet use the attacker-controlled size to initialize their backing storage, and MapMakerInternalMap propagates the attacker-controlled size into segment table allocation, letting a tiny payload force a much larger heap allocation.

Remediation

Upgrade com.google.guava:guava to version 33.7.2-jre or higher.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: org.springframework.data:spring-data-commons
  • Introduced through: org.springframework.data:spring-data-commons@3.0.0, org.springframework.data:spring-data-rest-core@4.0.0 and others

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-commons@3.5.12.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.data:spring-data-mongodb@4.0.0 › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.

Overview

org.springframework.data:spring-data-commons is a maven plugin to centralize common resources and configuration for Spring Data Maven builds.

Affected versions of this package are vulnerable to Denial of Service (DoS) via data binding. An attacker can exhaust system memory resources by sending specially crafted HTTP requests.

Note:

This is only exploitable if both Spring Data Web Support is enabled and a Controller method uses @ProjectedPayload.

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 ws package

Remediation

Upgrade org.springframework.data:spring-data-commons to version 3.5.12, 4.0.6 or higher.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: org.springframework.data:spring-data-commons
  • Introduced through: org.springframework.data:spring-data-commons@3.0.0, org.springframework.data:spring-data-rest-core@4.0.0 and others

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-commons@3.5.12.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.data:spring-data-mongodb@4.0.0 › org.springframework.data:spring-data-commons@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.

Overview

org.springframework.data:spring-data-commons is a maven plugin to centralize common resources and configuration for Spring Data Maven builds.

Affected versions of this package are vulnerable to Denial of Service (DoS) in the parsing of Sort parameters. An attacker can cause a stack overflow and disrupt service availability by submitting specially crafted input to the affected parameter.

Note:

This is only exploitable if the application explicitly exposes an endpoint that accepts Sort parameters from untrusted sources and passes them on without performing sanitization or if the application exposes endpoints with parameters annotated with @ProjectedPayload or @QuerydslPredicate.

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 ws package

Remediation

Upgrade org.springframework.data:spring-data-commons to version 3.5.12, 4.0.6 or higher.

References

high severity

Improper Neutralization of Special Elements in Data Query Logic

  • Vulnerable module: org.springframework.data:spring-data-mongodb
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.data:spring-data-mongodb@4.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.

Overview

Affected versions of this package are vulnerable to Improper Neutralization of Special Elements in Data Query Logic via the @Query regex parameter binding when a bound parameter is placed inside a regular expression literal using \\Q...\\E quoting (e.g. @Query(\"{ name : /^\\\\Q?0\\\\E$/ }\")). The ParameterBindingJsonReader performs insufficient neutralization of the bound parameter value when it is substituted into the regex literal. Because escaping was applied via replaceAll (which interprets regex metacharacters in both the pattern and replacement), a bound value containing a \\E sequence (or other regex-significant characters) can terminate the intended \\Q literal-quoting context and break out into attacker-controlled regular expression syntax. This lets an attacker inject regex constructs into the query filter, manipulating the matching logic to bypass the intended filter or match documents outside the intended scope, which can lead to unauthorized data exposure.

Note:

This is only exploitable if the application exposes a repository query method whose @Query binds an untrusted parameter inside a regex literal.

Remediation

Upgrade org.springframework.data:spring-data-mongodb to version 4.5.12, 5.0.6 or higher.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: net.minidev:json-smart
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.hateoas:spring-hateoas@2.0.0 › com.jayway.jsonpath:json-path@2.7.0 › net.minidev:json-smart@2.4.7
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.1.10.

Overview

net.minidev:json-smart is a Java JSON parser.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a StackOverflowError when parsing a deeply nested JSON array or object.

NOTE: Although this vulnerability was fixed in version 2.4.9 the maintainer recommends upgrading to 2.4.10, due to a remaining bug.

PoC

StringBuilder s = new StringBuilder();
for (int i = 0; i < 10000 ; i++) {
  s.append("{\"a\":");
}
s.append("1");
for (int i = 0; i < 10000 ; i++) {
  s.append("}");
}
JSONParser p = new JSONParser(JSONParser.MODE_JSON_SIMPLE);
p.parse(s.toString());

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 ws package

Remediation

Upgrade net.minidev:json-smart to version 2.4.9 or higher.

References

high severity

NULL Pointer Dereference

  • Vulnerable module: org.seleniumhq.selenium:selenium-ie-driver
  • Introduced through: org.seleniumhq.selenium:selenium-java@3.141.59

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.14.1.

Overview

Affected versions of this package are vulnerable to NULL Pointer Dereference due to an insufficient check on CookieWndProc function. An attacker can cause the application to crash by sending specially crafted data that triggers this condition.

PoC

Attacker Server Code

from http.server import BaseHTTPRequestHandler, HTTPServer
from datetime import datetime, timedelta

class CustomHTTPRequestHandler(BaseHTTPRequestHandler):

    def do_GET(self):
        # Send response status code
        self.send_response(200)

        # Send headers
        self.send_header('Content-type', 'text/html')
        # Set the cookie expiration to one day in the future
        expiration_date = (datetime.utcnow() + timedelta(days=1)).strftime('%a, %d %b %Y %H:%M:%S GMT')
        
        well_formed_cookie = f"cookie_name=cookie_value; Domain=127.0.0.1; Path=/; HttpOnly; Expires={expiration_date};"
        self.send_header('Set-Cookie', well_formed_cookie)

        malicious_cookie = f"cookie_name2" #crash
        self.send_header('Set-Cookie', malicious_cookie)

        self.end_headers()

        # Send message back to client
        message = "Hello world!"
        self.wfile.write(bytes(message, "utf8"))
        return

def run():
    print('Starting server...')
    server_address = ('127.0.0.1', 8090)
    httpd = HTTPServer(server_address, CustomHTTPRequestHandler)
    print('Server is running...')
    httpd.serve_forever()

run()

Example Victim Code

from selenium import webdriver
import logging
import time

handler = logging.FileHandler("sel.log")
logger = logging.getLogger('selenium')
logging.basicConfig(level=logging.DEBUG)
logger.setLevel(logging.DEBUG)
logger.addHandler(handler)

options = webdriver.IeOptions()
options.ignore_zoom_level = True
options.ignore_protected_mode_settings = True
options.attach_to_edge_chrome = True
options.initial_browser_url = 'https://selenium.dev'
service = webdriver.IeService(log_file="ie.log", log_level='DEBUG')
driver = webdriver.Ie(options=options,service=service)

driver.set_page_load_timeout(20)
print("Getting the page: ")

try:
    driver.get("http://127.0.0.1:8090/")
except Exception as e:
    print(e)

print("Got the page!")
print("Get Cookies: ")
cookies = driver.get_cookies()
print(cookies)
time.sleep(3)
driver.quit()

Remediation

Upgrade org.seleniumhq.selenium:selenium-ie-driver to version 4.14.1 or higher.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: org.springframework.boot:spring-boot-autoconfigure
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1, org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 and others

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.0.7.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springdoc:springdoc-openapi-starter-common@2.1.0 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.2.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1

Overview

Affected versions of this package are vulnerable to Denial of Service (DoS) if Spring MVC is used together with a reverse proxy cache.

Specifically, an application is vulnerable if all of the conditions are true:

  • The application has Spring MVC auto-configuration enabled. This is the case by default if Spring MVC is on the classpath.
  • The application uses Spring Boot's welcome page support, either static or templated.
  • The application is deployed behind a proxy which caches 404 responses.

The application is NOT vulnerable if any of the following are true:

  • Spring MVC auto-configuration is disabled. This is true if WebMvcAutoConfiguration is explicitly excluded, if Spring MVC is not on the classpath, or if spring.main.web-application-type is set to a value other than SERVLET.
  • The application does not use Spring Boot's welcome page support.
  • There is no proxy which caches 404 responses.

Workaround

Users who are unable to upgrade should configure the reverse proxy not to cache 404 responses and/or not to cache responses to requests to the root (/) of the application.

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 ws package

Remediation

Upgrade org.springframework.boot:spring-boot-autoconfigure to version 2.5.15, 2.6.15, 2.7.12, 3.0.7 or higher.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: ch.qos.logback:logback-classic
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.1.7.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5

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 ws package

Remediation

Upgrade ch.qos.logback:logback-classic to version 1.2.13, 1.3.12, 1.4.12 or higher.

References

high severity

Uncontrolled Resource Consumption ('Resource Exhaustion')

  • Vulnerable module: ch.qos.logback:logback-classic
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.1.7.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5

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

Denial of Service (DoS)

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.1.7.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

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 ws package

Remediation

Upgrade ch.qos.logback:logback-core to version 1.2.13, 1.3.12, 1.4.12 or higher.

References

high severity

Uncontrolled Resource Consumption ('Resource Exhaustion')

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.1.7.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

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

Authorization Bypass Through User-Controlled Key

  • Vulnerable module: org.springframework.data:spring-data-rest-core
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@5.0.7.

Overview

org.springframework.data:spring-data-rest-core is a Spring Data REST.

Affected versions of this package are vulnerable to Authorization Bypass Through User-Controlled Key via the PATCH process. An attacker can overwrite identifier and version properties by sending crafted RFC 6902 JSON Patch requests, potentially bypassing optimistic-locking protections and causing unauthorized modification or replacement of records belonging to other users. This is only exploitable if the entity type declares an identifier or version property that is visible to Jackson's deserialization model (i.e., the property has a public setter and is not explicitly excluded via @JsonIgnore).

Remediation

Upgrade org.springframework.data:spring-data-rest-core to version 5.0.7, 5.1.1 or higher.

References

high severity

HTTP Header Injection

  • Vulnerable module: org.springframework.hateoas:spring-hateoas
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.hateoas:spring-hateoas@2.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.0.8.

Overview

Affected versions of this package are vulnerable to HTTP Header Injection via the handling of untrusted (X-)Forwarded headers. An attacker can manipulate hypermedia-based responses by injecting malicious content into these headers. This could lead to unauthorized access or misleading information being displayed to the user, compromising the application's data integrity and confidentiality. This is only exploitable if the application uses Spring WebFlux and Spring HATEOAS to generate links in hypermedia-based responses and does not have a mechanism to guard against clients submitting (X-)Forwarded headers.

Remediation

Upgrade org.springframework.hateoas:spring-hateoas to version 1.5.5, 2.0.5, 2.1.1 or higher.

References

high severity

Expression Injection

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

Overview

ch.qos.logback:logback-core is a logback-core module.

Affected versions of this package are vulnerable to Expression Injection in the Janino-evaluated condition attribute of <if> configuration elements, handled by IfModelHandler, whose denylist blocked only the literal new operator. A user who can modify the logback configuration can execute arbitrary code by writing an <if> condition that evades that denylist, either through references it did not cover such as Runtime or springframework, or through Unicode escape sequences like \u that reconstruct the blocked new operator. Exploitation requires write access to the logback configuration and the use of conditional <if> processing with Janino present on the classpath.

Remediation

Upgrade ch.qos.logback:logback-core to version 1.5.36 or higher.

References

medium severity

Uncontrolled Resource Consumption ('Resource Exhaustion')

  • Vulnerable module: commons-io:commons-io
  • Introduced through: org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springdoc:springdoc-openapi-starter-common@2.1.0 › io.swagger.core.v3:swagger-core-jakarta@2.2.9 › commons-io:commons-io@2.11.0
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0.

Overview

commons-io:commons-io is a The Apache Commons IO library contains utility classes, stream implementations, file filters, file comparators, endian transformation classes, and much more.

Affected versions of this package are vulnerable to Uncontrolled Resource Consumption ('Resource Exhaustion') through the XmlStreamReader class. An attacker can cause the application to consume excessive CPU resources by sending specially crafted XML content.

Remediation

Upgrade commons-io:commons-io to version 2.14.0 or higher.

References

medium severity

Access Control Bypass

  • Vulnerable module: org.springframework.data:spring-data-rest-core
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.

Overview

org.springframework.data:spring-data-rest-core is a Spring Data REST.

Affected versions of this package are vulnerable to Access Control Bypass. in the Querydsl integration, which accepts arbitrary persistent property paths as request-parameter filter keys without considering Jackson customizations before passing them to Querydsl. An attacker can access sensitive fields that are intended to be hidden by specifying crafted filter keys in requests.

Remediation

Upgrade org.springframework.data:spring-data-rest-core to version 4.5.12, 5.0.6 or higher.

References

medium severity

Information Exposure

  • Vulnerable module: org.springframework.data:spring-data-rest-core
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.5.12.

Overview

org.springframework.data:spring-data-rest-core is a Spring Data REST.

Affected versions of this package are vulnerable to Information Exposure. in the error response serialization. An attacker can gain access to sensitive internal information by triggering errors that cause the full exception cause chain to be included in HTTP responses.

Remediation

Upgrade org.springframework.data:spring-data-rest-core to version 4.5.12, 5.0.6 or higher.

References

medium severity
new

Regular Expression Denial of Service (ReDoS)

  • Vulnerable module: tools.jackson.core:jackson-core
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-jackson@4.2.0-M2 › tools.jackson.core:jackson-databind@3.1.6 › tools.jackson.core:jackson-core@3.1.6

Overview

Affected versions of this package are vulnerable to Regular Expression Denial of Service (ReDoS) in the PATTERN_FLOAT regex of NumberInput, reached through looksLikeValidNumber(), where adjacent quantifiers over the same character class ([0-9]*, then an optional [.], then [0-9]+) carry no possessive quantifiers or atomic grouping, so the engine explores every split point between digit groups on non-matching input. An attacker can pin a request-handling thread and exhaust the worker pool with concurrent requests by supplying a long numeric-looking string that fails to match, since match cost is quadratic in input length, with 160,000 characters costing 74.4 seconds in a single call. This requires the application to reach looksLikeValidNumber() with attacker-controlled strings, which is the default path when jackson-databind coerces a String field to a number, and the input is bounded only by StreamReadConstraints.maxStringLength at 20,000,000 rather than by maxNumberLength at 1,000.

Workaround

This vulnerability can be avoided by lowering StreamReadConstraints.maxStringLength toward the string length the application actually needs, which caps the input this quadratic path can be handed, since it is that limit and not maxNumberLength that governs here.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade tools.jackson.core:jackson-core to version 3.1.7, 3.2.2 or higher.

References

medium severity
new

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-jackson@4.2.0-M2 › tools.jackson.core:jackson-databind@3.1.6

Overview

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the _findDeserializer() method of TypeDeserializerBase, which caches every unknown type ID as a distinct key in the _deserializers map even when all of them resolve to the same defaultImpl fallback. An attacker can grow that cache without bound for the lifetime of the process, exhausting memory over time, by submitting a stream of novel type identifiers. This requires the application to use name-based polymorphism through @JsonTypeInfo(use = Id.NAME, defaultImpl = ...), to accept attacker-controlled type identifiers, and to reuse the mapper instance across requests.

Remediation

Upgrade tools.jackson.core:jackson-databind to version 3.1.7, 3.2.3 or higher.

References

medium severity

Arbitrary Code Execution

  • Vulnerable module: org.yaml:snakeyaml
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1, org.springframework.boot:spring-boot-starter-web@4.2.0-M2 and others

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.yaml:snakeyaml@1.33
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.2.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.yaml:snakeyaml@1.33
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.yaml:snakeyaml@1.33
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springdoc:springdoc-openapi-starter-common@2.1.0 › io.swagger.core.v3:swagger-core-jakarta@2.2.9 › org.yaml:snakeyaml@1.33
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springdoc:springdoc-openapi-starter-common@2.1.0 › io.swagger.core.v3:swagger-core-jakarta@2.2.9 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.14.2 › org.yaml:snakeyaml@1.33
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.2.0.

Overview

org.yaml:snakeyaml is a YAML 1.1 parser and emitter for Java.

Affected versions of this package are vulnerable to Arbitrary Code Execution in the Constructor class, which does not restrict which types can be deserialized. This vulnerability is exploitable by an attacker who provides a malicious YAML file for deserialization, which circumvents the SafeConstructor class.

The maintainers of the library contend that the application's trust would already have had to be compromised or established and therefore dispute the risk associated with this issue on the basis that there is a high bar for exploitation.

Remediation

Upgrade org.yaml:snakeyaml to version 2.0 or higher.

References

medium severity

Deserialization of Untrusted Data

  • Vulnerable module: ch.qos.logback:logback-classic
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5

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 Deserialization of Untrusted Data in HardenedObjectInputStream, whose resolveClass allowlist admitted any class whose name starts with java.lang or java.util rather than matching specific authorized classes. An attacker can instantiate dangerous classes such as java.lang.ProcessBuilder during deserialization, reaching remote code execution through a gadget chain, by delivering a malicious serialized object to a logback component that deserializes it, such as its socket receiver for serialized logging events (SocketNode). Exploitation requires the application to deserialize attacker-controlled serialized data through logback, in practice via its socket-based receiver, together with a usable gadget class on the classpath.

Workaround

This vulnerability can be avoided by not exposing logback's socket-based serialized receivers, such as SocketReceiver and ServerSocketReceiver, to untrusted networks, which removes the path by which attacker-controlled serialized objects reach the deserialization filter.

Details

Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.

Deserialization of untrusted data (CWE-502) is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, thus allowing the attacker to control the state or the flow of the execution.

Remediation

Upgrade ch.qos.logback:logback-classic to version 1.5.33 or higher.

References

medium severity
new

Directory Traversal

  • Vulnerable module: ch.qos.logback:logback-classic
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5

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 Directory Traversal via unsanitized input in the MDCDiscriminator process. An attacker can create or append log files outside the intended directory by supplying crafted values, such as through HTTP headers, that influence the log file path. This is only exploitable if SiftingAppender is active and unsanitized data is used by MDCDiscriminator.

Workaround

This vulnerability can be mitigated by sanitizing relevant data provided by the user.

Details

A Directory Traversal attack (also known as path traversal) aims to access files and directories that are stored outside the intended folder. By manipulating files with "dot-dot-slash (../)" sequences and its variations, or by using absolute file paths, it may be possible to access arbitrary files and directories stored on file system, including application source code, configuration, and other critical system files.

Directory Traversal vulnerabilities can be generally divided into two types:

  • Information Disclosure: Allows the attacker to gain information about the folder structure or read the contents of sensitive files on the system.

st is a module for serving static files on web pages, and contains a vulnerability of this type. In our example, we will serve files from the public route.

If an attacker requests the following URL from our server, it will in turn leak the sensitive private key of the root user.

curl http://localhost:8080/public/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/root/.ssh/id_rsa

Note %2e is the URL encoded version of . (dot).

  • Writing arbitrary files: Allows the attacker to create or replace existing files. This type of vulnerability is also known as Zip-Slip.

One way to achieve this is by using a malicious zip archive that holds path traversal filenames. When each filename in the zip archive gets concatenated to the target extraction folder, without validation, the final path ends up outside of the target folder. If an executable or a configuration file is overwritten with a file containing malicious code, the problem can turn into an arbitrary code execution issue quite easily.

The following is an example of a zip archive with one benign file and one malicious file. Extracting the malicious file will result in traversing out of the target folder, ending up in /root/.ssh/ overwriting the authorized_keys file:

2018-04-15 22:04:29 .....           19           19  good.txt
2018-04-15 22:04:42 .....           20           20  ../../../../../../root/.ssh/authorized_keys

Remediation

Upgrade ch.qos.logback:logback-classic to version 1.6.5 or higher.

References

medium severity

Deserialization of Untrusted Data

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

Overview

ch.qos.logback:logback-core is a logback-core module.

Affected versions of this package are vulnerable to Deserialization of Untrusted Data in the HardenedObjectInputStream module. An attacker can instantiate unauthorized Proxy objects by supplying crafted serialized data to the SimpleSocketServer or SimpleSSLSocketServer, thereby bypassing intended security restrictions.

Details

Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.

Deserialization of untrusted data (CWE-502) is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, thus allowing the attacker to control the state or the flow of the execution.

Remediation

Upgrade ch.qos.logback:logback-core to version 1.5.34 or higher.

References

medium severity

Deserialization of Untrusted Data

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

Overview

ch.qos.logback:logback-core is a logback-core module.

Affected versions of this package are vulnerable to Deserialization of Untrusted Data in HardenedObjectInputStream, whose resolveClass allowlist admitted any class whose name starts with java.lang or java.util rather than matching specific authorized classes. An attacker can instantiate dangerous classes such as java.lang.ProcessBuilder during deserialization, reaching remote code execution through a gadget chain, by delivering a malicious serialized object to a logback component that deserializes it, such as its socket receiver for serialized logging events (SocketNode). Exploitation requires the application to deserialize attacker-controlled serialized data through logback, in practice via its socket-based receiver, together with a usable gadget class on the classpath.

Workaround

This vulnerability can be avoided by not exposing logback's socket-based serialized receivers, such as SocketReceiver and ServerSocketReceiver, to untrusted networks, which removes the path by which attacker-controlled serialized objects reach the deserialization filter.

Details

Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.

Deserialization of untrusted data (CWE-502) is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, thus allowing the attacker to control the state or the flow of the execution.

Remediation

Upgrade ch.qos.logback:logback-core to version 1.5.33 or higher.

References

medium severity

Improper Encoding or Escaping of Output

  • Vulnerable module: org.apache.logging.log4j:log4j-api
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › org.apache.logging.log4j:log4j-to-slf4j@2.19.0 › org.apache.logging.log4j:log4j-api@2.19.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › org.apache.logging.log4j:log4j-to-slf4j@2.19.0 › org.apache.logging.log4j:log4j-api@2.19.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › org.apache.logging.log4j:log4j-to-slf4j@2.19.0 › org.apache.logging.log4j:log4j-api@2.19.0

Overview

Affected versions of this package are vulnerable to Improper Encoding or Escaping of Output in the MapMessage.asJson() method, which emits the bare NaN, Infinity, or -Infinity tokens instead of an RFC 8259-compliant representation. An attacker can emit malformed JSON that corrupts the enclosing log record or disrupts downstream log ingestion and parsing by supplying non-finite floating-point values that the application records in a logged MapMessage. Exploitation requires the application to use the message resolver of JsonTemplateLayout, or another layout relying on MapMessage.asJson(), and to log a MapMessage holding attacker-controlled floating-point values.

Note: This is a bypass of the fix for the vulnerability described in CVE-2026-34481.

Remediation

A fix was pushed into the master branch but not yet published.

References

medium severity
new

Directory Traversal

  • Vulnerable module: ch.qos.logback:logback-classic
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5

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 Directory Traversal in MDCBasedDiscriminator, used by SiftingAppender, which takes an MDC value as the discriminating key without removing path separators, so the value reaches the nested FileAppender path unsanitized. An attacker can direct log output to a file outside the intended directory by supplying an MDC value containing / or \ path segments. This requires a configuration whose SiftingAppender discriminates on MDC and whose nested FileAppender interpolates the discriminating key into its file path, with that MDC value populated from attacker-influenced input.

Note: This is a bypass of the fix for the vulnerability described in CVE-2025-11226.

Details

A Directory Traversal attack (also known as path traversal) aims to access files and directories that are stored outside the intended folder. By manipulating files with "dot-dot-slash (../)" sequences and its variations, or by using absolute file paths, it may be possible to access arbitrary files and directories stored on file system, including application source code, configuration, and other critical system files.

Directory Traversal vulnerabilities can be generally divided into two types:

  • Information Disclosure: Allows the attacker to gain information about the folder structure or read the contents of sensitive files on the system.

st is a module for serving static files on web pages, and contains a vulnerability of this type. In our example, we will serve files from the public route.

If an attacker requests the following URL from our server, it will in turn leak the sensitive private key of the root user.

curl http://localhost:8080/public/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/root/.ssh/id_rsa

Note %2e is the URL encoded version of . (dot).

  • Writing arbitrary files: Allows the attacker to create or replace existing files. This type of vulnerability is also known as Zip-Slip.

One way to achieve this is by using a malicious zip archive that holds path traversal filenames. When each filename in the zip archive gets concatenated to the target extraction folder, without validation, the final path ends up outside of the target folder. If an executable or a configuration file is overwritten with a file containing malicious code, the problem can turn into an arbitrary code execution issue quite easily.

The following is an example of a zip archive with one benign file and one malicious file. Extracting the malicious file will result in traversing out of the target folder, ending up in /root/.ssh/ overwriting the authorized_keys file:

2018-04-15 22:04:29 .....           19           19  good.txt
2018-04-15 22:04:42 .....           20           20  ../../../../../../root/.ssh/authorized_keys

Remediation

Upgrade ch.qos.logback:logback-classic to version 1.6.3 or higher.

References

medium severity

Improper Neutralization of Special Elements

  • Vulnerable module: ch.qos.logback:logback-classic
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.3.8.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5

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

External Initialization of Trusted Variables or Data Stores

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.4.11.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

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.3.16, 1.5.19 or higher.

References

medium severity

Improper Neutralization of Special Elements

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.3.8.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

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

Denial of Service (DoS)

  • Vulnerable module: com.squareup.okio:okio
  • Introduced through: org.seleniumhq.selenium:selenium-java@3.141.59

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0 › com.squareup.okio:okio@1.14.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.

Overview

Affected versions of this package are vulnerable to Denial of Service (DoS) due to improper exception handling by the GzipSource class when parsing a malformed gzip buffer.

This vulnerability can be exploited on the Okio client when handling a crafted GZIP archive.

PoC

val gzBuf: Buffer = Buffer()
    try {
        val gzByteString: ByteString = ("1f8b41ff424242424343ffff").decodeHex()
        gzBuf.write(gzByteString)
        val gz: GzipSource = GzipSource(gzBuf)
        val sinkBuf: Buffer = Buffer()
        gz.read(sinkBuf, 5)
    }
    catch(e: IOException) {
        println("got error: " + e.toString())
    }

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 ws package

Remediation

Upgrade com.squareup.okio:okio to version 1.17.6, 3.4.0 or higher.

References

medium severity

Improper Enforcement of Behavioral Workflow

  • Vulnerable module: org.springframework.data:spring-data-rest-core
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@5.0.7.

Overview

org.springframework.data:spring-data-rest-core is a Spring Data REST.

Affected versions of this package are vulnerable to Improper Enforcement of Behavioral Workflow via the handling of HTTP PUT requests against immutable aggregate types. An attacker can bypass optimistic-locking protections by submitting a crafted request body that includes a manipulated version property, resulting in stale writes being silently accepted and concurrent updates being overwritten.

Note: This is only exploitable if the aggregate root is immutable or allows a body-driven polymorphic subtype change, and the version property is visible to Jackson's deserialization model and not excluded via @JsonIgnore.

Remediation

Upgrade org.springframework.data:spring-data-rest-core to version 5.0.7, 5.1.1 or higher.

References

medium severity

Information Exposure

  • Vulnerable module: com.squareup.okhttp3:okhttp
  • Introduced through: org.seleniumhq.selenium:selenium-java@3.141.59

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.squareup.okhttp3:okhttp@3.11.0
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.

Overview

com.squareup.okhttp3:okhttp is a HTTP & HTTP/2 client for Android and Java applications

Affected versions of this package are vulnerable to Information Exposure. When there's an illegal character in a header value, an IllegalArgumentException is thrown whose message includes the full header value.

PoC

package com.launchdarkly.eventsource;

import okhttp3.*;
import org.junit.Test;
import static org.hamcrest.MatcherAssert.*;
import static org.hamcrest.Matchers.*;

public class OkhttpHeaderExceptionTest {
  @Test
  public void invalidHeaderValueIsCapturedInException() throws Exception {
    String password = "very-secret-password";
    String badValue = password + "\n";
    
    try {
      Request req = new Request.Builder().url("http://github.com/path/doesnt/matter")
          .header("Authorization", badValue)
          .build();
    } catch (IllegalArgumentException e) {
      assertThat(e.getMessage(), not(containsString(password)));
    }
  }
}

Remediation

Upgrade com.squareup.okhttp3:okhttp to version 4.9.2 or higher.

References

medium severity

Insecure Temporary File

  • Vulnerable module: org.springframework.boot:spring-boot-autoconfigure
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1, org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 and others

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.15.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springdoc:springdoc-openapi-starter-common@2.1.0 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1

Overview

Affected versions of this package are vulnerable to Insecure Temporary File via the default data directory configuration in ArtemisEmbeddedConfigurationFactory. A local attacker can tamper with or redirect the embedded Artemis broker's data storage by pre-creating the predictable data directory or replacing it with a symlink before the application starts. This may allow unauthorized access to message data, injection of malicious messages, or further compromise through processing of attacker-controlled broker data.

Note: This is only exploitable by an attacker with local access to the host system before the application initializes the embedded broker.

Remediation

Upgrade org.springframework.boot:spring-boot-autoconfigure to version 3.5.15, 4.0.7, 4.1.0 or higher.

References

medium severity

Dual license: EPL-1.0, LGPL-2.1

  • Module: ch.qos.logback:logback-classic
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5

Dual license: EPL-1.0, LGPL-2.1

medium severity

Dual license: EPL-1.0, LGPL-2.1

  • Module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

Dual license: EPL-1.0, LGPL-2.1

low severity

Buffer Overflow

  • Vulnerable module: com.jayway.jsonpath:json-path
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.hateoas:spring-hateoas@2.0.0 › com.jayway.jsonpath:json-path@2.7.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.1.10.

Overview

Affected versions of this package are vulnerable to Buffer Overflow via the deprecated Criteria.parse or Criteria.where methods. An attacker can disrupt the regular operation of the application by supplying a specially crafted input that triggers a stack overflow. Exploiting this vulnerability requires insecure configurations on the server side, for example - handling requests in a one single thread.

PoC

import com.jayway.jsonpath.Criteria;
import org.junit.Test;
public class CriteriaFuzzerWhere1 {
    // Stack overflow
    @Test
    public void whereFuzzerTest() {
        try {
            Criteria result = Criteria.where("[']',");
        } catch (Exception e) {
        }
    }
}

Remediation

Upgrade com.jayway.jsonpath:json-path to version 2.9.0 or higher.

References

low severity

Creation of Temporary File in Directory with Insecure Permissions

  • Vulnerable module: com.google.guava:guava
  • Introduced through: org.seleniumhq.selenium:selenium-java@3.141.59

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.12.0.

Overview

com.google.guava:guava is a set of core libraries that includes new collection types (such as multimap and multiset,immutable collections, a graph library, functional types, an in-memory cache and more.

Affected versions of this package are vulnerable to Creation of Temporary File in Directory with Insecure Permissions due to the use of Java's default temporary directory for file creation in FileBackedOutputStream. Other users and apps on the machine with access to the default Java temporary directory can access the files created by this class. This more fully addresses the underlying issue described in CVE-2020-8908, by deprecating the permissive temp file creation behavior.

NOTE: Even though the security vulnerability is fixed in version 32.0.0, the maintainers recommend using version 32.0.1, as version 32.0.0 breaks some functionality under Windows.

Remediation

Upgrade com.google.guava:guava to version 32.0.0-android, 32.0.0-jre or higher.

References

low severity

Information Disclosure

  • Vulnerable module: com.google.guava:guava
  • Introduced through: org.seleniumhq.selenium:selenium-java@3.141.59

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-chrome-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-edge-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-firefox-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-ie-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-opera-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-safari-driver@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.seleniumhq.selenium:selenium-java@3.141.59 › org.seleniumhq.selenium:selenium-support@3.141.59 › org.seleniumhq.selenium:selenium-remote-driver@3.141.59 › com.google.guava:guava@25.0-jre
    Remediation: Upgrade to org.seleniumhq.selenium:selenium-java@4.0.0.

Overview

com.google.guava:guava is a set of core libraries that includes new collection types (such as multimap and multiset,immutable collections, a graph library, functional types, an in-memory cache and more.

Affected versions of this package are vulnerable to Information Disclosure. The file permissions on the file created by com.google.common.io.Files.createTempDir allow an attacker running a malicious program co-resident on the same machine to steal secrets stored in this directory. This is because, by default, on unix-like operating systems the /tmp directory is shared between all users, so if the correct file permissions aren't set by the directory/file creator, the file becomes readable by all other users on that system.

PoC

File guavaTempDir = com.google.common.io.Files.createTempDir();
System.out.println("Guava Temp Dir: " + guavaTempDir.getName());
runLS(guavaTempDir.getParentFile(), guavaTempDir); // Prints the file permissions -> drwxr-xr-x
File child = new File(guavaTempDir, "guava-child.txt");
child.createNewFile();
runLS(guavaTempDir, child); // Prints the file permissions -> -rw-r--r--

For Android developers, choosing a temporary directory API provided by Android is recommended, such as context.getCacheDir(). For other Java developers, we recommend migrating to the Java 7 API java.nio.file.Files.createTempDirectory() which explicitly configures permissions of 700, or configuring the Java runtime's java.io.tmpdir system property to point to a location whose permissions are appropriately configured.

Remediation

There is no fix for com.google.guava:guava. However, in version 30.0 and above, the vulnerable functionality has been deprecated. In oder to mitigate this vulnerability, upgrade to version 30.0 or higher and ensure your dependencies don't use the createTempDir or createTempFile methods.

References

low severity

Server-side Request Forgery (SSRF)

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.3.8.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

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.

References

low severity

Improper Handling of Case Sensitivity

  • Vulnerable module: org.springframework:spring-context
  • Introduced through: org.springframework.data:spring-data-rest-core@4.0.0, org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and others

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.plugin:spring-plugin-core@3.0.0 › org.springframework:spring-context@6.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@5.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.hateoas:spring-hateoas@2.0.0 › org.springframework:spring-context@6.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@4.3.7.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.data:spring-data-mongodb@4.0.0 › org.springframework:spring-context@6.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.2.11.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-http-converter@4.2.0-M2 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springframework:spring-webmvc@7.1.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-webmvc@4.2.0-M2 › org.springframework:spring-webmvc@7.1.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.data:spring-data-rest-core@4.0.0 › org.springframework.hateoas:spring-hateoas@2.0.0 › org.springframework.plugin:spring-plugin-core@3.0.0 › org.springframework:spring-context@6.0.0
    Remediation: Upgrade to org.springframework.data:spring-data-rest-core@5.0.0.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-webmvc@4.2.0-M2 › org.springframework.boot:spring-boot-http-converter@4.2.0-M2 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-jackson@4.2.0-M2 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-webmvc@4.2.0-M2 › org.springframework.boot:spring-boot-servlet@4.2.0-M2 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.1.0 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.1.0 › org.springdoc:springdoc-openapi-starter-common@2.1.0 › org.springframework.boot:spring-boot-autoconfigure@3.0.1 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-autoconfigure@3.0.1 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-web-server@4.2.0-M2 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M2 › org.springframework.boot:spring-boot-web-server@4.2.0-M2 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M2 › org.springframework.boot:spring-boot-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-web-server@4.2.0-M2 › org.springframework.boot:spring-boot@4.2.0-M2 › org.springframework:spring-context@6.0.0

Overview

Affected versions of this package are vulnerable to Improper Handling of Case Sensitivity due to String.toLowerCase() having some Locale dependent exceptions that could potentially result in fields not protected as expected.

Note:

The fix for CVE-2022-22968 made disallowedFields patterns in DataBinder case insensitive.

This vulnerability was also fixed in commercial versions 5.3.41 and 6.0.25.

Remediation

Upgrade org.springframework:spring-context to version 6.1.14 or higher.

References

low severity

External Initialization of Trusted Variables or Data Stores

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 and org.springframework.boot:spring-boot-starter-web@4.2.0-M2

Detailed paths

  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-data-mongodb@3.0.1 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-mongodb@3.5.10.
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5
  • Introduced through: pr0tex/dynanotes@pr0tex/dynanotes › org.springframework.boot:spring-boot-starter-web@4.2.0-M2 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M2 › org.springframework.boot:spring-boot-starter@3.0.1 › org.springframework.boot:spring-boot-starter-logging@3.0.1 › ch.qos.logback:logback-classic@1.4.5 › ch.qos.logback:logback-core@1.4.5

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 during the configuration file processing. An attacker can instantiate arbitrary classes already present on the class path by compromising an existing configuration file.

Remediation

Upgrade ch.qos.logback:logback-core to version 1.5.25 or higher.

References