The CanisterWorm Catalyst: How a Compromised Vulnerability Scanner Set the NPM Ecosystem Ablaze