mal-2026-13658
Vulnerability from ossf_malicious_packages
-= Per source details. Do not edit below this line.=-
Source: amazon-inspector (7c602d22e5a0f1d7cee18a98a7ce0b67e2c8440f7ff95330cb6c33d169f2e629)
On require() of the package, index.js loads _support.js and lib/telemetry.js, both of which reconstruct the identifier 'child_process' and destination hostnames from split string fragments (e.g. ["oob-worker.cf102","-baf.work","ers.d","ev"].join("")) to evade static analysis. The code selects an OS-specific path, downloads a binary from one of four Cloudflare Workers hosts (oob-worker.cf99-9b3.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf102-baf.workers.dev, oob-worker.cf103-070.workers.dev), writes it to /var/tmp or %TEMP% under a hidden/dotnet_diag-style name, chmod 0755 on POSIX, and spawns it detached via /bin/sh -c or cmd /c start with no hash or signature verification. When HTTPS mirrors fail, a DNS-TXT covert channel queries c. for a chunk count and iterates 0...N. under sdk.dl.wel1.ru, ext.dl.wel1.ru, pkg.dl.wel1.ru, and net.dl.wel1.ru, concatenates the TXT chunks, base64-decodes them into a binary, writes it to disk and spawns it. lib/telemetry.js (the main entry) contains a parallel dropper path with the same fetch/base64-decode/chmod/spawn shape. Cover-story comments ("Initialize runtime analytics", "Detached process to avoid blocking npm install") and DISABLE_TELEMETRY/DO_NOT_TRACK env checks are wrapped around the dropper to masquerade as legitimate telemetry.
- CWE-506 - The product contains code that appears to be malicious in nature.
{
"affected": [
{
"database_specific": {
"cwes": [
{
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature.",
"name": "Embedded Malicious Code"
}
],
"indicators": {
"evidence_files": [
{
"path": "_support.js",
"sha256": "a4ac309f785f62a807e54ec62cc874bcdb7561fead288080aeda9323f2c1406e",
"tlsh": "85a1950a16fa30180793e1d8851f5816719af99333c0d9c4fb4c66985fa617983f39fd"
},
{
"path": "lib/telemetry.js",
"sha256": "797ba9a2585ddde48e0692dc4929192811dba8a69bd4245e4b01bda5f1f7e3b1",
"tlsh": "4373304966fb10214263b0685fab40437635c4072a4eed5dba9c43ec9f8db3896f1fb9"
}
],
"package_integrity": [
{
"filename": "sme-rko-finance-front-payments-currency-payment-actions-operations-repeat-models-35.8.1.tgz",
"hashes": {
"sha1": "ab66955c33c29e84539a01a22b9a4dbc6826ad19",
"sha512_sri": "sha512-STerebb767D+tZcS/O2UbFBiVB8IzOHJif/YxO3Zjw6cmo+5L0Pf4AjMXjYTHbaynG0Y3+x9RL3caSS2+1YInA=="
}
}
]
}
},
"package": {
"ecosystem": "npm",
"name": "sme-rko-finance-front-payments-currency-payment-actions-operations-repeat-models"
},
"versions": [
"35.8.1"
]
}
],
"credits": [
{
"contact": [
"inspector-research@amazon.com"
],
"name": "Amazon Inspector",
"type": "FINDER"
}
],
"database_specific": {
"malicious-packages-origins": [
{
"id": "IN-MAL-2026-017148",
"import_time": "2026-08-08T00:53:06.947161264Z",
"modified_time": "2026-08-08T00:44:47Z",
"sha256": "7c602d22e5a0f1d7cee18a98a7ce0b67e2c8440f7ff95330cb6c33d169f2e629",
"source": "amazon-inspector",
"versions": [
"35.8.1"
]
}
]
},
"details": "\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (7c602d22e5a0f1d7cee18a98a7ce0b67e2c8440f7ff95330cb6c33d169f2e629)\nOn require() of the package, index.js loads _support.js and lib/telemetry.js, both of which reconstruct the identifier \u0027child_process\u0027 and destination hostnames from split string fragments (e.g. [\"oob-worker.cf102\",\"-baf.work\",\"ers.d\",\"ev\"].join(\"\")) to evade static analysis. The code selects an OS-specific path, downloads a binary from one of four Cloudflare Workers hosts (oob-worker.cf99-9b3.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf102-baf.workers.dev, oob-worker.cf103-070.workers.dev), writes it to /var/tmp or %TEMP% under a hidden/dotnet_diag-style name, chmod 0755 on POSIX, and spawns it detached via /bin/sh -c or cmd /c start with no hash or signature verification. When HTTPS mirrors fail, a DNS-TXT covert channel queries c.\u003cdomain\u003e for a chunk count and iterates 0.\u003cdomain\u003e..N.\u003cdomain\u003e under sdk.dl.wel1.ru, ext.dl.wel1.ru, pkg.dl.wel1.ru, and net.dl.wel1.ru, concatenates the TXT chunks, base64-decodes them into a binary, writes it to disk and spawns it. lib/telemetry.js (the main entry) contains a parallel dropper path with the same fetch/base64-decode/chmod/spawn shape. Cover-story comments (\"Initialize runtime analytics\", \"Detached process to avoid blocking npm install\") and DISABLE_TELEMETRY/DO_NOT_TRACK env checks are wrapped around the dropper to masquerade as legitimate telemetry.\n",
"id": "MAL-2026-13658",
"modified": "2026-08-08T00:44:47Z",
"published": "2026-08-08T00:44:47Z",
"references": [
{
"type": "PACKAGE",
"url": "https://www.npmjs.com/package/sme-rko-finance-front-payments-currency-payment-actions-operations-repeat-models/v/35.8.1"
}
],
"schema_version": "1.7.4",
"summary": "Malicious code in sme-rko-finance-front-payments-currency-payment-actions-operations-repeat-models (npm)"
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.