sveltejs / svelte-preprocess

A ✨ magical ✨ Svelte preprocessor with sensible defaults and support for: PostCSS, SCSS, Less, Stylus, Coffeescript, TypeScript, Pug and much more.
MIT License
1.73k stars 147 forks source link

security: remove `postinstall` script in favor of `prepublish` script #615

Open coolaj86 opened 8 months ago

coolaj86 commented 8 months ago

(socket) svelte-preprocess@5.0.4 contains risks: Install scripts - Install scripts are run when the package is installed. The majority of malware in npm is hidden in install scripts. Accept risks of installing these packages (y/N)?

See also: @SocketDev

Feature requests and proposals

The postinstall script will always run, even for deeply nested dependencies.

The prepublish script will run when someone is running npm install from the repo, and before npm publish.

Currently the install script is used to write a message to the screen which is not actually necessary for people who have this as a dependency.

dominikg commented 6 months ago

the message is intended for users, but I agree that it would be better if it was made at runtime if a missing dependency was detected. vite handles this for sass for example, reminding you to install it if you didn't

dominikg commented 6 months ago

it is however not a security issue in this case as it only runs "echo". You can safely disable this postinstall script with your package manager if it still concerns you