
GitHub Action: escaneo SAST de Offensive360 con salida SARIF para el escaneo de código. Más de 60 lenguajes. Gratis para código abierto.
Ejecuta un análisis completo de seguridad de aplicaciones estáticas (SAST) de Offensive360 en cada push o pull request. Análisis profundo de taint y flujo de datos en más de 60 lenguajes, resultados como SARIF para la pestaña de code scanning de GitHub, y una puerta de severidad para tu pipeline.
Gratis para código abierto: los repositorios públicos pueden solicitar un token de escaneo gratuito — consulta offensive360.com/free-for-open-source.
name: SAST
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
security-events: write # solo necesario cuando upload-sarif está habilitado
jobs:
sast:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: offensive360/sast-scan-action@v1
with:
api-url: https://sast.offensive360.com # o tu propia instancia on-premise
api-token: ${{ secrets.O360_API_TOKEN }}
upload-sarif: 'true'
fail-on: high
Los hallazgos aparecen entonces en Security → Code scanning con ubicaciones de archivo/línea, guía de impacto y remediación, y trazas completas en tu panel de Offensive360.
Guarda el token como un secreto del repositorio (p. ej. O360_API_TOKEN). Nunca lo confirmes en el código.
| Entrada | Predeterminado | Descripción |
|---|---|---|
api-url | — (obligatorio) | URL base de tu instancia de Offensive360 |
api-token | — (obligatorio) | Token de escaneo externo (secreto del repositorio) |
project-name | nombre del repositorio | Nombre del proyecto en el panel de Offensive360 |
path | . | Directorio a escanear |
dependency-scan | false | También ejecuta análisis de dependencias (SCA) |
malware-scan | false | También ejecuta análisis de malware / manipulación de binarios |
license-scan | false | También ejecuta análisis de cumplimiento de licencias |
fail-on | high | Falla el trabajo en/por encima de esta severidad: none, low, medium, high, critical |
sarif-file | offensive360.sarif | Ruta del informe SARIF a escribir |
timeout-seconds | 3000 | Máximo de segundos para esperar el escaneo |
exclude | .git node_modules dist … | Nombres de directorios separados por espacios excluidos de la carga |
upload-sarif | false | Sube SARIF al code scanning de GitHub (requiere security-events: write) |
| Salida | Descripción |
|---|---|
total, critical, high, medium, low | Conteos de hallazgos |
status | Estado del escaneo (Succeeded, PartialFailed, …) |
sarif-file | Ruta del informe SARIF generado |
project-id | ID del proyecto de Offensive360 para este repositorio |
Ejemplo — comentar los conteos en pasos posteriores:
- 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)"
¿Usas GitLab? Incluye la plantilla equivalente de este repositorio:
include:
- remote: 'https://raw.githubusercontent.com/offensive360/sast-scan-action/main/templates/gitlab-ci.yml'
y configura O360_API_URL junto con una variable CI/CD O360_API_TOKEN enmascarada.
El escaneo se comporta de manera idéntica (misma API, ExternalScanSourceType=GitLab).
bash, zip, curl, python3 — todos preinstalados).path, o usa tu propia instancia.PartialFailed cuando algunos motores de lenguaje
tuvieron éxito y otros fallaron — el SARIF aún contiene todos los hallazgos completados.Una sola plataforma para SAST, DAST, MAST, SCA, análisis de malware y binarios, y cumplimiento de licencias — precios planos, usuarios y escaneos ilimitados, on-premise o en la nube. offensive360.com · Reserva una demo