मुख्य कंटेंट तक स्किप करें
Version: v0.20

GitHub Actions

जिस रिपॉजिटरी को स्कैन करना है उसमें .github/workflows/malware-scan.yml बनाएँ:

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 }}

डिफॉल्ट स्कैन Lite मोड का उपयोग करता है। AMWScan को सुरक्षा संबंधी समस्या मिलने पर जॉब विफल हो जाता है। स्कैन विफल होने पर भी अंतिम चरण SARIF रिपोर्ट को Security > Code scanning में अपलोड करता है।

स्कैन कॉन्फिगर करें

इनपुटडिफॉल्टउपयोग
path.स्कैन की जाने वाली फाइल या डायरेक्टरी।
modelitefull, lite, signatures, exploits या functions चुनें।
report-formatsarifhtml, txt, json या sarif लिखें।
report-pathamwscan-reportरिपोर्ट का पथ तय करें।
php-version8.3PHP वर्जन चुनें।
scan-archivesfalseZIP आर्काइव की एंट्री स्कैन करें।
scan-allfalseएक्सटेंशन की परवाह किए बिना फाइल स्कैन करें।
ignore-pathsखालीकॉमा से अलग किए गए पथ या पैटर्न छोड़ें।
disable-checksumfalseसमर्थित प्लेटफॉर्म की इंटीग्रिटी जाँच बंद करें।
disable-definitions-updatetrueरिमोट Maltrail डेफिनिशन अपडेट छोड़ें।
fail-on-findingstrueनतीजे मिलने पर कोड 1 लौटाएँ।

एक्शन exit-code और report-path आउटपुट देता है। जॉब को विफल किए बिना नतीजे लेने के लिए fail-on-findings: false सेट करें। स्कैनर या सोर्स की त्रुटि पर कोड 2 मिलता रहेगा।

रिपोर्ट में लोकल पथ और कोड के अंश हो सकते हैं। आर्टिफैक्ट का एक्सेस और रिटेंशन केवल सुरक्षा नतीजों की समीक्षा करने वाले लोगों तक सीमित रखें।