🛡️ MAL-2026-10937 — twilio-serverless

⚪ Unknown ✅ No Known Exploit OSV
N/A
CVSS Score
0 Low4 Medium7 High9 Critical10

Description

Malicious code in twilio-serverless (npm)

The twilio-serverless package is one of four byte-identical dependency-confusion squats of Twilio's npm namespace published by user 'yuva2210' (maintainer email [email protected]), all at the sentinel version 99.99.99 chosen to outrank any internal/private version and win resolution against a private registry. The npm description is empty and the package provides no legitimate functionality; the name mimics a plausible internal Twilio package so that a misconfigured resolver installs this public lookalike instead of the intended private dependency.

The package declares a postinstall hook ("node index.js") that executes automatically on a bare npm install with no consent gate. The bundled index.js payload (1,185 bytes, sha256 prefix c324d579006df4c5, identical across all four packages) performs environment reconnaissance: it collects the npm package name and version, os.hostname(), the OS username (os.userInfo().username), the home directory path (os.homedir()), the current working directory, os.platform(), os.arch(), NODE_ENV, and the CI flag. It serializes this to JSON and exfiltrates it via HTTPS POST to a hardcoded anonymous dead-drop at https://webhook.site/42ce0f0e-a0a0-41b5-b157-1c0f918e064f (the same collector UUID across all four packages). On request error the payload falls back to a redundant out-of-band callback to 2b22ede784d5.oast.fun over HTTP, ensuring the beacon lands even where HTTPS egress to webhook.site is blocked; errors on that path are swallowed.

The collected cwd/homedir/username/CI/NODE_ENV set is reconnaissance targeting internal build environments and their filesystem layout. All four packages (twilio-serverless, twilio-assets, twilio-deploy, twilio-internal) were published by the same maintainer with an identical payload and the same collector endpoint.

Source: amazon-inspector

The package's postinstall hook executes index.js, which collects installer host identifiers (os.hostname(), os.userInfo().username, os.homedir(), process.cwd(), os.platform(), os.arch(), NODE_ENV, CI, package name/version) and POSTs them as JSON to a hardcoded webhook.site endpoint (webhook.site/42ce0f0e-a0a0-41b5-b157-1c0f918e064f), with a fallback GET to an interactsh subdomain (2b22ede784d5.oast.fun) for out-of-band DNS callback. The package name resembles Twilio's official serverless tooling and is published at version 99.99.99 with an empty description and no library functionality beyond the beacon — the shape of a typosquat / dependency-confusion probe that fingerprints internal build systems resolving to the public registry.

Affected software

MAL-2026-10937 is recorded against 1 package.

  • twilio-serverless

Timeline and source

Published on 20 July 2026 and last revised on 5 August 2026. No public exploit is currently recorded for this entry. Record sourced from OSV.

References

www.npmjs.com (Web)
www.npmjs.com (Package)
www.npmjs.com (Package)

Details

Severity Unknown
CVSS Score N/A
CVSS Vector N/A
CWE N/A
Public Exploit ✅ No
Source OSV
Published 2026-07-20
Updated 2026-08-12
Modified 2026-08-05
Fix URL N/A

Affected Packages

Software From version Fixed in
twilio-serverless

Free Vulnerability Check

Is your site affected by MAL-2026-10937?

BotEraser helps you identify potentially vulnerable plugins and themes by checking your installation against MAL-2026-10937 and other known CVE records.

Scan My Site Free →

No credit card required  ·  Results in minutes

ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.