ci: enable security code scanner #1286
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Required Action
Prior to merging this pull request, please ensure the following has been completed:
branchescorrectly specifies this repository's default branch (usuallymainormaster).paths-ignoredconfiguration option (see setup)What is the Security Code Scanner?
This pull request enables the MetaMask Security Code Scanner GitHub Action. This action runs on each pull request, and will flag potential vulnerabilities as a review comment. It will also scan this repository's default branch, and log any findings in this repository's Code Scanning Alerts Tab.
The action itself runs various static analysis engines behind the scenes. Currently, it is only running GitHub's CodeQL engine. For this reason, we recommend disabling any existing CodeQL configuration your repository may have.
How do I interact with the tool?
Every finding raised by the Security Code Scanner will present context behind the potential vulnerability identified, and allow the developer to fix, or dismiss it.
The finding will automatically be dismissed by pushing a commit that fixes the identified issue, or by manually dismissing the alert using the button in GitHub's UI. If dismissing an alert manually, please add any additional context surrounding the reason for dismissal, as this informs our decision to disable, or improve any poor performing rules.
Configuration
Language Configuration
The scanner auto-detects languages in your repository. If you need to customize language-specific settings, you can modify the
languages-configsection in the workflow file.Common use cases:
Ignore falsely detected languages:
Configure Java/Kotlin builds:
Supported languages:
javascript-typescript,python,java-kotlin,go,cpp,csharp,rubyBuild modes:
none,autobuild,manualAdditional Configuration
For more configuration options, please review the tool's README.
Optional secrets that can be configured:
SECURITY_SCAN_METRICS_TOKEN- for metrics collectionAPPSEC_BOT_SLACK_WEBHOOK- for Slack notificationsFor any additional questions, please reach out to
@app-secin Slack.Note
Adds a GitHub Actions workflow to run MetaMask Security Code Scanner on pushes/PRs to
main, with configured ignore paths and optional secrets./.github/workflows/security-code-scanner.ymlusingMetaMask/action-security-code-scanner@v2.pushandpull_requesttomain, supportsworkflow_callandworkflow_dispatch.actions: read,contents: read,security-events: write.paths-ignored: excludesnode_modules, snapshots, stories, tests, e2e,.sol, andcontracts.languages-config: set to[].with: setsrepoandscanner-ref: v2.SECURITY_SCAN_METRICS_TOKENandAPPSEC_BOT_SLACK_WEBHOOK(optional).Written by Cursor Bugbot for commit 637ade5. This will update automatically on new commits. Configure here.