The @marketfront/infopopup package is part of a 25-package malicious campaign batch-published to the @marketfront npm scope by npm user 'marketfront' (marketfront@tutamail.com) within a roughly 3-minute window on 2026-07-01. All packages in the campaign were published at version 7.0.0 and use e-commerce/marketing frontend component names as cover.
The package declares a postinstall hook (node scripts/postinstall.js) that executes heavily obfuscated (obfuscator.io-style) code automatically at npm install time. Static analysis of the decoded payload revealed a credential harvester that dynamically requires fs, os, http, https, zlib, path and dns, then reads approximately 20 sensitive credential files including ~/.ssh, ~/.aws/credentials, ~/.kube/config, ~/.docker/config.json, ~/.npmrc, ~/.netrc, ~/.pgpass, ~/.git-credentials, ~/.env and ~/.bash_history. Collected data is exfiltrated via a gzip-compressed HTTPS POST with a custom X-Secret header to the path /api/v1/events, alongside a DNS resolver beacon. The command-and-control host is concealed behind an additional RC4+XOR encryption layer around an embedded configuration blob and was not statically resolved.
The decoded behavioral payload (module requires, credential-file target list, exfiltration headers and endpoint) is byte-for-byte identical across sampled packages in the campaign. The campaign shares tooling and infrastructure patterns (obfuscated postinstall credential harvester, X-Secret header, /api/v1/events exfiltration path, RC4-concealed C2) with the earlier @emcd-vue campaign, indicating the same actor rotating scopes and disposable maintainer emails.
-= Per source details. Do not edit below this line.=-
On npm install, the declared postinstall script (scripts/postinstall.js) runs a heavily obfuscated (obfuscator.io-style, RC4/XOR string-array decoded) payload that harvests installer-owned secrets and identity: reads ~/.aws/credentials, ~/.ssh/known_hosts, ~/.npmrc, ~/.docker/config.json, ~/.gitconfig, and shell history files; bulk-serialises process.env; and collects hostname, user, network interfaces, CPU/OS. The collected data is encrypted and transmitted over two exfiltration channels: an HTTPS POST to a runtime-decoded remote endpoint, and a DNS-tunnel channel built via new dns.Resolver().resolve4(...) that splits the encrypted body into ≤50-character labels queried under an attacker-controlled parent domain to survive HTTPS egress filtering. Package metadata advertises a fabricated corporate identity (*.marketfront.io hosts that do not exist; README references an internal-corp.io auth endpoint) as a dependency-confusion cover story for what is otherwise a credential-stealer. Declared purpose ("internal authentication client") does not require reading AWS/SSH/npm/Docker/Git credential files or DNS-tunnelling encrypted blobs.
{
"malicious-packages-origins": [
{
"versions": [
"7.0.0"
],
"sha256": "206e60b923200a66a3a6bacec3f6ec998191bd648eb4bbc61b1cee008d2f3eec",
"modified_time": "2026-07-06T03:21:46Z",
"source": "amazon-inspector",
"id": "IN-MAL-2026-008036",
"import_time": "2026-07-06T04:58:11.161420198Z"
}
]
}{
"package_integrity": [
{
"filename": "infopopup-7.0.0.tgz",
"hashes": {
"sha512_sri": "sha512-6sYgpOmnHI/RMEST9h0izfvaSvWMoDgovkgpc3ZJ35Nq2UPLSnqLsdDvk1REzfwN/lZoAKooeODAo/6QPHz8QA==",
"sha1": "ae7372091069eaa8f80494988cda7011849b39f9"
}
}
],
"evidence_files": [
{
"sha256": "1ccefa95a7c472ffeb9b200b76e615212fe3be34755dfa06a5af3d42c09663f2",
"path": "scripts/postinstall.js",
"tlsh": "e4f3da892744d443d95fdfbf7e61e6f4e01a7cc6c3c5284af714b82cf89852a9a48b81"
},
{
"sha256": "68eefadeffa562415df9ff8917f0206047cb82a49312232ff28b647141156960",
"path": "package.json",
"tlsh": "5a11c935c5325c3362da25a6ad711942b9265a3f1886fc1823d2805c4b8d56a11fd67e"
}
]
}
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@marketfront/infopopup/MAL-2026-6783.json"
[
{
"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"
}
]