
Parches en tiempo de ejecución para algertc/alpr-dashboard: corrección del logger asíncrono y mitigación de CVE-2025-29927 en nginx
Dos parches de integración directa para el proyecto Docker algertc/alpr-dashboard. Ambos se pueden implementar sin modificar ni reconstruir la imagen original.
logger-fix/ — registrador asíncrono + limitación de limpiezaReemplaza el transporte de registro síncrono integrado (lectura completa del archivo + reescritura en cada llamada de registro) con un escritor appendFileSync por llamada y un recorte diferido una vez por minuto. También limita la velocidad del escaneo de limpieza de imágenes por cada POST.
Impacto medido (carga útil de imagen base64 de 130 KB, que coincide con alertas reales de Blue Iris): las tasas sostenidas de lectura de placas que dejaban al servidor original sin respuesta (0 de 60 POSTs completados por ventana de prueba) ahora se ejecutan con CPU plana y rendimiento completo.
Gráfico de superficie completo y datos brutos en logger-fix/perf/.
middleware-exploit-mitigation/ — superposición nginx para CVE-2025-29927La imagen distribuida usa Next.js 15.0.3, que es vulnerable a CVE-2025-29927 (CVSS 9.1, omisión de autenticación mediante la cabecera x-middleware-subrequest). Corregido en versiones superiores de Next.js >= 15.2.3, pero no se puede parchear sin actualizar la imagen original.
Este parche coloca un contenedor lateral nginx:alpine delante de la aplicación que elimina la cabecera de omisión en cada solicitud proxy. Sin cambios en la aplicación, sin reconstruir la imagen.
global.__loggerInitialized) y al uso de fs/promises.readdir en fileStorage.cleanupOldFiles. Funciona hoy contra el logger.js actual y el código de almacenamiento, pero no es la solución "correcta": la solución correcta es reemplazar LimitedLineTransport con una implementación no bloqueante en el código original. Este parche es una forma de ejecutarse de forma segura hasta que eso ocurra.docker-compose, no a la imagen de la aplicación.Ambos parches son fáciles de instalar y fáciles de revertir, independientemente de las versiones del proyecto original.
Probado con algertc/alpr-dashboard:latest a fecha de 2026-04. Fije una etiqueta de imagen conocida para estabilidad; el parche del registrador en particular depende de detalles de implementación que podrían cambiar con actualizaciones del proyecto original.
MIT — consulte LICENSE.