All Projects → crazy-max → ghaction-virustotal

crazy-max / ghaction-virustotal

Licence: MIT license
GitHub Action to upload and scan files with VirusTotal

Programming Languages

typescript
32286 projects
Dockerfile
14818 projects
HCL
1544 projects
shell
77523 projects
go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to ghaction-virustotal

github-run-tests-action
mabl Github Actions implementation
Stars: ✭ 39 (-62.86%)
Mutual labels:  actions, github-actions
Actions Gh Pages
GitHub Actions for GitHub Pages 🚀 Deploy static files and publish your site easily. Static-Site-Generators-friendly.
Stars: ✭ 2,576 (+2353.33%)
Mutual labels:  actions, github-actions
upx-action
Strips and runs upx on binaries
Stars: ✭ 17 (-83.81%)
Mutual labels:  actions, github-actions
deno-action
Github action for setup Deno
Stars: ✭ 24 (-77.14%)
Mutual labels:  actions, github-actions
actions
Our Library of GitHub Actions
Stars: ✭ 49 (-53.33%)
Mutual labels:  actions, github-actions
npm-update-check-action
npm new package version check action for GitHub Actions.
Stars: ✭ 17 (-83.81%)
Mutual labels:  actions, github-actions
Actions Openwrt
A template for building OpenWrt with GitHub Actions | 使用 GitHub Actions 云编译 OpenWrt
Stars: ✭ 4,742 (+4416.19%)
Mutual labels:  actions, github-actions
bridgecrew-action
This Github Action runs Bridgecrew against an Infrastructure-as-Code repository. Bridgecrew performs static security analysis of Terraform & CloudFormation Infrastructure code.
Stars: ✭ 52 (-50.48%)
Mutual labels:  actions, github-actions
actions-suggest-related-links
A GitHub Action to suggest related or similar issues, documents, and links. Based on the power of NLP and fastText.
Stars: ✭ 23 (-78.1%)
Mutual labels:  actions, github-actions
juejin-actions
掘金每天自动签到 github actions 。组织了每周一起学习200行左右的【源码共读】活动,感兴趣可以加我微信 ruochuan12 参与。
Stars: ✭ 47 (-55.24%)
Mutual labels:  actions, github-actions
Android-CICD
This repo demonstrates how to work on CI/CD for Mobile Apps 📱 using Github Actions 💊 + Firebase Distribution 🎉
Stars: ✭ 37 (-64.76%)
Mutual labels:  actions, github-actions
clang-format-action
GitHub Action for clang-format checking
Stars: ✭ 48 (-54.29%)
Mutual labels:  actions, github-actions
build-godot-action
GitHub action that builds a Godot project for multiple platforms
Stars: ✭ 62 (-40.95%)
Mutual labels:  actions, github-actions
action
📦📊 GitHub Action to reports on the size of your npm package
Stars: ✭ 36 (-65.71%)
Mutual labels:  actions, github-actions
github-act-runner
act as self-hosted runner
Stars: ✭ 68 (-35.24%)
Mutual labels:  actions, github-actions
gh-pages-action
A GitHub Action to deploy a static site on GitHub Pages.
Stars: ✭ 26 (-75.24%)
Mutual labels:  actions, github-actions
qodana-action
⚙️ Scan your Java, Kotlin, PHP, Python, JavaScript, TypeScript projects at GitHub with Qodana
Stars: ✭ 112 (+6.67%)
Mutual labels:  actions, github-actions
action-sync-node-meta
GitHub Action that syncs package.json with the repository metadata.
Stars: ✭ 25 (-76.19%)
Mutual labels:  actions, github-actions
Awesome Actions
A curated list of awesome actions to use on GitHub
Stars: ✭ 16,943 (+16036.19%)
Mutual labels:  actions, github-actions
action-homebrew-bump-formula
⚙️ A GitHub Action to easily bump Homebrew formula on new release
Stars: ✭ 68 (-35.24%)
Mutual labels:  actions, github-actions

GitHub release GitHub marketplace CI workflow Test workflow Codecov
Become a sponsor Donate Paypal

About

GitHub Action to upload and scan files with VirusTotal.


Usage

Scan local files

This action can be used to scan local files with VirusTotal:

VirusTotal GitHub Action

name: build

on:
  pull_request:
  push:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      -
        name: Checkout
        uses: actions/checkout@v3
      -
        name: Set up Go
        uses: actions/setup-go@v3
      -
        name: Build
        run: |
          GOOS=windows GOARCH=386 go build -o ./ghaction-virustotal-win32.exe -v -ldflags "-s -w"
          GOOS=windows GOARCH=amd64 go build -o ./ghaction-virustotal-win64.exe -v -ldflags "-s -w"
      -
        name: VirusTotal Scan
        uses: crazy-max/ghaction-virustotal@v3
        with:
          vt_api_key: ${{ secrets.VT_API_KEY }}
          files: |
            ./ghaction-virustotal-win32.exe
            ./ghaction-virustotal-win64.exe

Scan assets of a published release

You can also use this action to scan assets of a published release on GitHub when a release event is triggered:

name: released

on:
  release:
    types: [published]

jobs:
  virustotal:
    runs-on: ubuntu-latest
    steps:
      -
        name: VirusTotal Scan
        uses: crazy-max/ghaction-virustotal@v3
        with:
          vt_api_key: ${{ secrets.VT_API_KEY }}
          files: |
            .exe$

If you set update_release_body: true input, analysis link(s) will be appended to the release body and will look like this:

VirusTotal GitHub Action update release body

Scan through VirusTotal Monitor

To scan your assets through VirusTotal Monitor you can use the following workflow:

name: build

on:
  pull_request:
  push:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      -
        name: Checkout
        uses: actions/checkout@v3
      -
        name: Set up Go
        uses: actions/setup-go@v3
      -
        name: Build
        run: |
          GOOS=windows GOARCH=386 go build -o ./ghaction-virustotal-win32.exe -v -ldflags "-s -w"
          GOOS=windows GOARCH=amd64 go build -o ./ghaction-virustotal-win64.exe -v -ldflags "-s -w"
      -
        name: VirusTotal Monitor Scan
        uses: crazy-max/ghaction-virustotal@v3
        with:
          vt_api_key: ${{ secrets.VT_API_KEY }}
          vt_monitor: true
          monitor_path: /ghaction-virustotal
          files: |
            ./ghaction-virustotal-*.exe

Customizing

inputs

Following inputs can be used as step.with keys

Name Type Default Description
vt_api_key String VirusTotal API key to upload assets (required)
files String Newline-delimited list of path globs/patterns for asset files to upload for analysis (required)
vt_monitor Bool false If enabled, files will be uploaded to VirusTotal Monitor endpoint
monitor_path¹ String / A path relative to current monitor user root folder to upload files
update_release_body² Bool false If enabled, analysis link(s) will be appended to the release body
github_token³ String GitHub Token used to create an authenticated client for GitHub API as provided by secrets
request_rate Number 0 API request-rate in requests/minute. Set to 4 or lower when using the standard free public API. 0 to disable rate-limit.

outputs

Following outputs are available

Name Type Description
analysis String Analysis results formatted as <filename>=<analysisURL> (comma separated)

Contributing

Want to contribute? Awesome! The most basic way to show your support is to star the project, or to raise issues. If you want to open a pull request, please read the contributing guidelines.

You can also support this project by becoming a sponsor on GitHub or by making a Paypal donation to ensure this journey continues indefinitely!

Thanks again for your support, it is much appreciated! 🙏

License

MIT. See LICENSE for more details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].