GHSA-7v5m-pr3q-6453

Suggest an improvement
Source
https://github.com/advisories/GHSA-7v5m-pr3q-6453
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-7v5m-pr3q-6453/GHSA-7v5m-pr3q-6453.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-7v5m-pr3q-6453
Aliases
  • CVE-2026-54326
Downstream
Published
2026-06-16T23:43:15Z
Modified
2026-06-17T00:00:10.307316697Z
Severity
  • 2.5 (Low) CVSS_V3 - CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N CVSS Calculator
Summary
Pi Agent: Potential XSS in HTML session exports via Markdown URL sanitization bypass
Details

Potential XSS in HTML session exports via Markdown URL handling

Pi 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.

Impact

The 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.

If 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.

Affected versions

  • Affected: @mariozechner/pi-coding-agent >= 0.27.5, <= 0.73.1
  • Affected: @earendil-works/pi-coding-agent >= 0.74.0, < 0.78.1
  • Patched: @earendil-works/pi-coding-agent 0.78.1

The old @mariozechner/pi-coding-agent package scope has no patched release. It was renamed to @earendil-works/pi-coding-agent; users of the old scope should migrate to the new package and upgrade to version 0.78.1 or later.

Resolution

Version 0.78.1 sanitizes Markdown link and image URLs with an allow-list after stripping C0 control characters.

Recommendations

Upgrade @earendil-works/pi-coding-agent to version 0.78.1 or later. Regenerate shared HTML exports after upgrading if the underlying sessions contained untrusted content.

Timeline

  • 2026-05-29: Report received through GitHub Security Advisories
  • 2026-06-02: Fix committed
  • 2026-06-04: Fixed version 0.78.1 released
  • 2026-06-08: Advisory prepared for publication

Credits

Reported by Paul Urian and Cosmin Alexa of CrowdStrike.

Database specific
{
    "nvd_published_at": null,
    "severity": "LOW",
    "github_reviewed": true,
    "github_reviewed_at": "2026-06-16T23:43:15Z",
    "cwe_ids": [
        "CWE-79"
    ]
}
References

Affected packages

npm / @mariozechner/pi-coding-agent

Package

Name
@mariozechner/pi-coding-agent
View open source insights on deps.dev
Purl
pkg:npm/%40mariozechner%2Fpi-coding-agent

Affected ranges

Type
SEMVER
Events
Introduced
0.27.5
Last affected
0.73.1

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-7v5m-pr3q-6453/GHSA-7v5m-pr3q-6453.json"

npm / @earendil-works/pi-coding-agent

Package

Name
@earendil-works/pi-coding-agent
View open source insights on deps.dev
Purl
pkg:npm/%40earendil-works%2Fpi-coding-agent

Affected ranges

Type
SEMVER
Events
Introduced
0.74.0
Fixed
0.78.1

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-7v5m-pr3q-6453/GHSA-7v5m-pr3q-6453.json"