GHSA-vxjg-hchx-cc4gMediumCVSS 6.5
@simonsmith/cypress-image-snapshothas fix for insecure snapshot file names
🔗 CVE IDs covered (1)
📋 Description
Impact
It's possible for a user to pass a relative file path for the snapshot name and reach outside of the project directory into the machine running the test. Example:
cy.get('h1').matchImageSnapshot('../../../ignore-relative-dirs')
The above will create an ignore-relative-dirs.png three levels up
Patches
Fixed in 8.0.2
Workarounds
Validate all the existing uses of matchImageSnapshot to ensure correct use of the filename argument. Example:
// snapshot name will be the test title
cy.matchImageSnapshot();
// snapshot name will be the name passed in
cy.matchImageSnapshot('login');
References
https://github.com/simonsmith/cypress-image-snapshot/issues/15
🎯 Affected products1
- npm/@simonsmith/cypress-image-snapshot:<= 8.0.1
🔗 References (6)
- https://github.com/simonsmith/cypress-image-snapshot/security/advisories/GHSA-vxjg-hchx-cc4g
- https://github.com/simonsmith/cypress-image-snapshot/issues/15
- https://github.com/simonsmith/cypress-image-snapshot/commit/ef49519795daf5183f4fac6f3136e194f20f39f4
- https://github.com/simonsmith/cypress-image-snapshot/releases/tag/8.0.2
- https://nvd.nist.gov/vuln/detail/CVE-2023-38695
- https://github.com/advisories/GHSA-vxjg-hchx-cc4g