Shescape is a shell escape package for JavaScript. An issue in versions 1.4.0 to 1.5.1 allows for exposure of the home directory on Unix systems when using Bash with the `escape` or `escapeAll` functions from the _shescape_ API with the `interpolation` option set to `true`. Other tested shells, Dash and Zsh, are not affected. Depending on how the output of _shescape_ is used, directory traversal may be possible in the application using _shescape_. The issue was patched in version 1.5.1. As a workaround, manually escape all instances of the tilde character (`~`) using `arg.replace(/~/g, "\\~")`.
The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.
The product constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component.
Link | Tags |
---|---|
https://github.com/ericcornelissen/shescape/security/advisories/GHSA-446w-rrm4-r47f | third party advisory exploit |
https://github.com/ericcornelissen/shescape/issues/169 | issue tracking exploit third party advisory |
https://github.com/ericcornelissen/shescape/pull/170 | third party advisory patch |