Repository navigation
chore: Bump crowdin/github-action from 2.17.1 to 3.0.0 - #6368
dependabot[bot] wants to merge 1 commit into
Conversation
Bumps [crowdin/github-action](https://github.com/crowdin/github-action) from 2.17.1 to 3.0.0. - [Release notes](https://github.com/crowdin/github-action/releases) - [Commits](crowdin/github-action@v2.17.1...v3.0.0) --- updated-dependencies: - dependency-name: crowdin/github-action dependency-version: 3.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
|
|
||
| - name: Download translations | ||
| uses: crowdin/github-action@v2.17.1 | ||
| uses: crowdin/github-action@v3.0.0 |
There was a problem hiding this comment.
Semgrep identified an issue in your code:
The workflow runs crowdin/github-action@v3.0.0, a mutable tag, with repository and Crowdin credentials. If the tag is repointed, a scheduled or staging run could execute attacker-controlled code that steals tokens or creates malicious translation changes.
More details about this
crowdin/github-action@v3.0.0 uses a mutable version tag rather than an immutable commit. The Crowdin action runs with ${{secrets.WEBTEAM_CROWDIN_TOKEN}}, ${{github.token}}, and permission to create a pull request and push translation changes, so a maintainer—or an attacker who compromises the crowdin/github-action repository—could repoint v3.0.0 to a malicious commit without changing this workflow.
A plausible attack would be:
- An attacker gains control of the
crowdin/github-actionrepository or its release tag and movesv3.0.0to malicious code. - The scheduled job or a push to
stagingruns theDownload translationsstep and executes that code onubuntu-latest. - The malicious action reads
secrets.WEBTEAM_CROWDIN_TOKENand the workflow's${{github.token}}, then exfiltrates them or uses the token to alter repository contents and create a convincingtranslationspull request. - The pull request can contain attacker-controlled translation files or other changes, potentially leading maintainers or downstream automation to execute or merge the injected content.
To resolve this comment:
✨ Commit fix suggestion
| uses: crowdin/github-action@v3.0.0 | |
| uses: crowdin/github-action@<VERIFIED_VALUE_REQUIRED> # v3.0.0; replace with the verified 40-character commit SHA |
View step-by-step instructions
- Resolve the trusted 40-character commit SHA for
crowdin/github-actionversionv3.0.0from the action’s official release or repository. - Replace the mutable tag with that commit SHA:
uses: crowdin/github-action@<40-character-commit-sha>. - Add the version as a comment so the pinned dependency remains identifiable, for example:
uses: crowdin/github-action@<40-character-commit-sha> # v3.0.0.
💬 Ignore this finding
Reply with Semgrep commands to ignore this finding.
/fp <comment>for false positive/ar <comment>for acceptable risk/other <comment>for all other reasons
Alternatively, triage in Semgrep AppSec Platform to ignore the finding created by github-actions-mutable-action-tag.
You can view more details about this finding in the Semgrep AppSec Platform.
|
Superseded by #6389. |
Bumps crowdin/github-action from 2.17.1 to 3.0.0.
Release notes
Sourced from crowdin/github-action's releases.
Commits
e4a6c13feat: v3 release (#315)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)