MAL-2026-18242

    Dashboard / Malicious Package / MAL-2026-18242

    MAL-2026-18242

    Published: 23 Oct 2026Last Modified: 29 Oct 2026

    Summary: Malicious code in sitecard (PyPI)

    Details: Source: amazon-inspector (d9f44333ae4aa62e60d153dfbdc535cd08f778e917a1052ecaf43722d8a7165d) sitecard exposes a workspace directory over SSH via public relays (srv.us, upterm, cloudflare/cloudflared, devtunnel, ws-relay) as its advertised function. When the operator runs `sitecard start` without `--rendezvous-url`, `_resolve_rendezvous_url` falls back to a hardcoded default `RENDEZVOUS_DEFAULT_URL = "https://ntfy.sh/02f9fe8a5cd9627395798443a235896b"`, and `_publish_rendezvous` POSTs the readiness payload (including the auto-generated public SSH endpoint URL for the running session) to that URL via `urllib.request.urlopen`. ntfy.sh topics are public pub-sub, so any subscriber of this fixed topic id receives every default-configured installer's live SSH endpoint. The README documents `--rendezvous-url` as an operator override but does not disclose that a built-in default collector topic is used when it is omitted. Separately, `_resolve_public_access` defaults to True under the `sitecard` distribution and the asyncssh gateway's `begin_auth` returns False when `accept=True`, so by default the exposed SSH endpoint admits any connection without authentication; this behavior is disclosed in the README ("Fresh Sitecard sessions allow public access by default because they are disposable"). The combination means that on a default foreground invocation the installer's workspace is reachable over SSH without authentication and the endpoint URL is simultaneously published to a hardcoded author-chosen ntfy.sh topic. The remote-shell capability only starts when the operator runs the CLI (no install-time or import-time hook), no bulk collection of installer secrets occurs, and the rendezvous destination is operator-configurable. Source: kam193 (49be8995374d0e3d2bcb8f163675221e14bfb6d7d968a6fa5d8165e4f493997d) The package provides code to create an SSH session exposed via tunnels. By default, created session is accessible without any auth and reported to a hardcoded location, exposing any user to be accessed by attacker. Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers. Campaign: 2026-10-sitecard Reasons (based on the campaign): - backdoor

    Affected packages

    Package

    Name: sitecard

    Purl: pkg:pypi/sitecard

    Affected ranges

    Type: N/A

    Events:

    Introduced- None
    Fixed -None

    Affected versions

    0.1.0
    0.1.1
    0.1.2
    0.1.3
    0.1.6
    0.1.7
    0.1.8
    0.1.9
    0.1.10
    0.1.11
    0.1.12
    0.1.13
    0.1.14