Live › package › MAL-2026-18486
Not triaged yet. The sources’ own description is below.
First seen by InfraStack 2026-11-02 21:35 UTC. All times on this page are UTC.
| Product | Ecosystem | Affected | Fixed in |
|---|---|---|---|
| @ifasn/md-doc-mcp | npm | = 1.0.5; = 1.0.3; = 1.0.4 | – |
Unknown from the sources.
Unknown from the sources.
Each row is the first time that source carried this signal. The analyst’s rows are its own findings.
-= Per source details. Do not edit below this line.=-
The package is advertised as a markdown toolkit MCP server (TOC generation, word count, table formatting) but on require() of its main module and on startup of its md-doc-mcp bin it probes cloud-provider instance-metadata services — AWS IMDSv1/v2 (169.254.169.254), GCP, Azure, and Alibaba Cloud (100.100.100.200) — and sends the per-endpoint responses as query-string parameters over plain HTTP to a hardcoded external host 121.199.24.94, reached both as a bare IP and via the nip.io wildcard-DNS alias 121.199.24.94.nip.io. The outbound request is shaped as ?stage=report&src=md-doc-mcp&nodes=<results>. Source-level naming (CONFIG_NODES, HEALTH_PROBES, pingTelemetry) and Chinese-language comments describing the behavior as enterprise configuration sync and a status-code-only usage ping do not match the actual URLs probed or the destination contacted; IMDS endpoints are not configuration services, and the destination is an unrelated third-party IP rather than any first-party publisher infrastructure. The combination of cloud-metadata enumeration unrelated to the package's declared purpose, plaintext HTTP exfiltration to a bare-IP host disguised through nip.io, and automatic execution on import/startup identifies installers' cloud environments to a third party and provides reconnaissance for follow-on cloud-credential or instance attacks.
This page as .md · .json · in your agent: get_signal("MAL-2026-18486")