Saltar al contenido principal
Volver a todos los artículos
Desarrollo Web & Infraestructura 18 dic. 2020 2 min de lectura

Cómo permitir SVG en una web sin abrir la puerta a ataques

E
Eduardo G.
Fundador de Riojawebs
Cómo permitir SVG en una web sin abrir la puerta a ataques

Los archivos SVG son gráficos vectoriales basados en XML. Se ven nítidos a cualquier tamaño y resultan útiles para iconos e ilustraciones, pero no son simples imágenes: pueden incluir scripts, estilos y otros elementos activos. Si se permite subir SVG sin comprobar su contenido, un archivo manipulado podría facilitar ataques como el cross-site scripting (XSS).

La regla principal es no habilitar la carga indiscriminada. Conviene validar los archivos, sanear el XML con una herramienta especializada, limitar quién puede subirlos y mantener actualizados WordPress, sus extensiones y el servidor. Un complemento de confianza que limpie SVG puede reducir el riesgo, pero no sustituye a una configuración segura ni a las revisiones periódicas.

En WordPress también es posible declarar el tipo MIME mediante un filtro, aunque hacerlo por sí solo únicamente permite la extensión y no elimina código peligroso. El ejemplo mínimo utilizado en la entrada es:

function dmc_add_svg_mime_types($mimes) { $mimes[‘svg’] = ‘image/svg+xml’; return $mimes; } add_filter(‘upload_mimes’, ‘dmc_add_svg_mime_types’);

Antes de aplicar este cambio debe añadirse una validación o sanitización adecuada. Después, es recomendable controlar cómo sirve el servidor los SVG y revisar los registros en busca de usos anómalos. El objetivo es conservar las ventajas del formato sin asumir que cualquier archivo subido es seguro.

Sobre Riojawebs.es

Diseñamos webs estáticas en HTML5 puro desde La Rioja. Sin WordPress ni WooCommerce. 100/100 en GTmetrix y tiempos de carga inferiores a 0.3 segundos.

¿Tu web actual va lenta?

Audita tu sitio sin coste y descubre cuánto tráfico estás perdiendo por segundo de retraso.

Pedir Auditoría Gratuita