CVE-2026-27210: CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in mpetroff pannellum
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.
AI Analysis
Technical Summary
CVE-2026-27210 is a cross-site scripting vulnerability identified in the Pannellum open-source panorama viewer, specifically affecting versions from 2.5.0 up to but not including 2.5.7. The vulnerability stems from improper neutralization of input during web page generation (CWE-79). The core issue lies in the hot spot attributes configuration property, which permits setting any attribute, including HTML event handler attributes such as onclick or onmouseover. This allows an attacker to craft malicious JSON configuration files or URLs that inject arbitrary JavaScript code. Because certain event handlers fire automatically without user interaction, simply visiting a URL referencing a malicious config file can trigger script execution. This can lead to arbitrary code execution in the context of the vulnerable web page, enabling attackers to manipulate page content, perform phishing attacks by spoofing the hosting site, or steal sensitive information if cookies are accessible. The vulnerability bypasses protections provided by the escapeHTML parameter, making it more dangerous. The vulnerability is mitigated by updating to Pannellum version 2.5.7, which fixes the input validation flaw. As an interim workaround, setting a Content-Security-Policy header with 'script-src-attr 'none'' disables execution of inline event handlers, blocking the attack vector. Additionally, hosting the vulnerable pannellum.htm file on domains that do not share authentication cookies reduces the risk of session hijacking. The CVSS 4.0 base score is 5.3 (medium severity), reflecting network attack vector, low complexity, no privileges required, no user interaction needed, and limited scope impact. No known exploits have been reported in the wild as of publication.
Potential Impact
The impact of CVE-2026-27210 is primarily the execution of arbitrary JavaScript code in the context of the vulnerable web page. This can lead to several security consequences: unauthorized content manipulation, phishing attacks by spoofing legitimate site content, theft of sensitive data such as session cookies if the vulnerable viewer is hosted on a domain sharing authentication cookies, and potential further exploitation depending on the victim's browser environment. Organizations using Pannellum to display panoramas on public or internal websites risk exposing users to these attacks, especially if untrusted JSON configuration files are used or if URLs can be manipulated. The vulnerability does not require user interaction beyond visiting a malicious URL, increasing its risk. However, the scope is limited to the context of the Pannellum viewer page, and it does not directly affect backend systems or data integrity beyond the web page content. The lack of known exploits reduces immediate risk, but the ease of exploitation and potential for social engineering make it a concern for organizations relying on this software for web content delivery.
Mitigation Recommendations
1. Upgrade Pannellum to version 2.5.7 or later immediately, as this version contains the official fix for the vulnerability. 2. If upgrading is not immediately possible, implement a strict Content-Security-Policy (CSP) header with 'script-src-attr 'none'' to block execution of inline event handlers, effectively mitigating the XSS attack vector. 3. Avoid hosting the pannellum.htm standalone viewer on domains that share cookies with user authentication systems to prevent session hijacking risks. 4. Validate and sanitize all JSON configuration files before use, especially if they originate from untrusted sources, to prevent injection of malicious attributes. 5. Restrict access to configuration files and URLs that load the viewer to trusted users or networks where feasible. 6. Monitor web server logs for unusual requests to the panorama viewer URLs that could indicate exploitation attempts. 7. Educate developers and administrators about the risks of allowing arbitrary HTML attributes in configuration properties and encourage secure coding practices for web content generation.
Affected Countries
United States, Germany, United Kingdom, France, Japan, South Korea, China, India, Australia, Canada
CVE-2026-27210: CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in mpetroff pannellum
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.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
CVE-2026-27210 is a cross-site scripting vulnerability identified in the Pannellum open-source panorama viewer, specifically affecting versions from 2.5.0 up to but not including 2.5.7. The vulnerability stems from improper neutralization of input during web page generation (CWE-79). The core issue lies in the hot spot attributes configuration property, which permits setting any attribute, including HTML event handler attributes such as onclick or onmouseover. This allows an attacker to craft malicious JSON configuration files or URLs that inject arbitrary JavaScript code. Because certain event handlers fire automatically without user interaction, simply visiting a URL referencing a malicious config file can trigger script execution. This can lead to arbitrary code execution in the context of the vulnerable web page, enabling attackers to manipulate page content, perform phishing attacks by spoofing the hosting site, or steal sensitive information if cookies are accessible. The vulnerability bypasses protections provided by the escapeHTML parameter, making it more dangerous. The vulnerability is mitigated by updating to Pannellum version 2.5.7, which fixes the input validation flaw. As an interim workaround, setting a Content-Security-Policy header with 'script-src-attr 'none'' disables execution of inline event handlers, blocking the attack vector. Additionally, hosting the vulnerable pannellum.htm file on domains that do not share authentication cookies reduces the risk of session hijacking. The CVSS 4.0 base score is 5.3 (medium severity), reflecting network attack vector, low complexity, no privileges required, no user interaction needed, and limited scope impact. No known exploits have been reported in the wild as of publication.
Potential Impact
The impact of CVE-2026-27210 is primarily the execution of arbitrary JavaScript code in the context of the vulnerable web page. This can lead to several security consequences: unauthorized content manipulation, phishing attacks by spoofing legitimate site content, theft of sensitive data such as session cookies if the vulnerable viewer is hosted on a domain sharing authentication cookies, and potential further exploitation depending on the victim's browser environment. Organizations using Pannellum to display panoramas on public or internal websites risk exposing users to these attacks, especially if untrusted JSON configuration files are used or if URLs can be manipulated. The vulnerability does not require user interaction beyond visiting a malicious URL, increasing its risk. However, the scope is limited to the context of the Pannellum viewer page, and it does not directly affect backend systems or data integrity beyond the web page content. The lack of known exploits reduces immediate risk, but the ease of exploitation and potential for social engineering make it a concern for organizations relying on this software for web content delivery.
Mitigation Recommendations
1. Upgrade Pannellum to version 2.5.7 or later immediately, as this version contains the official fix for the vulnerability. 2. If upgrading is not immediately possible, implement a strict Content-Security-Policy (CSP) header with 'script-src-attr 'none'' to block execution of inline event handlers, effectively mitigating the XSS attack vector. 3. Avoid hosting the pannellum.htm standalone viewer on domains that share cookies with user authentication systems to prevent session hijacking risks. 4. Validate and sanitize all JSON configuration files before use, especially if they originate from untrusted sources, to prevent injection of malicious attributes. 5. Restrict access to configuration files and URLs that load the viewer to trusted users or networks where feasible. 6. Monitor web server logs for unusual requests to the panorama viewer URLs that could indicate exploitation attempts. 7. Educate developers and administrators about the risks of allowing arbitrary HTML attributes in configuration properties and encourage secure coding practices for web content generation.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-02-18T19:47:02.156Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 699946e0be58cf853b4e0107
Added to database: 2/21/2026, 5:47:12 AM
Last enriched: 3/1/2026, 12:48:23 AM
Last updated: 4/7/2026, 11:59:00 AM
Views: 181
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.