SeenSecure Help

Protección de Uploads

Controla qué archivos se suben a tu sitio y evita que malware entre a través de galerías

Protección de Uploads: Controla Qué Entra

La carpeta /uploads es donde se guardan imágenes, documentos y archivos que suben los usuarios. Es punto de entrada perfecto para atacantes porque:

  • Es accesible públicamente
  • Muchos usuarios pueden subir archivos
  • Si no está protegida, un usuario puede subir un archivo .php que se ejecuta

Upload Protection de SeenSecure verifica CADA archivo que se sube: su tipo, tamaño, contenido. Si algo sospechoso se detecta, se bloquea.

Estadística: El 30% de WordPress hackeados tienen malware en /uploads. Es uno de los vectores más comunes.

Amenazas Contra Uploads

1. Subida de Archivos Ejecutables

Atacante sube archivo .php que, cuando accedido, ejecuta código malicioso.

upload.php → contiene:  → atacante ejecuta comandos en tu servidor

2. Cambio de Extensión

Atacante sube .php pero lo renombra a .jpg para pasar validaciones básicas.

malware.php → renombrado a → photo.jpg (pero sigue siendo PHP)

3. Polimorfismo

Malware que muta su código para evadir detección antivirus. Cada copia es diferente.

4. Archivo ZIP Bomba

Archivo comprimido que contiene 1000GB de datos. Cuando se descomprime, usa todo el almacenamiento del servidor.

5. Inyección de Metadatos

Malware insertado en metadatos de imagen (EXIF). Si WordPress procesa la imagen sin sanitizar, ejecuta código.

Tipo de Ataque Peligrosidad Detección
Upload .php directo ⭐⭐⭐⭐⭐ Muy fácil
Extensión falsa ⭐⭐⭐⭐ Fácil
Polimorfismo ⭐⭐⭐ Difícil
Metadatos ⭐⭐⭐ Muy difícil

¿Qué Protege Upload Protection?

1. Validación de Extensión

Solo permite extensiones permitidas: jpg, png, gif, pdf, doc, docx, xls, etc.

Rechaza: .php, .exe, .sh, .bat, .js, .svg (con script), .htaccess

2. Validación de MIME Type

Verifica que el contenido real del archivo coincida con su extensión.

Archivo: fake.jpg
MIME Type: image/png ← No coincide, se rechaza
Contenido: <?php ... → PHP detectado, se rechaza

3. Análisis de Contenido (Sandboxing)

Lee el contenido del archivo en un entorno seguro ("sandbox") sin ejecutar código.

Busca patrones maliciosos: eval(), system(), exec(), shell_exec(), etc.

4. Límites de Tamaño

Configurable por tipo de archivo. Ejemplos:

  • Imagen: máx 5MB
  • PDF: máx 20MB
  • Video: máx 500MB

5. Escaneo con ClamAV (Opcional)

Si tu servidor tiene ClamAV (antivirus), SeenSecure lo usa para escanear cada upload.

Detecta virus y malware conocidos automáticamente.

6. Análisis de Metadatos

Lee y sanitiza metadatos (EXIF, XMP) de imágenes y documentos.

Elimina código sospechoso, guarda archivo limpio.

7. Restricción por Usuario

Límites diferentes según rol:

  • Admin: Sin restricciones
  • Editor: 50MB por mes
  • Autor: 5MB por mes
Resultado: Prácticamente imposible subir malware con estas capas de protección.

Cómo Configurar Upload Protection

Paso 1: Activar Protección

SeenSecure > Firewall > Upload Protection > Habilitar

Paso 2: Definir Extensiones Permitidas

  • Imágenes: jpg, png, gif, webp
  • Documentos: pdf, doc, docx, xls, xlsx, ppt
  • Audio: mp3, m4a, wav
  • Video: mp4, webm, mov

Nota: Solo añade extensiones que realmente necesitas.

Paso 3: Establecer Límites de Tamaño

Ejemplos recomendados:

Tipo Límite Individual Límite Mensual por Usuario
Imagen 5MB 100MB
PDF 20MB 200MB
Video 100MB 500MB

Paso 4: Activar Análisis Profundo

  • Marcar "Escanear Metadatos"
  • Marcar "Verificar Contenido vs Extensión"
  • Marcar "Sanitizar EXIF" (remove datos personales de fotos)

Paso 5: Configurar Acciones en Detección

  • Rechazar: Bloquea upload inmediatamente
  • Cuarentena: Guarda archivo en carpeta protegida para análisis
  • Notificar: Envía email al admin
  • Bloquear IP: Si 3+ intentos fallidos, bloquea esa IP

Paso 6: Limpiar Uploads Existentes (Opcional)

SeenSecure puede escanear archivos subidos anteriormente y reportar riesgos.

Mejores Prácticas

Para Administradores

  • Mantén lista de extensiones permitidas lo más pequeña posible
  • Revisa semanalmente uploads rechazados (SeenSecure > Uploads)
  • Si hay muchos rechazos legítimos, ajusta configuración (no la desactives)
  • Educa usuarios: No todos entienen por qué se rechaza un archivo

Para Usuarios

  • Si tu archivo se rechaza, es por razón de seguridad
  • Si necesitas subir ese tipo de archivo, contacta al admin
  • Comprime imágenes grandes antes de subir (mejora velocidad también)
  • Usa nombres de archivo seguros (sin caracteres raros)

Qué Hacer si Alguien Intenta Subir Malware

  • SeenSecure lo rechaza automáticamente
  • Revisa logs: SeenSecure > Monitoreo > Upload Attempts
  • Si es usuario legítimo que no sabía, explica
  • Si hay múltiples intentos desde misma IP, considera bloqueo temporal
Importante: Si descubres malware ya en /uploads, contacta a tu hosting o especialista en seguridad inmediatamente.

Preguntas Frecuentes

¿Si rechazo SVG, me falta funcionalidad? No mucho. SVG es muy versátil pero también es vector de ataque. Si lo necesitas, usa versión "segura" que SeenSecure permite.

¿Ralentiza la subida? Ligeramente. Análisis de contenido añade 1-2 segundos. Pero la seguridad vale la pena.

¿Qué pasa si subo accidentalmente un archivo prohibido? Se rechaza, ves mensaje de error, lo intentas con otro archivo. Nada peligroso.

¿Puedo permitir que solo Admins suban videos? Sí. Configura permisos por rol en SeenSecure.

Conclusión: Upload Protection es esencial si tu WordPress acepta uploads de usuarios. Es defensa contra uno de los ataques más comunes.