Saltar al contenido principal
Versión: Más reciente

Descripción general del SDK PHP

Use el SDK PHP cuando su aplicación necesite iniciar un análisis, consumir su informe estructurado o consultar los índices de firmas integrados. La API compatible se compone de AMWScan\Scanner y los métodos de consulta de solo lectura de AMWScan\Signatures.

Instalar y cargar

Instale el paquete con Composer y cargue el autocargador de Composer antes de utilizar el SDK:

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

use AMWScan\Scanner;

El paquete requiere PHP 7.4 o posterior con las extensiones fileinfo, json, mbstring y zlib. Consulte Requisitos para conocer los entornos compatibles.

Elegir un punto de entrada

NecesidadAPIResultado
Analizar archivos o un proyectoScanner::run()Informe de análisis stdClass o false ante un error de análisis capturado
Leer el resultado de un análisis tras completarseScanner::getReport()Informe de análisis stdClass actual
Comprobar un hash SHA-256 de malware exactoSignatures::findKnownMalwareHash()Registro de coincidencia o null
Comprobar un hash de archivo normalizado heredadoSignatures::matchesLegacyCoreFile()bool
Enumerar los indicadores integrados de dominios sospechososSignatures::getDomainIndicators()Matriz de registros de indicadores

Lea Analizar con Scanner antes de integrar la ejecución del análisis. Lea Informes y hallazgos antes de conservar o alertar sobre los resultados.

Análisis mínimo sin supervisión

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 la operación no interactiva y selecciona omitir como acción predeterminada, salvo que establezca otra respuesta. Por sí solo no convierte un análisis en uno de solo lectura. Mantenga deshabilitada la corrección automatizada hasta haber revisado informes representativos.

Estabilidad de la API

Scanner y los métodos de consulta documentados en esta sección constituyen la interfaz de integración compatible. Las clases de Archive, Checkpoint, Console, Findings, Integrity, Modules, Remote y Reputation sirven a los componentes internos del escáner. No acople una aplicación a ellas ni a propiedades estáticas públicas como Scanner::$settings y Signatures::$raw.

El escáner mantiene la configuración y los informes en estado estático. Un proceso de PHP debe ejecutar un análisis a la vez. Use un proceso independiente para trabajos simultáneos, análisis en cola o aislamiento entre inquilinos. Lea Seguridad y estado antes de ejecutar el SDK en un trabajador o proceso web de larga duración.

Mapa de referencia

ReferenciaContenido
Analizar con ScannerConstructor, ciclo de vida, opciones, filtros, salida y controles de corrección
Informes y hallazgosEsquema de informe, cobertura, hallazgos, diagnósticos y gestión de errores
Consulta de firmasContratos de consulta de hashes y dominios
Seguridad y estadoDuración del estado, acciones destructivas, comportamiento de red y guía de implementación