GitHub Actions
Créez .github/workflows/malware-scan.yml dans le dépôt à analyser :
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 }}
L'analyse par défaut utilise le mode Lite et fait échouer le job lorsque AMWScan trouve un problème de sécurité. La dernière étape charge le rapport SARIF dans Security > Code scanning, même après l'échec de l'analyse.
Configurer l'analyse
| Entrée | Valeur par défaut | Rôle |
|---|---|---|
path | . | Fichier ou répertoire à analyser. |
mode | lite | Choisit full, lite, signatures, exploits ou functions. |
report-format | sarif | Écrit html, txt, json ou sarif. |
report-path | amwscan-report | Définit le chemin du rapport. |
php-version | 8.3 | Choisit la version de PHP. |
scan-archives | false | Analyse les entrées des archives ZIP. |
scan-all | false | Analyse les fichiers quelle que soit leur extension. |
ignore-paths | Vide | Exclut des chemins ou motifs séparés par des virgules. |
disable-checksum | false | Désactive les contrôles d'intégrité des plateformes prises en charge. |
disable-definitions-update | true | Ignore les mises à jour distantes des définitions Maltrail. |
fail-on-findings | true | Renvoie le code 1 en présence de résultats. |
L'action expose les sorties exit-code et report-path. Utilisez fail-on-findings: false pour collecter les résultats sans faire échouer le job. Les erreurs du scanner ou de la source renvoient toujours le code 2.
Les rapports peuvent contenir des chemins locaux et des extraits de code. Limitez l'accès aux artefacts et leur conservation aux personnes chargées d'examiner les résultats de sécurité.