Escaneo de malware
El pipeline de las Docker Hardened Images (DHI) escanea en busca de virus y malware como parte del proceso de construcción. Los resultados del escaneo se incorporan como una atestación firmada, que puedes recuperar y verificar de forma independiente.
Cómo funciona
Docker utiliza ClamAV, un motor antivirus de código abierto, para escanear cada capa de cada imagen. El escaneo se ejecuta automáticamente durante el proceso de construcción y comprueba todos los archivos en la imagen, incluidos los archivos dentro de archivos comprimidos, en busca de virus conocidos y firmas de malware.
Los resultados del escaneo se publican como una atestación firmada adjunta a la imagen. La atestación incluye el informe de escaneo completo de ClamAV, que contiene el número de archivos escaneados, la versión de la base de datos de firmas de virus y si se detectó algún archivo infectado.
Visualizar la atestación de escaneo de malware
Puedes recuperar la atestación de escaneo de malware utilizando la CLI de Docker Scout.
Utiliza el comando
docker scout attest getcon el tipo de predicado de escaneo de virus:$ docker scout attest get \ --predicate-type https://scout.docker.com/virus/v0.1 \ --predicate \ dhi.io/<image>:<tag>NoteSi la imagen existe localmente en tu dispositivo, debes anteponer el prefijo
registry://al nombre de la imagen. Por ejemplo, utilizaregistry://dhi.io/pythonen lugar dedhi.io/python.Por ejemplo:
$ docker scout attest get \ --predicate-type https://scout.docker.com/virus/v0.1 \ --predicate \ dhi.io/python:3.13La salida es un objeto JSON que contiene el escáner utilizado y el informe del escaneo codificado en base64:
{ "scanner": { "report": "<base64-encoded ClamAV report>", "uri": "clamav/clamav:stable" } }Al decodificar el informe se muestra la salida completa de ClamAV, finalizando con un resumen del escaneo:
----------- SCAN SUMMARY ----------- Known viruses: 3627833 Engine version: 1.5.2 Scanned directories: 4 Scanned files: 21 Infected files: 0 Data scanned: 44.90 MiB Data read: 23.88 MiB (ratio 1.88:1) Time: 11.473 sec (0 m 11 s) Start Date: 2026:04:12 02:36:19 End Date: 2026:04:12 02:36:30Verifica la firma de la atestación. Para asegurarte de que la atestación es auténtica y está firmada por Docker, ejecuta:
$ docker scout attest get \ --predicate-type https://scout.docker.com/virus/v0.1 \ --verify \ dhi.io/<image>:<tag> --platform <platform>Si la atestación es válida, Docker Scout confirma la firma y muestra el comando
cosign verifycorrespondiente.
Para ver otras atestaciones, como SBOM o resultados de pruebas, consulta Verificar una imagen.