Skip to content
Heist/ feed
Back to feed
Unrated

Malicious code in cloudflare_module (npm)

Type: advisorySources: OSV

--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (f3a545e1e930894c3320e68c2aee17dd2cec7f20ed03b2e882905056d0eee242) Package `cloudflare_module@99.0.1` is a dependency-confusion lure targeting the `cloudflare_*` namespace. `package.json` declares `scripts.postinstall: "node beacon.cjs"`, and `beacon.cjs` POSTs a JSON payload containing `os.hostname()`, the install path (`__dirname`), `process.cwd()`, and `process.version` to the hardcoded bare-IP endpoint `http://185.158.107.175:8787/_ah/dc` over plain HTTP. The package `main` (`index.js`) additionally calls `require('./beacon.cjs').fire()` at top level inside a try/catch, so the same host-identifier POST also fires whenever a downstream bundler or application `require()`s the package. The default export is a Proxy that returns a no-op for every property access, allowing bundlers that resolve an internal `cloudflare_module` name to complete the build cleanly so the beacon callback fires without producing errors. The package is published at version `99.0.1` with a generic "Compatibility shim." description, consistent with version-bumping to beat an internal registry during resolution. The README self-labels the package as an "authorized dependency-confusion test," but the beacon targets any machine that resolves the name — the installer never consents to the exfiltration — and the destination is an unattributed bare-IP collector, not infrastructure of the targeted namespace.

Products
cloudflare_module
Affected versions
1.0.0, 1.0.1, 3.0.0, 99.0.1
Fixed versions
Not specified
CVEs
Not specified
Confirmed fixed CVEs
Not specified
Updated in this feed
30 Oct 2026, 05:16 UTC · Revision 1

Source evidence

Malicious code in cloudflare_module (npm)

core-osv · Original source

Published 11 Oct 2026, 13:51 UTC

--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (f3a545e1e930894c3320e68c2aee17dd2cec7f20ed03b2e882905056d0eee242) Package `cloudflare_module@99.0.1` is a dependency-confusion lure targeting the `cloudflare_*` namespace. `package.json` declares `scripts.postinstall: "node beacon.cjs"`, and `beacon.cjs` POSTs a JSON payload containing `os.hostname()`, the install path (`__dirname`), `process.cwd()`, and `process.version` to the hardcoded bare-IP endpoint `http://185.158.107.175:8787/_ah/dc` over plain HTTP. The package `main` (`index.js`) additionally calls `require('./beacon.cjs').fire()` at top level inside a try/catch, so the same host-identifier POST also fires whenever a downstream bundler or application `require()`s the package. The default export is a Proxy that returns a no-op for every property access, allowing bundlers that resolve an internal `cloudflare_module` name to complete the build cleanly so the beacon callback fires without producing errors. The package is published at version `99.0.1` with a generic "Compatibility shim." description, consistent with version-bumping to beat an internal registry during resolution. The README self-labels the package as an "authorized dependency-confusion test," but the beacon targets any machine that resolves the name — the installer never consents to the exfiltration — and the destination is an unattributed bare-IP collector, not infrastructure of the targeted namespace.

osv:MAL-2026-17768

cloudflare_module

Fixed versions: Not specified

Complete source record
{
  "id": "f0a41d06f8768df209df327eac02a3432040f2336e271dbdd3c51262feaacf24",
  "url": "https://osv.dev/vulnerability/MAL-2026-17768",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Malicious code in cloudflare_module (npm)",
    "summary": "--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (f3a545e1e930894c3320e68c2aee17dd2cec7f20ed03b2e882905056d0eee242) Package `cloudflare_module@99.0.1` is a dependency-confusion lure targeting the `cloudflare_*` namespace. `package.json` declares `scripts.postinstall: \"node beacon.cjs\"`, and `beacon.cjs` POSTs a JSON payload containing `os.hostname()`, the install path (`__dirname`), `process.cwd()`, and `process.version` to the hardcoded bare-IP endpoint `http://185.158.107.175:8787/_ah/dc` over plain HTTP. The package `main` (`index.js`) additionally calls `require('./beacon.cjs').fire()` at top level inside a try/catch, so the same host-identifier POST also fires whenever a downstream bundler or application `require()`s the package. The default export is a Proxy that returns a no-op for every property access, allowing bundlers that resolve an internal `cloudflare_module` name to complete the build cleanly so the beacon callback fires without producing errors. The package is published at version `99.0.1` with a generic \"Compatibility shim.\" description, consistent with version-bumping to beat an internal registry during resolution. The README self-labels the package as an \"authorized dependency-confusion test,\" but the beacon targets any machine that resolves the name — the installer never consents to the exfiltration — and the destination is an unattributed bare-IP collector, not infrastructure of the targeted namespace.",
    "evidence": "osv:MAL-2026-17768",
    "products": [
      {
        "name": {
          "value": "cloudflare_module",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "3.0.0",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "1.0.1",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "1.0.0",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "99.0.1",
            "evidence": "/affected/0/versions"
          }
        ]
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "MAL-2026-17768",
      "aliases": [
        "MAL-2026-17768"
      ],
      "affected": [
        {
          "package": {
            "name": "cloudflare_module",
            "purl": "pkg:npm/cloudflare_module",
            "ecosystem": "npm"
          },
          "versions": [
            "3.0.0",
            "1.0.1",
            "1.0.0",
            "99.0.1"
          ],
          "database_specific": {
            "cwes": [
              {
                "name": "Embedded Malicious Code",
                "cweId": "CWE-506",
                "description": "The product contains code that appears to be malicious in nature."
              },
              {
                "name": "Embedded Malicious Code",
                "cweId": "CWE-506",
                "description": "The product contains code that appears to be malicious in nature."
              },
              {
                "name": "Embedded Malicious Code",
                "cweId": "CWE-506",
                "description": "The product contains code that appears to be malicious in nature."
              },
              {
                "name": "Embedded Malicious Code",
                "cweId": "CWE-506",
                "description": "The product contains code that appears to be malicious in nature."
              }
            ],
            "source": "https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/cloudflare_module/MAL-2026-17768.json",
            "indicators": {
              "evidence_files": [
                {
                  "path": "beacon.cjs",
                  "tlsh": "813161eba8f0e048aaaa7098c54f0409b17af4078501af50f95d82915f6153c33fa8dc",
                  "sha256": "80779491720d41c53b5ed4cfbcbc70e9ebc144aaea61713d622eaa7a266c951b"
                },
                {
                  "path": "index.js",
                  "tlsh": "2201d0d7225661b10b5221a4978f43c4a3b99d74027941d0d84a9226365108c463b8ee",
                  "sha256": "a86a4da763bbb34c16f361abe7aab66d5df591b66867ac8160041f932159b08d"
                }
              ],
              "package_integrity": [
                {
                  "hashes": {
                    "sha1": "11cb1eee1a57a04cd5f4c574706c16f470039730",
                    "sha512_sri": "sha512-+THmk0xaejcBalXPdQdXXIEXc4+a0hzFXshBDHPTkw72QTasmBzosaRPQEM9L4/cjIgyIwZcVjBFdOhEzEf0OQ=="
                  },
                  "filename": "cloudflare_module-3.0.0.tgz"
                }
              ]
            }
          }
        }
      ],
      "modified": "2026-10-11T17:30:47.987498910Z",
      "provider": "osv",
      "references": [
        "https://www.npmjs.com/package/cloudflare_module/v/3.0.0",
        "https://www.npmjs.com/package/cloudflare_module/v/1.0.1",
        "https://www.npmjs.com/package/cloudflare_module/v/1.0.0",
        "https://www.npmjs.com/package/cloudflare_module/v/99.0.1"
      ],
      "provider_metadata": {
        "malicious-packages-origins": [
          {
            "id": "IN-MAL-2026-021410",
            "sha256": "0aeadec01dbc6c39254740f8f4557d53f8d7ab94136a4695525a70cd3f80d95d",
            "source": "amazon-inspector",
            "versions": [
              "3.0.0"
            ],
            "import_time": "2026-10-11T14:18:03.313936647Z",
            "modified_time": "2026-10-11T13:55:13Z"
          },
          {
            "id": "IN-MAL-2026-021387",
            "sha256": "14316e66f8d8eeb53b5fd4850537ac5398947feaf88f3837e39bfa587f60a0fb",
            "source": "amazon-inspector",
            "versions": [
              "1.0.1"
            ],
            "import_time": "2026-10-11T14:18:01.469925982Z",
            "modified_time": "2026-10-11T13:51:50Z"
          },
          {
            "id": "IN-MAL-2026-021439",
            "sha256": "351579deaec7e5f856dfe103fbc8b7979b0f746e8e058bc3c1d35a00556bedf0",
            "source": "amazon-inspector",
            "versions": [
              "1.0.0"
            ],
            "import_time": "2026-10-11T14:18:06.102897694Z",
            "modified_time": "2026-10-11T13:59:51Z"
          },
          {
            "id": "IN-MAL-2026-021448",
            "sha256": "f3a545e1e930894c3320e68c2aee17dd2cec7f20ed03b2e882905056d0eee242",
            "source": "amazon-inspector",
            "versions": [
              "99.0.1"
            ],
            "import_time": "2026-10-11T17:15:51.556858866Z",
            "modified_time": "2026-10-11T16:53:13Z"
          }
        ]
      }
    },
    "related_cves": [],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 296386,
  "published_at": "2026-10-11T13:51:50+00:00"
}