Skip to content

fix(security): remove user-controlled values from step names#47

Closed
DeepDiver1975 wants to merge 1 commit into
mainfrom
fix/security-step-name-injection
Closed

fix(security): remove user-controlled values from step names#47
DeepDiver1975 wants to merge 1 commit into
mainfrom
fix/security-step-name-injection

Conversation

@DeepDiver1975
Copy link
Copy Markdown
Member

Summary

  • Step name: fields in js-unit.yml, php-codestyle.yml, and php-unit.yml interpolated ${{ inputs.app-name }} and ${{ inputs.additional-app }} directly
  • A caller can inject newlines, Unicode, or misleading strings into the GitHub Actions UI to disguise malicious steps or confuse log reviewers
  • Fix: replace dynamic step names with static alternatives (Checkout app, Checkout additional app, Setup app, Setup additional app)

Security impact

MEDIUM — does not directly execute code, but enables UI spoofing and log manipulation that could be used for social engineering attacks against developers reviewing CI output.

Test plan

  • Verify the renamed steps still appear correctly in the GitHub Actions UI
  • Verify workflow behavior is unchanged

🤖 Generated with Claude Code

Step names containing ${{ inputs.app-name }} and
${{ inputs.additional-app }} allow callers to inject Unicode,
newlines, or misleading text into the GitHub Actions UI log,
enabling social engineering via manipulated CI output.
Replace with static names.
@DeepDiver1975 DeepDiver1975 marked this pull request as ready for review April 16, 2026 16:38
@DeepDiver1975
Copy link
Copy Markdown
Member Author

handled in #42

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

Successfully merging this pull request may close these issues.

1 participant