<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Token Revocation &#8211; phishandchips.io</title>
	<atom:link href="https://phishandchips.io/tag/token-revocation/feed/" rel="self" type="application/rss+xml" />
	<link>https://phishandchips.io</link>
	<description>Discussing cybersecurity one byte at a time.</description>
	<lastBuildDate>Fri, 07 Aug 2026 05:00:22 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>

<image>
	<url>https://phishandchips.io/wp-content/uploads/2023/09/cropped-phishandchips.io_-32x32.png</url>
	<title>Token Revocation &#8211; phishandchips.io</title>
	<link>https://phishandchips.io</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">223541256</site>	<item>
		<title>keyv/cacheable NPM Worm: When Revoking Tokens Backfires</title>
		<link>https://phishandchips.io/keyvcacheable-npm-worm-when-revoking-tokens-backfires/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 06 Aug 2026 16:00:56 +0000</pubDate>
				<category><![CDATA[Tacklebox]]></category>
		<category><![CDATA[NPM Worm]]></category>
		<category><![CDATA[Supply Chain]]></category>
		<category><![CDATA[Token Revocation]]></category>
		<guid isPermaLink="false">https://phishandchips.io/keyvcacheable-npm-worm-when-revoking-tokens-backfires/</guid>

					<description><![CDATA[Explore the keyv/cacheable npm worm's unique twist on supply-chain security incidents and why immediate token revocation can worsen the situation.]]></description>
										<content:encoded><![CDATA[<p><strong>Tacklebox</strong></p>
<h3 class="wp-block-heading">Campaign or TTP Overview</h3>
<p>In a recent malicious campaign that rocked the software <a href="https://phishandchips.io/what-is-a-supply-chain-attack-in-the-context-of-phishing-2/">supply chain</a>, the <mark style="background-color:#9EF9FD;color:#000000">keyv/cacheable npm worm</mark> surfaced, illustrating a sophisticated development in npm repository threats. This incident involved the manipulation of a widely-used package, <em>keyv</em>, and its dependencies, impacting developers who automatically pull updates without scrutinizing each package version.</p>
<p>The attack was first identified in mid-2023, targeting a range of developer environments. By subverting a trusted npm library, the attackers gained wide reach, exploiting the automated dependency resolution process employed by developers. Notably, the tactic was attributed to an unidentified group with a strong grasp of open-source package distribution mechanisms, enhancing the worm&#8217;s efficacy by ensuring it rapidly proliferated across projects and environments.</p>
<p>The distinctive aspect of this attack was the counterintuitive reaction to handle the situation: revoking compromised tokens, typically the first step in such incursions, actually compounded the issue. Revocation inadvertently triggered reinstallation hooks, allowing the worm to propagate further as systems attempted to refresh credentials without refactoring dependency integrations. Relevant details were highlighted in a detailed <a href="https://isc.sans.edu/diary/rss/33218">SANS diary entry</a>.</p>
<h3 class="wp-block-heading">How It Was Built</h3>
<p>The worm&#8217;s design capitalized on the inherent trust within the npm ecosystem. It began with injecting malicious code into the <em>keyv</em> library. The modified package contained hooks that executed payloads during installation or upgrade events in any hosting environment, effectively turning every npm installs or updates into a potential infection vector.</p>
<pre class="wp-block-code">

<div class="codecolorer-container text blackboard" style="overflow:auto;white-space:nowrap;width:100%;"><div class="text codecolorer">{<br />
&nbsp; &quot;name&quot;: &quot;keyv&quot;,<br />
&nbsp; &quot;version&quot;: &quot;x.y.z-worm&quot;,<br />
&nbsp; &quot;scripts&quot;: {<br />
&nbsp; &nbsp; &quot;install&quot;: &quot;node worm.js&quot;<br />
&nbsp; }<br />
}</div></div>

</pre>
<p>The <mark style="background-color:#9EF9FD;color:#000000">delivery mechanism</mark> involved script executions which initiated network calls back to command-and-control (C2) servers, obtaining further commands or downloading additional payloads. Attackers utilized a domain masquerading approach with URLs resembling standard update sources, e.g., <em>cdn.npmjs-updates.com</em>, to deceive automated systems and devs into initiating the rogue updates.</p>
<p>The payload was ingeniously crafted to retain persistence even after cleanup attempts, embedding itself deeply into build environments so that any typical <em>automated remediation step</em>, such as token revocation and fresh login, exacerbated its control, by reinitializing via hooked scripts.</p>
<h3 class="wp-block-heading">Why It Worked</h3>
<p>The genius behind this campaign lay in the blend of trust exploitation and the token revocation booby-trap. The attackers understood the ecosystem&#8217;s reliance on automated processes. By poisoning an upstream dependency, they ensured the worm&#8217;s omnipresence wherever <em>keyv</em> was included, directly in line with the npm brand&#8217;s legacy of dependency.</p>
<p><mark style="background-color:#9EF9FD;color:#000000">Trust-based Vector</mark>: The package in question, recognized and trusted by many in software development, led to widespread rapid adoption of infected versions without immediate suspicion. This trust, leveraged against developers’ reliance on continuous integration/deployment (CI/CD), became an attack vector itself.</p>
<p><mark style="background-color:#9EF9FD;color:#000000">Cascading Revoke Effect</mark>: Token revocation, meant to cut off unauthorized access, triggered unintended installation scripts seated within dependency hooks. The intricacies of npm&#8217;s update mechanisms turned a reasonable response into a flawed catalyst for further infection, adding layers to the resilience of the attacker’s hold.</p>
<h3 class="wp-block-heading">Operator Takeaways</h3>
<p>This campaign teaches valuable lessons for offensive operatives regarding exploiting supply chain relationships and procedural responses. Emphasizing indirect control through dependency manipulation can offer expansive target engagement with minimal exposure. A few critical adaptations if replicating such a strategy include:</p>
<ul class="wp-block-list">
<li><strong>Dependency Hijacking</strong>: Explore trusted repositories for potential dependencies to inject with subtly modified payloads, promoting control entry points across numerous applications.</li>
<li><strong>Remediation Harassment</strong>: Design payloads to leverage automatic remediation or refresh cues to reinforce footholds, capitalizing on safety mechanisms to aid propagation.</li>
</ul>
<h3 class="wp-block-heading">Do&#8217;s and Don&#8217;ts</h3>
<ul class="wp-block-list">
<li><strong>Do</strong> conduct thorough reconnaissance on package dependencies and integrations before initiating supply-chain attacks.</li>
<li><strong>Don&#8217;t</strong> underestimate the speed at which such infections can spread; maximize initial stealth and persistence to maintain presence after detection.</li>
<li><strong>Do</strong> leverage widely trusted packages to maximize reach and minimize initial suspicion, ensuring lasting entry into development cycles.</li>
<li><strong>Don&#8217;t</strong> rely solely on single vector control; diversify payload callbacks and C2 channels to mitigate loss of operability if one vector fails.</li>
</ul>
<h3 class="wp-block-heading">References</h3>
<p>Key reference material provided via:<br />
<a href="https://isc.sans.edu/diary/rss/33218">SANS Internet Storm Center</a></p>
<p>Additional reading may include detailed analysis on <a href="https://phishandchips.io/understanding-n-days-in-phishing-leveraging-known-vulnerabilities/">known vulnerabilities</a> from <a href="https://securityintelligence.com">Security Intelligence Reports</a>.</p>
<hr class="wp-block-separator">
<h3 class="wp-block-heading">Related Reading</h3>
<ul class="wp-block-list">
<li><a href="https://phishandchips.io/what-is-a-supply-chain-attack-in-the-context-of-phishing-2/">What is a Supply Chain Attack in the Context of Phishing?</a></li>
<li><a href="https://phishandchips.io/understanding-n-days-in-phishing-leveraging-known-vulnerabilities/">Understanding N-days in Phishing: Leveraging Known Vulnerabilities</a></li>
<li><a href="https://phishandchips.io/analyzing-cve-2026-12569-phishing-exploits-targeting-ptc-windchill-vulnerability/">Analyzing CVE-2026-12569: Phishing Exploits Targeting PTC Windchill Vulnerability</a></li>
<li><a href="https://phishandchips.io/what-is-improper-authentication-in-social-engineering/">What is Improper Authentication in Social Engineering?</a></li>
</ul>
<hr class="wp-block-separator">
<p><strong>Educational Purpose:</strong> This content is provided for awareness and defensive purposes only. Understanding attacker methodologies helps individuals and organizations protect themselves.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2327</post-id>	</item>
	</channel>
</rss>
