{"items":[{"id":"NVI-00016021","kind":"vulnerability","title":"Pi Agent: Potential XSS in HTML session exports via Markdown URL sanitization bypass","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-7v5m-pr3q-6453","CVE-2026-54326"],"plain_summary":"GitHub lists this reviewed advisory for @mariozechner/pi-coding-agent, @earendil-works/pi-coding-agent. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-06b7d051dac1ced6d0ee9c1d3515e51c"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-07-20T21:13:20.000Z","value":"2.5 low","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-06b7d051dac1ced6d0ee9c1d3515e51c"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-06b7d051dac1ced6d0ee9c1d3515e51c","url":"https://github.com/advisories/GHSA-7v5m-pr3q-6453","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-7v5m-pr3q-6453","publisher":"GitHub Advisory Database","observed_at":"2026-11-04T02:47:44.783Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-06b7d051dac1ced6d0ee9c1d3515e51c"],"technology":"@mariozechner/pi-coding-agent","known_exclusions":[],"conditions_summary":"# Potential XSS in HTML session exports via Markdown URL handling\n\nPi HTML exports render session Markdown into a static HTML file. Affected versions did not consistently reject unsafe Markdown link and image URL schemes. In versions with scheme filtering, C0 control characters in the URL scheme could bypass the check because browsers normalize those characters before navigation.\n\n## Impact\n\nThe realistic attack path is indirect. An attacker would need to get suitable Markdown into a session, for example through prompt injection that causes the model to include an unsafe link, or through other untrusted session content. The user would then need to export the session as HTML, open or share that file, and click the link.\n\nIf triggered, script runs in the exported document, not in pi or the user's shell. The main risk is limited disclosure of data embedded in that exported session file.\n\n## Affected versions\n\n- Affected: `@mariozechner/pi-coding-agent >= 0.27.5, = 0.74.0, < 0.78.1`\n- Patched: `@earendil-works/pi-coding-agent 0.78.1`\n\nThe old `@mariozechner/pi-coding-agent` package scope has no patched release. It was renamed to ","public_affected_ranges":[">= 0.27.5, <= 0.73.1"]},{"certainty":"source_listed","source_ids":["sr-06b7d051dac1ced6d0ee9c1d3515e51c"],"technology":"@earendil-works/pi-coding-agent","known_exclusions":[],"conditions_summary":"# Potential XSS in HTML session exports via Markdown URL handling\n\nPi HTML exports render session Markdown into a static HTML file. Affected versions did not consistently reject unsafe Markdown link and image URL schemes. In versions with scheme filtering, C0 control characters in the URL scheme could bypass the check because browsers normalize those characters before navigation.\n\n## Impact\n\nThe realistic attack path is indirect. An attacker would need to get suitable Markdown into a session, for example through prompt injection that causes the model to include an unsafe link, or through other untrusted session content. The user would then need to export the session as HTML, open or share that file, and click the link.\n\nIf triggered, script runs in the exported document, not in pi or the user's shell. The main risk is limited disclosure of data embedded in that exported session file.\n\n## Affected versions\n\n- Affected: `@mariozechner/pi-coding-agent >= 0.27.5, = 0.74.0, < 0.78.1`\n- Patched: `@earendil-works/pi-coding-agent 0.78.1`\n\nThe old `@mariozechner/pi-coding-agent` package scope has no patched release. It was renamed to ","public_affected_ranges":[">= 0.74.0, < 0.78.1"]}],"null_published_at":"2026-11-04T10:04:27.865Z","source_updated_at":"2026-07-20T21:13:20.000Z","source_disclosed_at":"2026-06-16T23:43:15.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-11-04T02:47:44.783Z"}],"next_cursor":null,"snapshot_revision":"39771"}