Defensive recommendations
JFrog’s post recommended a variety of defensive tactics for detection and mitigation of these attacks, including that CISOs “should treat installation of a full-worm version as a host compromise.” It also suggested that users should revoke and rotate all GitHub, GitLab, npm, PyPI, RubyGems, cloud, SSH, Vault, Kubernetes and AI-provider credentials, as well as auditing “all repositories accessible to affected identities for .github/init.js, .claude/settings.json, .gemini/settings.json, .cursor/mcp.json, .cursor/rules/setup.mdc, .vscode/tasks.json, unexpected composer.json or Makefile execution hooks, and skip-checks:true commits.”
JFrog also suggested that companies enumerate repository trees directly and that IT should not rely on GitHub code search or the contents API, because of the wrapper size issue.
“Delete unauthorized chore/ci-* and deps/upd-* branches, disable malicious workflows and remove fake CodeQL artifacts named scan-output. Block hxxp[:]//43[.]228[.]157[.]68:80, and related malicious infrastructure at network controls” and “hunt GitHub Actions logs and runners for /tmp/.svc, ipscan, CVE-2026-41940, architecture-specific /api/dl/ requests and unusually broad scans from hosted or self-hosted runners,” JFrog suggested. And. Of course, look for .napi.cache.

