Passa al contenuto principale
Versione: v0.21

Panoramica SDK PHP

Usa l'SDK PHP quando l'applicazione deve avviare una scansione, utilizzare il relativo report strutturato o interrogare gli indici di firme integrati. L'API supportata è composta da AMWScan\Scanner e dai metodi di ricerca in sola lettura di AMWScan\Signatures.

Installa e carica

Installa il pacchetto con Composer e carica l'autoloader di Composer prima di utilizzare l'SDK:

composer require marcocesarato/amwscan
require __DIR__ . '/vendor/autoload.php';

use AMWScan\Scanner;

Il pacchetto richiede PHP 7.4 o versioni successive con le estensioni fileinfo, json, mbstring e zlib. Consulta i Requisiti per gli ambienti supportati.

Scegli un punto di ingresso

EsigenzaAPIRisultato
Scansionare file o un progettoScanner::run()Report di scansione stdClass o false in caso di errore di scansione intercettato
Leggere un risultato di scansione dopo il completamentoScanner::getReport()Report di scansione stdClass corrente
Verificare un hash malware SHA-256 esattoSignatures::findKnownMalwareHash()Record della corrispondenza o null
Verificare un hash legacy di file normalizzatoSignatures::matchesLegacyCoreFile()bool
Elencare gli indicatori di dominio sospetti integratiSignatures::getDomainIndicators()Array di record degli indicatori

Leggi Scanner prima di integrare l'esecuzione di scansioni. Leggi Report e rilevamenti prima di rendere persistenti i risultati o configurare avvisi.

Scansione automatica minima

use AMWScan\Scanner;

$scanner = new Scanner();
$report = $scanner
->enableLiteMode()
->setSilentMode()
->setAutoSkip()
->run([__DIR__ . '/project']);

if ($report === false) {
throw new RuntimeException($scanner->getLastError() ?: 'Scan failed.');
}

printf("Scanned: %d; findings: %d\n", $report->scanned, $report->detected);

setSilentMode() configura l'operazione non interattiva e seleziona il salto come azione predefinita, a meno che non venga impostato un altro prompt. Da solo non rende la scansione in sola lettura. Mantieni disabilitata la correzione automatica finché non hai esaminato report rappresentativi.

Stabilità dell'API

Scanner e i metodi di ricerca documentati in questa sezione costituiscono la superficie di integrazione supportata. Le classi in Archive, Checkpoint, Console, Findings, Integrity, Modules, Remote e Reputation supportano i componenti interni dello scanner. Non associare l'applicazione a esse né a proprietà statiche pubbliche come Scanner::$settings e Signatures::$raw.

Lo scanner conserva configurazione e report in stato statico. Un processo PHP deve eseguire una scansione alla volta. Usa un processo separato per lavori concorrenti, scansioni in coda o isolamento tra tenant. Leggi Sicurezza e stato prima di eseguire l'SDK in un worker o in un processo web a lunga durata.

Mappa dei riferimenti

RiferimentoContenuto
ScannerCostruttore, ciclo di vita, opzioni, filtri, output e controlli di correzione
Report e rilevamentiSchema del report, copertura, rilevamenti, diagnostica e gestione degli errori
Ricerca firmeContratti di ricerca di hash e domini
Sicurezza e statoDurata dello stato, azioni distruttive, comportamento di rete e linee guida per la distribuzione