TL;DR: In 2025, 3,180 confirmed malicious packages were reported, with the heaviest activity in October, November, and December and a clear shift toward automated multi-version publishing, enterprise tool impersonation, and CI/CD-targeted supply-chain abuse, according to Xygeni. The pattern shows that registry trust, version history, and basic scanning are no longer enough to contain package-led compromise.
At a glance
What this is: Xygeni’s 2025 recap shows malicious package activity became persistent, automated, and increasingly aimed at developer and CI/CD environments.
Why it matters: For IAM, NHI, and platform security teams, the report reinforces that package ecosystems now function as a credential and workflow attack surface, not just a software distribution channel.
By the numbers:
- Xygeni confirmed 3,180 malicious packages across 2025, showing sustained growth in open-source malware activity.
- The report says 156% one-year growth in malicious open-source packages left teams exposed to faster and more industrialised abuse.
👉 Read Xygeni’s full 2025 recap of malicious package activity across npm and PyPI
Context
Malicious package activity becomes a governance problem when attackers target the software supply chain that developers trust to build and ship code. In this case, the primary issue is not a single exploit family but the industrialisation of package abuse across npm, PyPI, Maven, and other ecosystems, with CI/CD pipelines and developer workflows now clearly in scope.
That matters for identity security because build systems and automation tools routinely carry secrets, tokens, and privileged access that attackers can reuse once a package executes. When package names, versions, and maintainer history become part of the trust decision, traditional scanning alone cannot replace lifecycle controls over non-human identities and secrets.
The 2025 pattern described here is increasingly typical rather than exceptional, which is what makes it operationally relevant for security and platform teams.
Key questions
Q: What breaks when malicious packages reach build pipelines unchecked?
A: Unchecked packages can execute before conventional controls inspect them, which means secrets, environment variables, and internal tokens can be exposed during install or runtime. Once those credentials are captured, attackers may pivot into CI, cloud services, or downstream tools. The failure is not just malware execution, but trust in package provenance without continuous validation.
Q: Why do malicious packages in developer workflows create such high risk?
A: Because developer and automation environments often hold long-lived credentials, deployment access, and internal package trust that attackers can reuse. A package that looks ordinary can still become a secret-stealing foothold if the build process exposes tokens, caches, or environment variables.
Q: How do you know if package security controls are actually working?
A: Look for fewer unexpected publishes reaching build systems, lower rates of install-time outbound connections, and measurable reductions in secret exposure during pipeline execution. Strong controls should also produce clear denial events when packages attempt to fetch credentials, contact external endpoints, or install from unauthorised sources.
Q: Who is accountable when a malicious package reaches production systems?
A: Accountability usually sits across security, engineering, and platform operations. Engineering controls the dependency choices, security defines the detection and response requirements, and platform teams govern build pipelines and package trust policies. Frameworks such as NIST CSF, NIST 800-53, and MITRE ATT&CK support shared ownership of prevention, detection, and response.
Technical breakdown
Why multi-version publishing bypasses registry trust
Attackers increasingly publish many near-identical versions of the same malicious package, often with only small payload changes. That pattern raises credibility signals, complicates manual review, and can break simple signature-based detection. It also creates a moving target for defenders who rely on static allowlists or age-based trust. In package ecosystems, version history is not just metadata. It is part of the attack surface because automated release pipelines can be used to normalise malicious behaviour before defenders respond.
Practical implication: treat sudden version churn as a risk signal and gate installs on behavioural checks, not package age alone.
How impersonation of internal tooling hides in developer workflows
Many malicious packages mimic private SDKs, admin tools, telemetry libraries, or CI/CD extensions because those names look familiar inside enterprise environments. This is effective social engineering at the dependency layer. Developers are less likely to question a package that appears to support an internal workflow or automation service. The result is a supply-chain trust problem that overlaps with identity governance, because build automation often runs with standing access to secrets, repositories, and deployment credentials.
Practical implication: maintain an approved inventory of internal package names and review any package that resembles them.
Why CI/CD secrets make package malware more dangerous
Package malware becomes materially worse when it can read .npmrc, .pypirc, environment variables, or cached tokens during install or build. At that point, the package is not only code, it is a secret-harvesting mechanism inside a privileged automation context. Hardened containers, minimal secret exposure, and short-lived credentials reduce the blast radius, but only if teams treat build runners as high-value identity environments rather than disposable tooling.
Practical implication: remove long-lived secrets from build environments and assume install hooks can reach credential material.
Threat narrative
Attacker objective: The attacker’s objective is to capture credentials and convert trusted build pipelines into a reusable delivery channel for broader compromise.
- Entry occurs when attackers publish malicious packages that imitate legitimate dependencies or internal tooling and enter developer workflows through normal install paths.
- Escalation follows when install hooks, obfuscated loaders, or build-time scripts harvest secrets, reach CI/CD context, or persist through repeated version re-uploads.
- Impact is credential theft, pipeline compromise, and downstream package or release contamination across developer and automation environments.
NHI Mgmt Group analysis
Package ecosystems now behave like identity-adjacent infrastructure. Malicious package campaigns are no longer just code quality issues. They sit at the intersection of software supply chain control, secrets governance, and non-human identity exposure because build systems, tokens, and deploy automation are often the first assets touched. Practitioners should treat package trust as part of identity lifecycle governance, not as a separate hygiene task.
Multi-version publishing creates detection debt. Attackers are not relying on a single poisoned release. They are using repeated publishes, small payload mutations, and inflated version histories to stay ahead of static review. That means defenders who measure only block rates or signature hits will miss the operational reality that package abuse is being industrialised faster than manual controls can scale. The control gap is version churn visibility, and teams should expect it to worsen.
Developer tooling impersonation is a named concept worth tracking. Internal-tool impersonation turns familiarity into an attack vector, especially when package names resemble private SDKs, telemetry libraries, or admin utilities. This is a governance problem because it exploits naming trust, not just code execution. Teams need policy and inventory discipline around internal package namespaces, because unclear ownership lets malicious lookalikes blend into normal workflows.
Secrets exposure in CI/CD is the real blast-radius multiplier. The malware becomes dangerous when it can reach environment variables, package registry credentials, or cached tokens during install. That means build runners and automation jobs need the same lifecycle controls normally reserved for high-risk service accounts. The practitioner takeaway is simple: if the pipeline can authenticate, it can be abused.
Registry controls alone no longer define supply-chain resilience. The report shows that enterprise-style attacker behaviour is now adapted to package registries and developer workflows, which means posture must extend into build enforcement, maintainer monitoring, and runtime anomaly detection. For security leaders, the relevant question is not whether packages are malicious, but whether the environment can contain them before they inherit trust.
What this signals
Secrets exposure remains the decisive downstream risk. When malicious packages touch build systems, the main question is not whether the code is obfuscated. It is whether the environment exposes credentials that can be reused after the package is removed. That makes secret lifecycle discipline, not just dependency scanning, the control that changes outcomes.
Identity hygiene now extends into the software supply chain. Build runners, registry tokens, and automation credentials should be governed like other high-risk non-human identities because they can be harvested, replayed, and retained outside normal review cycles. Teams that map these assets to an explicit lifecycle model can reduce blast radius faster than teams that rely on ad hoc cleanup.
Repeated package abuse also reinforces why the Ultimate Guide to NHIs , 2025 Outlook and Predictions matters for security roadmaps: agentic automation and software supply chains are converging on the same control problems, especially around ownership, revocation, and trust boundaries.
For practitioners
- Enforce lockfile-only installs Use npm ci or pip install --require-hashes in CI/CD so the build consumes only the exact dependency tree already approved in version control.
- Block installs on behavioural risk signals Fail builds when packages show suspicious postinstall scripts, obfuscation, rapid version pumping, or maintainer anomalies that indicate active abuse.
- Harden build runners against secret theft Run builds in hardened containers with minimal secrets exposed, and move registry credentials into secrets managers instead of environment variables.
- Monitor internal-tool impersonation Maintain an approved inventory of private package names and investigate any new dependency that mimics internal SDKs, admin tools, or telemetry libraries.
- Add runtime anomaly detection to pipelines Watch for unexpected network connections, filesystem writes outside expected directories, and persistence attempts during package install or test execution.
Key takeaways
- Malicious open-source packages in 2025 show that supply-chain abuse has become persistent, automated, and aimed at developer trust rather than end-user only compromise.
- The strongest evidence of risk is not just package volume, but the combination of version pumping, tooling impersonation, and secret exposure inside CI/CD environments.
- Teams need lockfile enforcement, build hardening, and identity-aware secrets governance if they want to stop package malware before it becomes a pipeline breach.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
MITRE ATT&CK address the attack and risk surface, while NIST CSF 2.0, NIST SP 800-53 Rev 5 and CIS Controls v8 set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| MITRE ATT&CK | TA0006 , Credential Access; TA0010 , Exfiltration; TA0003 , Persistence | The article centres on credential theft and repeated malicious package publishing. |
| NIST CSF 2.0 | PR.AC-4 | Package trust directly affects least-privilege access to build systems and secrets. |
| NIST SP 800-53 Rev 5 | IA-5 | Credential exposure in CI/CD makes authenticator management directly relevant. |
| CIS Controls v8 | CIS-5 , Account Management | Package-led compromise often reuses poorly governed service and build accounts. |
Map package abuse to credential access, exfiltration, and persistence controls in your detection and response plan.
Key terms
- Malicious Package: A malicious package is software published into a legitimate repository but designed to execute harmful code when installed. It abuses normal dependency workflows so that the attacker’s code reaches the environment through trust in the package ecosystem, not through a traditional exploit.
- CI/CD Pipeline: The automated systems that build, test, and deploy software, often holding privileged credentials for source control, cloud access, and release automation. When these pipelines leak secrets, they can turn a software delivery function into a high-trust compromise path.
- Secrets Exposure: Secrets exposure is the accidental or uncontrolled disclosure of credentials such as API keys, tokens, certificates, and service passwords. In NHI programs, it matters because a leaked secret often behaves like a live identity, creating immediate access risk until it is revoked or rotated.
- Version Inflation: Version inflation is an evasion tactic where attackers publish many releases or unrealistic version numbers to make malicious packages look mature, active, or trustworthy. It weakens simple reputation-based review because the package appears to have an established release history.
What's in the full report
Xygeni's full report covers the operational detail this post intentionally leaves for the source:
- Confirmed malicious package families and the published detection patterns behind each cluster.
- Behaviour-based indicators used to distinguish obfuscated loaders from benign package activity.
- Build-blocking examples for CI/CD pipelines when malicious code is detected.
- Weekly and monthly incident tracking that security teams can use for monitoring and reporting.
Deepen your knowledge
The NHI Foundation Level course, the industry's only accredited NHI security programme, covers NHI governance, secrets management, and machine identity control for practitioners responsible for automation-heavy environments. It is designed for security teams that need a practical framework for governing credentials, lifecycle risk, and non-human access.
Published by the NHIMG editorial team on August 21, 2026.
NHI Mgmt Group — the independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org