Finding
Severity: MAJOR
Evidence: .github/workflows/cross-repo-dispatch.yml:35-36
Principle: SOLID
cross-repo-dispatch.yml reads github.event.client_payload.host and passes it directly as $HOST to dispatch-apply.sh. Any entity that can send a repository_dispatch event of type image-pushed to ProjectProteus can set host to an arbitrary value, potentially causing Myrmidons to apply against an unintended host. The payload field is untrusted and unvalidated.
Part of #81
Finding
Severity: MAJOR
Evidence: .github/workflows/cross-repo-dispatch.yml:35-36
Principle: SOLID
cross-repo-dispatch.ymlreadsgithub.event.client_payload.hostand passes it directly as$HOSTtodispatch-apply.sh. Any entity that can send arepository_dispatchevent of typeimage-pushedto ProjectProteus can sethostto an arbitrary value, potentially causing Myrmidons to apply against an unintended host. The payload field is untrusted and unvalidated.Part of #81