jprichardson / node-fs-extra

Node.js: extra methods for the fs object like copy(), remove(), mkdirs()
MIT License
9.44k stars 776 forks source link

GitHub Workflows security hardening #985

Closed sashashura closed 1 year ago

sashashura commented 1 year ago

This PR adds explicit permissions section to workflows. This is a security best practice because by default workflows run with extended set of permissions (except from on: pull_request from external forks). By specifying any permission explicitly all others are set to none. By using the principle of least privilege the damage a compromised workflow can do (because of an injection or compromised third party tool or action) is restricted. It is recommended to have most strict permissions on the top level and grant write permissions on job level case by case.

RyanZim commented 1 year ago

Don't think this really matters, there's no possibility of injection here, and if GH's official actions get compromised, this is the least of our problems. Don't suppose it hurts either, though.

sashashura commented 1 year ago

It is not really about injection, although running with the least privileges is always desirable. See my comment here https://github.com/ladjs/superagent/pull/1756#issuecomment-1343204002