{"id":"MAL-2026-16192","revision":null,"records":[{"revision":"f5cf6234ab9f46b3b56bcaa79e4976a9","observedAt":"2026-10-24T13:17:17.793+00:00","statement":{"source":"osv","id":"MAL-2026-16192","aliases":[],"title":"Malicious code in strapi-plugin-weccresh-meeb (npm)","description":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (4b4a6e3de6177f265d44cf7317b020dbaed43907a0ed75b05ae0fe4eebaab469)\nThe package's postinstall.js (also declared as main) executes automatically on npm install and performs bulk host reconnaissance and credential theft against the installer. It captures os.hostname() and os.userInfo(), serializes the full process.env, reads Strapi configuration under /app/config/* and /app/.env*, recursively walks the filesystem from '/' to collect files matching.env* and private-key/certificate patterns (pem, key, crt, cert, p12, pfx, jks, id_rsa, wallet), reads Kubernetes service-account tokens under /var/run/secrets/kubernetes.io/serviceaccount/token and /run/secrets, probes /var/run/docker.sock, reads /etc/hosts and /etc/resolv.conf, and queries Redis INFO/DBSIZE and database table counts via knex. The collected data is gzip-compressed, base64-encoded, split into 3500-byte chunks, and POSTed with staggered timeouts to the hardcoded Burp Collaborator host q0r2hkrfha7y7zhz6nxtqqifv61xppde.oastify.com on port 80. The package name mimics a Strapi plugin but ships no plugin code; the postinstall exfiltration is the only behavior.\n","state":0,"publishedAt":"2026-09-15T15:55:27+00:00","modifiedAt":"2026-09-15T16:31:10.2097805+00:00","affected":[{"ecosystem":"npm","name":"strapi-plugin-weccresh-meeb","ranges":[],"versions":["3.6.8"],"rawVersionEvidence":null}],"metrics":[],"references":["https://www.npmjs.com/package/strapi-plugin-weccresh-meeb/v/3.6.8"],"sourceUrl":"https://osv.dev/vulnerability/MAL-2026-16192","license":"OSV · upstream source license applies","key":"osv:MAL-2026-16192","identifiers":["MAL-2026-16192"]},"retained":false,"historicalAffected":[]}],"coverage":[{"source":"cisa-kev:global","scope":"Complete CISA KEV catalog; all vendors. Missing entries do not establish absence of exploitation.","generation":"2026-11-13T13:56:59.5128815+00:00","complete":true,"records":1779,"lastAttemptAt":"2026-11-13T13:56:59.5128815+00:00","lastSuccessAt":"2026-11-13T13:56:59.664403+00:00","error":null,"lastVerifiedAt":"2026-11-13T13:56:59.6644038+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"cve-program","scope":"Official CVE Program baseline and cumulative hourly delta; all vendors, published and rejected records","generation":"cve-d8fa82e95fdb59244e2f635e667ba17f0796ca0a4f1f4bb8cc31febcd660b76c-171aaa8da54405fecd349043d7c6bca097805444deecfbdeb701916f8478ccac","complete":true,"records":425370,"lastAttemptAt":"2026-11-13T13:56:58.8285598+00:00","lastSuccessAt":"2026-11-13T13:56:58.73334+00:00","error":null,"lastVerifiedAt":"2026-11-13T13:56:58.8285598+00:00","snapshotPublishedAt":"2026-11-13T13:23:31+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"euvd","scope":"Rolling EUVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global EUVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-a75113f43b074d76b75fe921a3c1282c","complete":false,"records":13795,"lastAttemptAt":"2026-11-13T14:06:41.7937416+00:00","lastSuccessAt":"2026-11-13T14:06:40.774+00:00","error":"489 identifier lookups failed; latest failures include AccessDenied (HTTP 403). Other identifiers were checked independently.","lastVerifiedAt":"2026-11-13T14:06:40.774+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":12974,"expectedIdentifiers":13848,"failedIdentifiers":489},{"source":"first-epss:nuget","scope":"FIRST EPSS for explicit CVE aliases in the collected public NuGet archive. Not a global EPSS backfill.","generation":"2026-11-13T13:56:59.5128815+00:00","complete":true,"records":1123,"lastAttemptAt":"2026-11-13T13:56:59.5128815+00:00","lastSuccessAt":"2026-11-13T13:56:59.6652853+00:00","error":null,"lastVerifiedAt":"2026-11-13T13:56:59.6652855+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"nvd","scope":"Rolling NVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global NVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-1e24e6ff187942e0b34d6a0da935f8a7","complete":true,"records":13795,"lastAttemptAt":"2026-11-13T13:57:10.7854563+00:00","lastSuccessAt":"2026-11-13T13:57:10.781+00:00","error":null,"lastVerifiedAt":"2026-11-13T13:57:10.781+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13848,"expectedIdentifiers":13848,"failedIdentifiers":0},{"source":"osv:Go","scope":"Complete OSV Go ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"go-93e76d404e1aeb6a7e8902f5ffa06211fc86dea3b1958e297abb2668aa5e6e8c","complete":true,"records":9952,"lastAttemptAt":"2026-11-13T13:56:59.4676253+00:00","lastSuccessAt":"2026-11-12T23:19:15.5239119+00:00","error":null,"lastVerifiedAt":"2026-11-13T13:56:59.4676253+00:00","snapshotPublishedAt":"2026-11-12T23:03:02+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:NuGet","scope":"Complete OSV NuGet ecosystem archive, including GitHub Advisory Database records; NuGet version matching only","generation":"nuget-4d60731753a2f72e455d1086e7203d0ef10843936dcc1cf2b45135e2caa204b0","complete":true,"records":2012,"lastAttemptAt":"2026-11-13T13:56:58.889439+00:00","lastSuccessAt":"2026-11-12T18:16:50.7862525+00:00","error":null,"lastVerifiedAt":"2026-11-13T13:56:58.889439+00:00","snapshotPublishedAt":"2026-11-12T17:48:11+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:crates.io","scope":"Complete OSV crates.io ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"crates.io-ab4ad5f59937c0596645e186474e26d2fffbbe6ecc09983ad71f9a0d88918405","complete":true,"records":3129,"lastAttemptAt":"2026-11-13T13:56:59.4799748+00:00","lastSuccessAt":"2026-11-13T12:59:11.7864534+00:00","error":null,"lastVerifiedAt":"2026-11-13T13:56:59.4799748+00:00","snapshotPublishedAt":"2026-11-13T12:47:49+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:npm","scope":"Complete OSV npm ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"npm-7d9437160a3664a4238cadabbe17e78db87dde648ca4c671841d50155dfa5d6c","complete":true,"records":231770,"lastAttemptAt":"2026-11-13T13:56:59.3642542+00:00","lastSuccessAt":"2026-11-13T12:59:06.1905777+00:00","error":null,"lastVerifiedAt":"2026-11-13T13:56:59.3642542+00:00","snapshotPublishedAt":"2026-11-13T12:33:13+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null}]}