PT-2026-46092 · Pypi · Malla

Published

2026-06-03

·

Updated

2026-06-03

CVSS v3.1

6.3

Medium

VectorAV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L
Node names (long name, short name) received via MQTT are stored in SQLite without sanitization and rendered into the DOM without escaping. Any participant on a public Meshtastic MQTT broker can set a malicious node name that executes JavaScript in the browser of every Malla dashboard visitor.
Affected files:
  • src/malla/templates/traceroute graph.html (line ~832)
  • src/malla/templates/map.html (lines ~945, 1078)
  • src/malla/templates/packet detail.html (lines ~1402, 1452)
  • src/malla/static/js/relay node analysis.js (line ~124)
Steps to reproduce
  1. Publish a Meshtastic NODEINFO APP packet to any public MQTT broker with long name set to a HTML entity i.e <img src=x onerror=alert(1)>
  2. Wait for malla-capture to store it
  3. Open the dashboard
Impact
Allows unauthenticated remote attackers to execute arbitrary JavaScript in the browser, such as:
  • Phishing overlays
  • Force redirect to malicious websites
  • Injection of arbitrary third-party scripts (no CSP restrictions)
  • Browser resource abuse
  • Persistent dashboard denial of service

Fix

XSS

Weakness Enumeration

Related Identifiers

GHSA-CH57-39Q2-4CRM

Affected Products

Malla