Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hash Pin Github Action on Workflows #505

Closed
joycebrum opened this issue May 17, 2023 · 1 comment
Closed

Hash Pin Github Action on Workflows #505

joycebrum opened this issue May 17, 2023 · 1 comment

Comments

@joycebrum
Copy link
Contributor

Description

There is another security practice I would like to suggest, also recommended by the OpenSSF Scorecard, which is to hash pin dependencies to prevent typosquatting and tag renaming attacks.

The change would only be applied to GitHub workflows.

This means:

  • Hash pinning GitHub Workflow actions.
actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2

Along with hash-pinning dependencies, I also recommend adopting dependabot or renovatebot to help keep the dependencies up to date. Both tools can update hashes and associated semantic version comments.

Together with this issue I'll also suggest a PR with the hash-pinning changes since they are quite simple. If you also agree on adopting dependency update tool just tell me which one and I can submit a default config file that covers github workflow permissions.

Any questions or concerns just let me know.
Thanks!

Additional Context

A tag renaming attack is a type of attack whereby an attacker:

  • Hijack an action.
  • Upload a malicious version.
  • Replace existing tags with malicious versions.

A typosquatting attack is a type of attack whereby an attacker:

  • Create a malicious package
  • Publish it with a similar name of a known package (example: actiona instead of actions)

For more informations about the dependency-update tools:

@eliben
Copy link
Owner

eliben commented May 19, 2023

Closed per discussion in #506

@eliben eliben closed this as completed May 19, 2023
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

No branches or pull requests

2 participants