HexBrain

Browse / CVEs / CVE-2024-45440

CVE-2024-45440· drupal / drupal· CWE-209

Drupal 11.x-dev - Full Path Disclosure

mediumseverity
5.3CVSS score
9.3%likelihood of exploitation, next 30 days
95%of all CVEs are less likely
Readycheck to confirm it

core/authorize.php in Drupal 11.x-dev allows Full Path Disclosure (even when error logging is None) if the value of hash_salt is file_get_contents of a file that does not exist.

Impact

Attackers can obtain full path disclosure information even when error logging is disabled.

Fix

Configure hash_salt properly and ensure it references an existing file, or update to a patched Drupal version.

How to confirm it

Send: GET {{BaseURL}}/core/authorize.php
Positive when: contains "getHashSalt" and "RuntimeException" AND matches //[\w.-]+(?:/[\w.-]+){2,}/settings\.php/ AND status 200

Run it with nuclei: nuclei -id CVE-2024-45440 -u <target>

The full check
id: CVE-2024-45440

info:
  name: Drupal 11.x-dev - Full Path Disclosure
  author: DhiyaneshDK
  severity: medium
  description: |
    core/authorize.php in Drupal 11.x-dev allows Full Path Disclosure (even when error logging is None) if the value of hash_salt is file_get_contents of a file that does not exist.
  impact: |
    Attackers can obtain full path disclosure information even when error logging is disabled.
  remediation: |
    Configure hash_salt properly and ensure it references an existing file, or update to a patched Drupal version.
  reference:
    - https://senscybersecurity.nl/CVE-2024-45440-Explained/
    - https://nvd.nist.gov/vuln/detail/CVE-2024-45440
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
    cvss-score: 5.3
    cve-id: CVE-2024-45440
    cwe-id: CWE-209
    epss-score: 0.09269
    epss-percentile: 0.95401
    cpe: cpe:2.3:a:drupal:drupal:2023-05-09:*:*:*:*:*:*:*
  metadata:
    max-request: 1
    verified: true
    vendor: drupal
    product: drupal
    shodan-query:
      - http.component:"drupal"
      - cpe:"cpe:2.3:a:drupal:drupal"
  tags: cve,cve2024,drupal,exposure,error,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/core/authorize.php"

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "getHashSalt"
          - "RuntimeException"
        condition: and

      - type: regex
        part: body
        regex:
          - '/[\w.-]+(?:/[\w.-]+){2,}/settings\.php'

      - type: status
        status:
          - 200

References

Use this check only on systems you are authorised to test. Where the data comes from