id: CVE-2019-16931 info: name: WordPress Visualizer <3.3.1 - Cross-Site Scripting author: ritikchaddha severity: medium description: | WordPress Visualizer plugin before 3.3.1 contains a stored cross-site scripting vulnerability via /wp-json/visualizer/v1/update-chart WP-JSON API endpoint. An unauthenticated attacker can execute arbitrary JavaScript when an admin or other privileged user edits the chart via the admin dashboard. remediation: | Update to the latest version of WordPress Visualizer plugin (3.3.1) or apply the provided patch to fix the XSS vulnerability. reference: - https://wpscan.com/vulnerability/867e000d-d2f5-4d53-89b0-41d7d4163f44 - https://nathandavison.com/blog/wordpress-visualizer-plugin-xss-and-ssrf - https://wpvulndb.com/vulnerabilities/9893 - https://nvd.nist.gov/vuln/detail/CVE-2019-16931 - https://wordpress.org/plugins/visualizer/#developers 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-2019-16931 cwe-id: CWE-79 epss-score: 0.00244 epss-percentile: 0.62227 cpe: cpe:2.3:a:themeisle:visualizer:*:*:*:*:*:wordpress:*:* metadata: verified: true max-request: 1 vendor: themeisle product: visualizer framework: wordpress tags: cve,cve2019,wp-plugin,wordpress,wp,xss,unauth,wpscan,themeisle http: - raw: - | POST /wp-json/visualizer/v1/update-chart HTTP/1.1 Host: {{Hostname}} Content-Type: application/json {"id": 7, "visualizer-chart-type": ""} matchers-condition: and matchers: - type: word part: body words: - '{"success":"Chart updated"}' - type: word part: header words: - 'application/json' - type: status status: - 200 # digest: 490a00463044022024ebd871630b3f975dd78bcb079f78f6f4ee5db1575c421df70187b969203cf302201f2305c70f38109fcc696af8f4843293997b2827c40ff20f9fa5ba73c85c89ee:922c64590222798bb761d5b6d8e72950