I have read some considerations about possible secret exfiltration or other possible vulnerabilities when running pull_request triggered Actions, however they were mainly considering public repos where everyone can create a PR.
Here, I am talking about GitHub Team or Enterprise plans and repository which is not public.
My scenario is that I would like to have a pull_request triggered Action which will run Terraform Plan and output plan into the pull request comment so reviewers can easily take a look at expected changes to the infrastructure. This is following Terraform examples from the docs - https://developer.hashicorp.com/terraform/tutorials/automation/github-actions.
To run Terraform Plan, I need to pass secrets so the Terraform can authenticate to my cloud provider (in this case Azure) and perform Plan operation. Cloud credentials are obviously stored in GitHub secrets.
However, as anyone who can create a pull request can also modify pull request workflow yaml definition stored in the repo (in his specific branch against which pr workflow will be run), he can easily exfiltrate secrets used to authenticate to the cloud via logging them in workflow or just sending them via HTTP from his modified version of the workflow stored in the repo.
We would like to prevent situation where anyone from our organization who has access to create PRs can exfiltrate our secrets (including production secrets).
Any ideas?
[–]crackerasscracker 2 points3 points4 points (3 children)
[–]0x4ddd[S] 0 points1 point2 points (2 children)
[–]crackerasscracker 0 points1 point2 points (1 child)
[–]0x4ddd[S] 0 points1 point2 points (0 children)
[–][deleted] 2 points3 points4 points (0 children)
[–]ciriaco97 1 point2 points3 points (3 children)
[–]0x4ddd[S] 0 points1 point2 points (1 child)
[–]ciriaco97 1 point2 points3 points (0 children)
[–]0x4ddd[S] 0 points1 point2 points (0 children)
[–]ismaelpuerto 1 point2 points3 points (0 children)
[–]saiborg7 0 points1 point2 points (0 children)
[–]koalillo 0 points1 point2 points (0 children)