id: generic-env

info:
  name: Generic Env File Disclosure
  author: kazet
  severity: high
  description: |
    A .env file was discovered containing sensitive information like database credentials and tokens. It should not be publicly accessible.
  classification:
    cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
    cvss-score: 8.3
    cwe-id: CWE-522
  metadata:
    max-request: 22
  tags: config,exposure,env

http:
  - method: GET
    path:
      - "{{BaseURL}}{{paths}}"
    payloads:
      paths:
        - "/.env"
        - "/.env.bak"
        - "/.env.dev"
        - "/.env.dev.local"
        - "/.env.development.local"
        - "/.env.prod"
        - "/.env.prod.local"
        - "/.env.production"
        - "/.env.production.local"
        - "/.env.local"
        - "/.env.example"
        - "/.env.stage"
        - "/.env.live"
        - "/.env.backup"
        - "/.env.save"
        - "/.env.old"
        - "/.env.www"
        - "/.env_1"
        - "/.env_sample"
        - "/.env.{{DN}}"
        - "/.env.{{SD}}"
        - "/api/.env"

    matchers-condition: and
    matchers:
      - type: regex
        part: body
        regex:
          - "(?mi)^[a-z_]*(KEY|TOKEN|PASS|SECRET|DB_URL|DATABASE_URL|MAILER_URL)[a-z_]*="

      - type: word
        part: body
        negative: true
        words:
          - "<html"
# digest: 4a0a0047304502202254c270dab1250e5b66103585362fb95e720021d93e8ab3686c501745df5c9a022100ec29600b6c9c855be57de48a701b0c8319e8ab33ff6950126226bb1e25a13d2c:922c64590222798bb761d5b6d8e72950