---
id: CVE-2020-28707
title: >-
  The Stockdio Historical Chart plugin before 2.8.1 for WordPress is affected by
  Cross Site Scripting (XSS) via stockdio_chart_historical-wp.js in
  wp-content/plugins/stockdio-historical-chart/assets/ because the origin of a
  postMessage() e…
summary: >-
  The Stockdio Historical Chart plugin before 2.8.1 for WordPress is affected by
  Cross Site Scripting (XSS) via stockdio_chart_historical-wp.js in
  wp-content/plugins/stockdio-historical-chart/assets/ because the origin of a
  postMessage() e…
severity: medium
cvss: 6.1
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N'
cwe:
  - CWE-79
vendor: stockdio
product: stockdio_historical_chart
affected:
  - stockdio_historical_chart < 2.8.1
patched:
  - stockdio_historical_chart 2.8.1
published: '2021-01-19'
updated: '2026-07-05'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2020-28707'
references:
  - url: >-
      https://jondow.eu/cve-2020-28707-xss-in-stockdio-historical-chart-plugin-for-wordpress-before-version-281/
    label: cve@mitre.org
  - url: 'https://wordpress.org/plugins/stockdio-historical-chart/#developers'
    label: cve@mitre.org
  - url: 'http://stockdio.com'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: >-
      https://jondow.eu/cve-2020-28707-xss-in-stockdio-historical-chart-plugin-for-wordpress-before-version-281/
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://wordpress.org/plugins/stockdio-historical-chart/#developers'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
epss: 0.01012
epssPercentile: 0.61736
ingestedAt: '2026-07-05T00:59:25.796Z'
---

## Overview

The Stockdio Historical Chart plugin before 2.8.1 for WordPress is affected by Cross Site Scripting (XSS) via stockdio_chart_historical-wp.js in wp-content/plugins/stockdio-historical-chart/assets/ because the origin of a postMessage() event is not validated. The stockdio_eventer function listens for any postMessage event. After a message event is sent to the application, this function sets the "e" variable as the event and checks that the types of the data and data.method are not undefined (empty) before proceeding to eval the data.method received from the postMessage. However, on a different website. JavaScript code can call window.open for the vulnerable WordPress instance and do a postMessage(msg,'*') for that object.

## Affected

- `stockdio_historical_chart < 2.8.1`

## Remediation

Upgrade past the affected range:

- `stockdio_historical_chart 2.8.1`
