Malicious code in simplewave (npm)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (d984cf27dec602e96199a4361b485f0a7c79e2134977a355d42ddb46edd606d0) simplewave@0.0.2 declares a postinstall script in package.json that runs an inline Node command performing an HTTP GET to a subdomain of oast.fun with the installer's os.hostname() embedded as the leftmost DNS label. oast.fun is the public Interactsh out-of-band interaction server, used to receive exfiltrated data via DNS/HTTP callbacks. The beacon fires unconditionally on npm install, with no caller consent or configuration. The shipped index.js is a trivial stub providing no advertised functionality, so the manifest-level beacon is the package's entire effect. The host identifier of every machine that installs the package is delivered to a third-party OOB collector controlled by whoever provisioned the oast.fun subdomain token.
- Products
- simplewave
- Affected versions
- 0.0.2
- Fixed versions
- Not specified
- CVEs
- Not specified
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 17:45 UTC · Revision 1
Source evidence
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (d984cf27dec602e96199a4361b485f0a7c79e2134977a355d42ddb46edd606d0) simplewave@0.0.2 declares a postinstall script in package.json that runs an inline Node command performing an HTTP GET to a subdomain of oast.fun with the installer's os.hostname() embedded as the leftmost DNS label. oast.fun is the public Interactsh out-of-band interaction server, used to receive exfiltrated data via DNS/HTTP callbacks. The beacon fires unconditionally on npm install, with no caller consent or configuration. The shipped index.js is a trivial stub providing no advertised functionality, so the manifest-level beacon is the package's entire effect. The host identifier of every machine that installs the package is delivered to a third-party OOB collector controlled by whoever provisioned the oast.fun subdomain token.
osv:MAL-2026-18187
simplewave
Fixed versions: Not specified
Complete source record
{
"id": "d8db349ee20e00cf6cc8b1b819069bb70ff1e2e58434d137e992d14b038d283e",
"url": "https://osv.dev/vulnerability/MAL-2026-18187",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Malicious code in simplewave (npm)",
"summary": "--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (d984cf27dec602e96199a4361b485f0a7c79e2134977a355d42ddb46edd606d0) simplewave@0.0.2 declares a postinstall script in package.json that runs an inline Node command performing an HTTP GET to a subdomain of oast.fun with the installer's os.hostname() embedded as the leftmost DNS label. oast.fun is the public Interactsh out-of-band interaction server, used to receive exfiltrated data via DNS/HTTP callbacks. The beacon fires unconditionally on npm install, with no caller consent or configuration. The shipped index.js is a trivial stub providing no advertised functionality, so the manifest-level beacon is the package's entire effect. The host identifier of every machine that installs the package is delivered to a third-party OOB collector controlled by whoever provisioned the oast.fun subdomain token.",
"evidence": "osv:MAL-2026-18187",
"products": [
{
"name": {
"value": "simplewave",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "0.0.2",
"evidence": "/affected/0/versions"
}
]
}
],
"severity": "unknown",
"structured": {
"id": "MAL-2026-18187",
"aliases": [
"MAL-2026-18187"
],
"affected": [
{
"package": {
"name": "simplewave",
"purl": "pkg:npm/simplewave",
"ecosystem": "npm"
},
"versions": [
"0.0.2"
],
"database_specific": {
"cwes": [
{
"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/simplewave/MAL-2026-18187.json",
"indicators": {
"evidence_files": [
{
"path": "package.json",
"tlsh": "4ce02df80f80db3b60c40ee406a78026f323c80200042a00e3fb11aa02d82f20c3e48c",
"sha256": "e8471246cd57d1305b12c3523851f05178e56bbd2d2ab43c181179308b66d643"
}
],
"package_integrity": [
{
"hashes": {
"sha1": "5a97802b03f92a9f0fb4dcce29e11adbd742c174",
"sha512_sri": "sha512-evpJRFgOF3WjrXTV1n+6Ad0pKHFnp+kE1BBZErY7voT58oBBhMEtpksG8wi1Doy9uIKzTT1bNcbcHoV+gHACoA=="
},
"filename": "simplewave-0.0.2.tgz"
}
]
}
}
}
],
"modified": "2026-10-22T06:45:05.827762247Z",
"provider": "osv",
"references": [
"https://www.npmjs.com/package/simplewave/v/0.0.2"
],
"provider_metadata": {
"malicious-packages-origins": [
{
"id": "IN-MAL-2026-021566",
"sha256": "d984cf27dec602e96199a4361b485f0a7c79e2134977a355d42ddb46edd606d0",
"source": "amazon-inspector",
"versions": [
"0.0.2"
],
"import_time": "2026-10-22T06:30:23.52812547Z",
"modified_time": "2026-10-22T06:10:14Z"
}
]
}
},
"related_cves": [],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 404578,
"published_at": "2026-10-22T06:10:14+00:00"
}