Skip to content

fix: resolved zip-slip vulnerability (W-23558165) - #1812

Merged
WillieRuemmele merged 2 commits into
mainfrom
d/W-23558165
Jul 31, 2026
Merged

fix: resolved zip-slip vulnerability (W-23558165)#1812
WillieRuemmele merged 2 commits into
mainfrom
d/W-23558165

Conversation

@jfeingold35

Copy link
Copy Markdown
Contributor

What does this PR do?

Today, a malicious static resource could use a zip-slip attack to seize control of a user's machine when the resource is retrieved and unpacked. This PR closes that security gap.

What issues does this PR fix or reference?

@W-23558165@

Functionality Before

Unpacking a malicious resource could lead to a file getting dropped into, e.g., the user's startup folder, taking over the machine the next time they reboot.

Functionality After

A static resource attempting a zip-slip attack is detected, and the retrieval fails with a message about how the resource attempted to extract a file outside of its extraction directory.

Metadata Registry: Successful Deploy and Retrieve (required if applicable)

N/A

Deploy output:

N/A

Retrieve output:

N/A

@jfeingold35
jfeingold35 requested a review from a team as a code owner July 30, 2026 17:27
const fullDest = isAbsolute(path)
? path
: join(this.defaultDirectory ?? component.getPackageRelativePath('', 'source'), path);
const baseDestinationPath = isAbsolute(baseContentPath)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NIT: this could be hoisted out of the loop for performance

@WillieRuemmele

Copy link
Copy Markdown
Member

QA Notes


✅ : Jamie recorded a video of it working, too large to attach in GH

@WillieRuemmele
WillieRuemmele merged commit 0264f5a into main Jul 31, 2026
86 of 87 checks passed
@WillieRuemmele
WillieRuemmele deleted the d/W-23558165 branch July 31, 2026 16:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants