
GitHub Action: scansione SAST Offensive360 con output SARIF per il code scanning. Oltre 60 linguaggi. Gratuito per l'open source.
Esegui una scansione completa di sicurezza statica delle applicazioni (SAST) con Offensive360 a ogni push o pull request. Analisi approfondita di taint e data-flow su oltre 60 linguaggi, risultati in formato SARIF per la scheda code scanning di GitHub e un gate di severità per la tua pipeline.
Gratuito per l'open source: i repository pubblici possono richiedere un token di scansione gratuito — vedi offensive360.com/free-for-open-source.
name: SAST
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
security-events: write # only needed when upload-sarif is enabled
jobs:
sast:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: offensive360/sast-scan-action@v1
with:
api-url: https://sast.offensive360.com # or your own on-prem instance
api-token: ${{ secrets.O360_API_TOKEN }}
upload-sarif: 'true'
fail-on: high
I risultati vengono poi visualizzati in Security → Code scanning con posizioni file/riga, indicazioni su impatto e rimedio e tracce complete nella tua dashboard Offensive360.
Salva il token come segreto del repository (es. O360_API_TOKEN). Non committarlo mai.
| Input | Default | Descrizione |
|---|---|---|
api-url | — (obbligatorio) | URL di base della tua istanza Offensive360 |
api-token | — (obbligatorio) | Token di scansione esterno (segreto del repository) |
project-name | nome del repository | Nome del progetto nella dashboard Offensive360 |
path | . | Directory da scansionare |
dependency-scan | false | Esegue anche l'analisi delle dipendenze (SCA) |
malware-scan | false | Esegue anche l'analisi malware / manomissione binari |
license-scan | false | Esegue anche l'analisi di conformità delle licenze |
fail-on | high | Fa fallire il job a/oltre questa severità: none, low, medium, high, critical |
sarif-file | offensive360.sarif | Percorso del report SARIF da scrivere |
timeout-seconds | 3000 | Secondi massimi di attesa per la scansione |
exclude | .git node_modules dist … | Nomi di directory separati da spazi esclusi dall'upload |
upload-sarif | false | Carica SARIF su GitHub code scanning (richiede security-events: write) |
| Output | Descrizione |
|---|---|
total, critical, high, medium, low | Conteggi dei risultati |
status | Stato della scansione (Succeeded, PartialFailed, …) |
sarif-file | Percorso del report SARIF generato |
project-id | ID progetto Offensive360 per questo repository |
Esempio — commenta i conteggi nei passaggi successivi:
- uses: offensive360/sast-scan-action@v1
id: o360
with:
api-url: ${{ vars.O360_API_URL }}
api-token: ${{ secrets.O360_API_TOKEN }}
- run: echo "Found ${{ steps.o360.outputs.total }} issues (${{ steps.o360.outputs.critical }} critical)"
Usi GitLab? Includi il template equivalente da questo repository:
include:
- remote: 'https://raw.githubusercontent.com/offensive360/sast-scan-action/main/templates/gitlab-ci.yml'
e imposta O360_API_URL più una variabile CI/CD O360_API_TOKEN mascherata.
La scansione si comporta in modo identico (stessa API, ExternalScanSourceType=GitLab).
bash, zip, curl, python3 — tutti preinstallati).path oppure usa la tua istanza.PartialFailed quando alcuni motori linguistici hanno avuto successo e altri no — il SARIF contiene comunque tutti i risultati completati.Un'unica piattaforma per SAST, DAST, MAST, SCA, analisi malware e binari e conformità delle licenze — prezzi fissi, utenti e scansioni illimitati, on-premise o cloud. offensive360.com · Prenota una demo