mal-2026-18331
osv_npmbirch-css-utils ships index.mjs, byte-identical to the noelc-css-blender payload, and an obfuscated build-cache.mjs that reassembles and exec()s encoded chunks. It is a new name for the noelc-css-blender (MAL-2026-18249) campaign; the file hashes below match that record's evidence. The package presents itself as an ordinary utility, so the code runs on import or install without the user knowing. --- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (22815f068ecaf85065c389553848537859f9e37623285a9e71b3e81ee9e9b685) Package advertises itself as a zero-runtime CSS theme kit and instructs installation as a Tailwind name-overlay (`npm install -D tailwindcss@npm:birch-css-utils`), but the published tarball contains ~760KB of heavily obfuscated JS (`build-cache.mjs`, `cache-sweep.mjs`, `cache-warm.mjs`) hidden behind a `tailwindcss-theme-kit build cache manifest` cover comment. The declared `./tokens` export (`tokens.mjs`) top-level-imports `cache-warm.mjs`, so consumers that import `birch-css-utils/tokens` execute the obfuscated code on module load. The bundles use a hex-named XOR-encoded string array; decoding with key 0xED reveals AWS Sigv4 signing primitives (`AWS4-HMAC-SHA256#Credential=`), an AWS Access Key ID regex (`^(?:AKIA|ASIA|ABIA|ACCA)[A-Z0-9]{16}$`), and git identity env var names (`GIT_AUTHOR_NAME`, `GIT_AUTHOR_DATE`) embedded in the string array. A CSS custom-properties package has no legitimate use for AWS v4 signing material or an AWS key-ID matcher. The combination of Tailwind name-overlay install instructions, a README denying runtime JS, obfuscated executable bundles reachable from a public export, and decoded AWS credential-harvesting primitives constitutes a Tailwind imposter that steals AWS credentials from importing consumers. ## Source: ghsa-malware (55ac470ab3260611fd8b69f59b1d1faae26e80e1c7e9c243cb0b65db56d5c231) Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.
- Published
- unknown
- Last Modified
- unknown
CVSS details not available.
No product information available.
- https://github.com/advisories/GHSA-p597-2ggw-c82r
- https://www.npmjs.com/package/birch-css-utils/v/1.3.0
- https://www.npmjs.com/package/birch-css-utils/v/1.2.2
- https://www.npmjs.com/package/birch-css-utils/v/1.1.0
- https://www.npmjs.com/package/birch-css-utils/v/1.0.0
- https://www.npmjs.com/package/birch-css-utils/v/0.0.0-stage
- https://www.npmjs.com/package/birch-css-utils
- https://osv.dev/vulnerability/MAL-2026-18249
No linked vulnerabilities found.
{
"affected": [
{
"database_specific": {
"cwes": [
{
"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.",
"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"
}
],
"indicators": {
"evidence_files": [
{
"path": "build-cache.mjs",
"sha256": "ba1f1364127937f3e1e50a9ed3d301357b57eae8631e30f06a5c82e9638bc22c",
"tlsh": "8804320323252554b207f8a37753e8e5fb3f2464218a9c99bd0dab8c93d6439ceed5b1"
},
{
"path": "README.md",
"sha256": "2c1fcb5f8f16cb2c38d746bece335143fbd98f141317fe3e690676a484d18f8c",
"tlsh": "6cc1d527a7914779038301e6a3cea1b1c77f919da3362d63e58e81f5030e21ae6bf745"
}
],
"package_integrity": [
{
"filename": "birch-css-utils-0.0.0-stage.tgz",
"hashes": {
"sha1": "7aaad9c8bf21d0108319580244eb08cc9d65c96b",
"sha512_sri": "sha512-N3obcXOCzJjJzXibVMVcU09GntHrOlqHdiQbvFR8lOwUQSp1VR06enDFv7CjEW+H9uBxP1Xf40b36LkZP5mLLQ=="
}
}
]
},
"source": "https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/birch-css-utils/MAL-2026-18331.json"
},
"package": {
"ecosystem": "npm",
"name": "birch-css-utils",
"purl": "pkg:npm/birch-css-utils"
},
"ranges": [
{
"events": [
{
"introduced": "0"
}
],
"type": "SEMVER"
}
],
"versions": [
"1.3.0",
"1.2.2",
"1.1.0",
"1.0.0",
"0.0.0-stage"
]
}
],
"aliases": [
"GHSA-p597-2ggw-c82r"
],
"credits": [
{
"contact": [
"inspector-research@amazon.com"
],
"name": "Amazon Inspector",
"type": "FINDER"
},
{
"contact": [
"https://cyberxyz.io"
],
"name": "CyberXYZ",
"type": "FINDER"
}
],
"database_specific": {
"iocs": {
"domains": [],
"files": [
{
"digests": {
"sha256": "e5b7ff8f65cd07d2bc7e0c301dfadd06d871dbdffa9e834c9a18229a897dd4c6"
},
"paths": [
"build-cache.mjs"
]
},
{
"digests": {
"sha256": "d7f2e6126f30199d791c30c52560c06205640a26ea17ceb53a06231be653d976"
},
"paths": [
"index.mjs"
]
}
],
"ips": [],
"urls": []
},
"malicious-packages-origins": [
{
"id": "GHSA-p597-2ggw-c82r",
"import_time": "2026-10-26T16:31:42.742058513Z",
"modified_time": "2026-10-26T16:17:58Z",
"ranges": [
{
"events": [
{
"introduced": "0"
}
],
"type": "SEMVER"
}
],
"sha256": "55ac470ab3260611fd8b69f59b1d1faae26e80e1c7e9c243cb0b65db56d5c231",
"source": "ghsa-malware"
},
{
"id": "IN-MAL-2026-021809",
"import_time": "2026-10-26T18:56:19.991036228Z",
"modified_time": "2026-10-26T18:36:15Z",
"sha256": "22815f068ecaf85065c389553848537859f9e37623285a9e71b3e81ee9e9b685",
"source": "amazon-inspector",
"versions": [
"1.3.0"
]
},
{
"id": "IN-MAL-2026-021808",
"import_time": "2026-10-26T18:56:19.920951102Z",
"modified_time": "2026-10-26T18:36:07Z",
"sha256": "a5a07dab2c2f60304b678f04c55787fa5ab48282ce1ed46fb36f8dcdb8a713dc",
"source": "amazon-inspector",
"versions": [
"1.2.2"
]
},
{
"id": "IN-MAL-2026-021892",
"import_time": "2026-10-29T13:37:15.344958486Z",
"modified_time": "2026-10-29T13:21:36Z",
"sha256": "0a40b346442e545668dd6174f38c0d06d164e7ad907eb6b09150a53918a1c094",
"source": "amazon-inspector",
"versions": [
"1.1.0"
]
},
{
"id": "IN-MAL-2026-022143",
"import_time": "2026-10-29T14:14:29.595184343Z",
"modified_time": "2026-10-29T13:54:26Z",
"sha256": "dff85731c5dd2b3e36beb8c067cf5dd19aa2ff5078a85722d0f6f3cf74c17138",
"source": "amazon-inspector",
"versions": [
"1.0.0"
]
},
{
"id": "IN-MAL-2026-022301",
"import_time": "2026-10-29T14:37:02.799439508Z",
"modified_time": "2026-10-29T14:14:56Z",
"sha256": "928cbc7d8a8c496b549acf5687fe7b10d8df10390c29012d118db4e7a5ebb864",
"source": "amazon-inspector",
"versions": [
"0.0.0-stage"
]
}
]
},
"details": "birch-css-utils ships index.mjs, byte-identical to the noelc-css-blender payload, and an obfuscated build-cache.mjs that reassembles and exec()s encoded chunks. It is a new name for the noelc-css-blender (MAL-2026-18249) campaign; the file hashes below match that record's evidence. The package presents itself as an ordinary utility, so the code runs on import or install without the user knowing.\n\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (22815f068ecaf85065c389553848537859f9e37623285a9e71b3e81ee9e9b685)\nPackage advertises itself as a zero-runtime CSS theme kit and instructs installation as a Tailwind name-overlay (`npm install -D tailwindcss@npm:birch-css-utils`), but the published tarball contains ~760KB of heavily obfuscated JS (`build-cache.mjs`, `cache-sweep.mjs`, `cache-warm.mjs`) hidden behind a `tailwindcss-theme-kit build cache manifest` cover comment. The declared `./tokens` export (`tokens.mjs`) top-level-imports `cache-warm.mjs`, so consumers that import `birch-css-utils/tokens` execute the obfuscated code on module load. The bundles use a hex-named XOR-encoded string array; decoding with key 0xED reveals AWS Sigv4 signing primitives (`AWS4-HMAC-SHA256#Credential=`), an AWS Access Key ID regex (`^(?:AKIA|ASIA|ABIA|ACCA)[A-Z0-9]{16}$`), and git identity env var names (`GIT_AUTHOR_NAME`, `GIT_AUTHOR_DATE`) embedded in the string array. A CSS custom-properties package has no legitimate use for AWS v4 signing material or an AWS key-ID matcher. The combination of Tailwind name-overlay install instructions, a README denying runtime JS, obfuscated executable bundles reachable from a public export, and decoded AWS credential-harvesting primitives constitutes a Tailwind imposter that steals AWS credentials from importing consumers.\n\n## Source: ghsa-malware (55ac470ab3260611fd8b69f59b1d1faae26e80e1c7e9c243cb0b65db56d5c231)\nAny computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.\n",
"id": "MAL-2026-18331",
"modified": "2026-11-05T05:15:04.181332933Z",
"published": "2026-10-26T00:00:00Z",
"references": [
{
"type": "ADVISORY",
"url": "https://github.com/advisories/GHSA-p597-2ggw-c82r"
},
{
"type": "PACKAGE",
"url": "https://www.npmjs.com/package/birch-css-utils/v/1.3.0"
},
{
"type": "PACKAGE",
"url": "https://www.npmjs.com/package/birch-css-utils/v/1.2.2"
},
{
"type": "PACKAGE",
"url": "https://www.npmjs.com/package/birch-css-utils/v/1.1.0"
},
{
"type": "PACKAGE",
"url": "https://www.npmjs.com/package/birch-css-utils/v/1.0.0"
},
{
"type": "PACKAGE",
"url": "https://www.npmjs.com/package/birch-css-utils/v/0.0.0-stage"
},
{
"type": "PACKAGE",
"url": "https://www.npmjs.com/package/birch-css-utils"
},
{
"type": "WEB",
"url": "https://osv.dev/vulnerability/MAL-2026-18249"
}
],
"schema_version": "1.9.2",
"summary": "Malicious code in birch-css-utils (npm)"
}