id: magento-cacheleak

info:
  name: Magento Cacheleak
  author: TechbrunchFR
  severity: high
  description: Magento Cacheleak is an implementation vulnerability, result of bad implementation of web-server configuration for Magento platform. Magento was developed to work under the Apache web-server which natively works with .htaccess files, so all needed configuration directives specific for various internal Magento folders were placed in .htaccess files.  When Magento is installed on web servers that are ignoring .htaccess files (such as nginx), an attacker can get access to internal Magento folders (such as the Magento cache directory) and extract sensitive information from cache files.
  reference:
    - https://support.hypernode.com/en/best-practices/security/how-to-secure-magento-cacheleak
    - https://www.acunetix.com/vulnerabilities/web/magento-cacheleak/
    - https://royduineveld.nl/magento-cacheleak-exploit/
  classification:
    cpe: cpe:2.3:a:magento:magento:*:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: magento
    product: magento
    shodan-query: http.component:"Magento"
  tags: magento,vuln

http:
  - method: GET
    path:
      - '{{BaseURL}}/var/resource_config.json'

    # Based on royduineveld.nl blogpost, was not tested against a vulnerable Magento site
    matchers-condition: and
    matchers:
      - type: status
        status:
          - 200

      - type: word
        words:
          - "media_directory"
          - "allowed_resources"
        part: body

      - type: word
        words:
          - "application/json"
        part: header
# digest: 4b0a00483046022100d78a231d31debe4c9b8d10e72fdbe40897cf5fb284261c0425d1aa207b27db76022100f2524027ab9d6402f68460d2c94990a5dc2555c63c3281cf0ac3913ad4a36089:922c64590222798bb761d5b6d8e72950