Zum Hauptinhalt springen
Version: v0.20

GitHub Actions

Erstellen Sie .github/workflows/malware-scan.yml im zu prüfenden Repository:

name: Malware scan

on:
push:
pull_request:
schedule:
- cron: '0 0 * * 0'

permissions:
contents: read
security-events: write

jobs:
scan:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4

- name: Scan for malware
id: amwscan
uses: marcocesarato/PHP-Antimalware-Scanner@master
with:
path: .
mode: lite
report-format: sarif
ignore-paths: '*/cache/*,*/logs/*'

- name: Upload SARIF report
if: always()
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: ${{ steps.amwscan.outputs.report-path }}

Der Standardscan verwendet den Lite-Modus und lässt den Job fehlschlagen, sobald AMWScan einen Sicherheitsfund meldet. Der letzte Schritt lädt den SARIF-Bericht auch nach einem fehlgeschlagenen Scan unter Security > Code scanning hoch.

Scan konfigurieren

EingabeStandardZweck
path.Zu prüfende Datei oder Verzeichnis.
modeliteWählt full, lite, signatures, exploits oder functions.
report-formatsarifSchreibt html, txt, json oder sarif.
report-pathamwscan-reportLegt den Berichtspfad fest.
php-version8.3Wählt die PHP-Version.
scan-archivesfalsePrüft Einträge in ZIP-Archiven.
scan-allfalsePrüft Dateien unabhängig von ihrer Erweiterung.
ignore-pathsLeerSchließt kommagetrennte Pfade oder Muster aus.
disable-checksumfalseDeaktiviert Prüfsummen unterstützter Plattformen.
disable-definitions-updatetrueÜberspringt entfernte Maltrail-Definitionsupdates.
fail-on-findingstrueGibt bei Funden den Code 1 zurück.

Die Aktion stellt exit-code und report-path bereit. Mit fail-on-findings: false sammeln Sie Ergebnisse, ohne den Job fehlschlagen zu lassen. Scanner- und Quellfehler geben weiterhin Code 2 zurück.

Berichte können lokale Pfade und Codeausschnitte enthalten. Beschränken Sie Zugriff und Aufbewahrung der Artefakte auf die Personen, die Sicherheitsfunde prüfen.