CVE-2026-27210
Received Received - Intake
Stored XSS in Pannellum Hot Spot Attributes Allows Remote Code Execution

Publication date: 2026-02-21

Last updated on: 2026-03-02

Assigner: GitHub, Inc.

Description
Pannellum is a lightweight, free, and open source panorama viewer for the web. In versions 3.5.0 through 2.5.6, the hot spot attributes configuration property allowed any attribute to be set, including HTML event handler attributes, allowing for potential XSS attacks. This affects websites hosting the standalone viewer HTML file and any other use of untrusted JSON config files (bypassing the protections of the escapeHTML parameter). As certain events fire without any additional user interaction, visiting a standalone viewer URL that points to a malicious config file β€” without additional user interaction β€” is sufficient to trigger the vulnerability and execute arbitrary JavaScript code, which can, for example, replace the contents of the page with arbitrary content and make it appear to be hosted by the website hosting the standalone viewer HTML file. This issue has been fixed in version 2.5.7. To workaround, setting the Content-Security-Policy header to script-src-attr 'none' will block execution of inline event handlers, mitigating this vulnerability. Don't host pannellum.htm on a domain that shares cookies with user authentication to mitigate XSS risk.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-02-21
Last Modified
2026-03-02
Generated
2026-05-27
AI Q&A
2026-02-21
EPSS Evaluated
2026-05-25
NVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
pannellum pannellum From 2.5.0 (inc) to 2.5.7 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

CVE-2026-27210 is a Cross-Site Scripting (XSS) vulnerability in the Pannellum panorama viewer versions 2.5.0 through 2.5.6. The issue arises because the hot spot attributes configuration property allows any attribute to be set, including HTML event handler attributes, without proper filtering.

This flaw enables attackers to inject and execute arbitrary JavaScript code by using malicious JSON configuration files. These files can be loaded by the standalone viewer HTML file or other uses of untrusted JSON configs, bypassing protections like the escapeHTML parameter.

Exploitation requires no user interaction beyond visiting a URL that points to a malicious config file, as certain events trigger automatically. Successful exploitation can lead to arbitrary script execution, such as replacing the page content and impersonating the hosting website.

The vulnerability was fixed in version 2.5.7 by filtering out event handler attributes and sanitizing URLs to prevent script injection.


How can this vulnerability impact me? :

This vulnerability allows an attacker to execute arbitrary JavaScript code on websites using vulnerable versions of Pannellum by supplying malicious JSON configuration files.

The impact includes the ability to replace the contents of the affected webpage with arbitrary content, potentially impersonating the legitimate website.

Because exploitation requires no user interaction beyond visiting a malicious URL, users can be affected simply by accessing a crafted link.

While the CVSS score rates this as moderate severity (5.3), the vulnerability does not directly compromise system confidentiality, integrity, or availability, but it can lead to low impact on confidentiality and integrity through script execution.

Mitigations include upgrading to version 2.5.7 or later, setting Content-Security-Policy headers to block inline event handlers, and avoiding hosting the vulnerable viewer on domains sharing authentication cookies.


How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

I don't know


How can this vulnerability be detected on my network or system? Can you suggest some commands?

[{'type': 'paragraph', 'content': 'This vulnerability can be detected by identifying if your system is running Pannellum versions 2.5.0 through 2.5.6 and if it uses untrusted JSON configuration files that set hot spot attributes without proper filtering.'}, {'type': 'paragraph', 'content': 'You can check the version of Pannellum in use by inspecting the package version or the pannellum.htm file version.'}, {'type': 'paragraph', 'content': 'To detect potential exploitation or presence of malicious config files, you can search for JSON config files containing suspicious event handler attributes (attributes starting with "on") or unsafe href values.'}, {'type': 'paragraph', 'content': 'Example commands to help detect vulnerable versions or malicious configs might include:'}, {'type': 'list_item', 'content': 'Check Pannellum version in your project (if using npm): `npm list pannellum`'}, {'type': 'list_item', 'content': 'Search for JSON config files containing event handler attributes: `grep -r -i \'"on\' /path/to/configs`'}, {'type': 'list_item', 'content': "Search for suspicious href attributes in JSON configs: `grep -r -i 'href' /path/to/configs`"}, {'type': 'list_item', 'content': 'Monitor web server logs for requests to standalone viewer URLs with unusual query parameters or config file references that could trigger the vulnerability.'}] [1]


What immediate steps should I take to mitigate this vulnerability?

[{'type': 'paragraph', 'content': 'Immediate mitigation steps include upgrading Pannellum to version 2.5.7 or later, where the vulnerability has been fixed.'}, {'type': 'paragraph', 'content': 'If upgrading is not immediately possible, you can mitigate the vulnerability by setting the Content-Security-Policy (CSP) header to block execution of inline event handlers.'}, {'type': 'list_item', 'content': "Set the HTTP header: `Content-Security-Policy: script-src-attr 'none'` to prevent execution of inline event handlers."}, {'type': 'list_item', 'content': 'Avoid hosting pannellum.htm on domains that share cookies with user authentication to reduce the risk of XSS attacks affecting authenticated sessions.'}] [1]


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart