Join our Newsletter — 33% off our NHI Course
Home› FAQ› Threats, Abuse & Incident Response› What are the signs that a package-based supply…
Threats, Abuse & Incident Response

What are the signs that a package-based supply chain attack has moved from theft to persistence?

← Back to all FAQ
By NHI Mgmt Group Editorial Team Updated October 10, 2026 Domain: Threats, Abuse & Incident Response

Look for unexpected services, new user-level systemd units, unfamiliar pods in management namespaces, repeated outbound polling to suspicious domains and post-install privilege activity that does not match normal application behaviour. In this case, attempts to install sysmon.py and deploy privileged pods are the kinds of signals that indicate the attacker is trying to stay resident.

What shifts an incident from theft to persistence?

The pivot is behavioural, not just technical. Theft is usually a one-time objective, while persistence shows the actor is building a repeatable foothold. In package-based attacks, that means watching for artefacts that survive reinstalls, restart automatically, blend into normal orchestration, or continue to beacon after the original malicious package has already run.

Operational signs that the attacker is trying to stay resident

Unexpected services are a strong clue, especially when they appear after package install or update and do not match the host’s normal role. New user-level systemd units, cron-like launchers, and scheduled tasks matter because they give the attacker a restart path that does not depend on the original installer running again. The eslint-scope npm compromise is a useful reference point because it shows how a package compromise can start with token theft and then move into downstream abuse of the package ecosystem.

Container and cluster artefacts are equally important. Unfamiliar pods in management namespaces, hidden sidecars, or newly granted workload permissions can indicate the attacker has moved from a short-lived payload to an operational presence. When the package drops components that create or modify infrastructure objects, the goal is often durability through the platform rather than through the original endpoint.

Outbound polling is another persistent pattern. Repeated connections to suspicious domains, especially at fixed intervals or after reboot, suggest command-and-control, task polling, or staged retrieval rather than opportunistic theft. Post-install privilege activity also matters: if the package starts enumerating local capabilities, touching elevated APIs, or requesting broader access than the application normally needs, the attacker is likely preparing follow-on actions that require continued access.

Why persistence is the more dangerous phase

Once persistence is established, the compromise stops being a single malicious install event and becomes an ongoing control problem. The attacker can wait for a better moment, re-enter after remediation, or use the foothold to harvest more credentials and reach adjacent systems. In package-based supply chain attacks, that often means the original package is only the delivery vehicle, while the real objective is to convert trusted software execution into a durable access path. The tj-actions/changed-files compromise shows how quickly a poisoned package or action can turn into broader secret exposure once trust has been established in the build path.

That is why the difference between theft and persistence changes the response. Theft usually calls for containment, credential rotation, and package removal. Persistence requires a broader hunt for secondary footholds, restart mechanisms, modified services, altered containers, and any access paths the attacker may have left behind. If those are not cleared, the attacker can simply wait and return.

Risk and Threat Considerations

The main risk is assuming the incident ended when the malicious package was removed. If the attacker has already planted a startup mechanism, container workload, or recurring network callback, remediation can be incomplete even though the original payload is gone. That creates a delayed re-compromise risk, especially in environments where package installs trigger automated deployment or privilege changes.

Failure mechanism: The attacker uses the package execution window to create an independent persistence layer, such as a service, scheduled task, pod, or repeated outbound task loop. That layer survives the initial cleanup and keeps the compromise alive.

Impact: The attacker retains access for credential harvesting, lateral movement, re-entry after reboot, and continued abuse of trusted software distribution paths.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

MITRE ATT&CK addresses the attack and risk surface, while NIST SP 800-53 Rev 5 sets the governance and control requirements practitioners need to meet.

FrameworkControl / ReferenceRelevance
MITRE ATT&CKT1037 — Boot or Logon Initialization ScriptsPersistence via startup mechanisms is central to the question.
T1053 — Scheduled Task/JobScheduled execution is a common persistence path after package compromise.
T1611 — Escape to HostContainerised persistence can indicate movement from package code to host-level control.
Recommendation — Map startup artefacts to T1037 and hunt for install-time persistence changes. Inspect scheduled jobs for package-created persistence and remove them. Correlate container changes with host artefacts and block host escape paths.
NIST SP 800-53 Rev 5SI-4 — System MonitoringPersistence signs depend on detecting unusual services, tasks, and callbacks.
CM-3 — Configuration Change ControlAttackers persist by making unauthorised runtime changes after install.
Recommendation — Monitor for abnormal startup artefacts, polling, and privilege activity. Require review and approval for service, pod, and startup changes.

Practitioner Guidance

What to verify: Confirm whether any new service, unit file, scheduled task, container workload, or startup registration was created by the package install path. If the artefact survives a restart or redeployment, treat it as persistence until proven otherwise.

Decision rule: If you see repeated polling plus any post-install privilege activity, assume the package has moved beyond theft and into durable access. Prioritise isolation, removal of the persistence mechanism, and review of adjacent credentials or deployment tokens before you rely on package deletion alone.

Practitioner takeaway: The decisive question is not whether the package was malicious, but whether it left behind a way to come back after the first execution has ended.

Free weekly newsletter

Subscribe to the NHI & AI Identity Journal

The latest on NHI and Agentic AI security – articles, research, breaches, news and events every week.

Bonus 33% off our NHI Course when you subscribe.

NHIMG Editorial Note
Reviewed and updated by the NHIMG editorial team on October 10, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org