---
id: "CVE-2026-120988"
kind: "vulnerability"
aliases: ["CVE-2026-120988"]
title: "billboard.js: unsanitized series ids let attackers run JavaScript in the page"
severity: "medium"
cvss: null
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["billboard.js", "front-end", "javascript", "package", "web"]
not_affected_if: ["no-billboard-js", "static-series-names"]
published_at: "2026-11-03T08:17:15+00:00"
first_seen_at: "2026-11-03T08:19:30+00:00"
updated_at: "2026-11-03T08:19:42+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-120988", "first_seen_at": "2026-11-03T08:19:30+00:00"}]
---

# billboard.js: unsanitized series ids let attackers run JavaScript in the page

billboard.js is a JavaScript charting library; before version 4.1.3 it does not sanitize series ids when rendering the legend template. An attacker who controls a series id can make the browser run malicious JavaScript.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed version with `npm ls billboard.js` in the project.
- Search the front-end code and lockfile for `billboard.js` to find pages that render chart data from user-controlled input.

## Fix

- billboard.js: upgrade to `4.1.3` or later.

## Timeline

- 2026-11-03T08:19:30+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-120988

## Documents

- [advisory] Vendor advisory: github.com https://github.com/naver/billboard.js/security/advisories/GHSA-g5px-mcqp-3ghp

## From the sources

billboard.js before 4.1.3 allows an attacker to execute malicious JavaScript due to improper sanitization of series ids during legend template rendering.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
