GitHub Action
SecureStack Application Composition Analysis
A GitHub Action to execute SecureStack application composition analysis on an application code repository. When you add this to GitHub Actions we will analyze your source code for vulnerable third party and open source libraries. It's like "software composition analysis" but only better! This Action supports Go, Python and Javascript languages. See below for what types of issues this action scans for and what files are required.
name: Example Workflow Using SecureStack Application Composition Analysis Action
on: push
jobs:
security:
runs-on: ubuntu-latest
steps:
- name: Checkout repo for running code analysis within workflow
id: checkout
uses: actions/checkout@v2.4.0
with:
fetch-depth: 0
- name: Code Analysis Step
id: code
uses: SecureStackCo/actions-code@v0.1.0
with:
securestack_api_key: ${{ secrets.SECURESTACK_API_KEY }}
securestack_app_id: ${{ secrets.SECURESTACK_APP_ID }}
severity: critical
language: node
NOTE - to understand possible values for the action input flags
, run the SecureStack cli locally:
$ bloodhound-cli code --help
ADDITIONAL NOTE - Make sure you change the language: node
to whatever language is in your repo. SecureStack supports 4 types currently: node
, yarn
, python
and go
. To learn more run the SecureStack CLI locally:
$ bloodhound-cli code -t --help
- Create a SecureStack account using your GitHub credentials. You get 20 scans for free and you don't need to add a credit card.
- Once you are logged in go to "Profile" in the black drawer on the left, and then -> GENERATE KEY tab.
- Generate an API key and copy the value.
- Go to Settings for your GitHub repository and click on Secrets -> Actions at the bottom left.
- Create a new secret named SECURESTACK_API_KEY and paste the value from step 2 into the field.
- Log in to SecureStack.
- Open the application you wish to analyse. If you haven't created a managed application you can follow the directions in this VIDEO to create one.
- Copy the value of the application id on the View Application screen.
- Go to Settings for your GitHub repository and click on Secrets -> Actions at the bottom left.
- Create a new secret named SECURESTACK_APP_ID and paste the value from step 3 into the field.
- Vulnerable third party libraries from place like NPM, PyPi, and Go repositories
- Vulnerable open source libraries
- Libraries and frameworks that have recently had ownership changes or that are malicious
- For Yarn: yarn.lock and package.json
- For NPM: package.json and package-lock.json
- For Go: go.dep or go.mod
- For Python: requirements.txt
- SecureStack Secrets Analysis - Scan your application for embedded api keys, credentials and senstive data.
- SecureStack Web Vulnerability & Cloud Misconfiguration Analysis - Scan your running application url for cloud misconfigurations and web vulnerabilities.
- SecureStack Log4j Analysis - Scan your application for Log4j/Log4Shell vulnerabilities.
https://www.youtube.com/watch?v=YrPITQNy9UM&list=PL_8Xjyi5rInxzhpQkDRipipmaj0lT6pJ8
Made with 💜 by SecureStack