Los spammers usan imágenes cargadas en correos spam. ¿Algún consejo sobre cómo resolverlo?

Tengo una instalación de Discourse y estoy muy contento con ella. Recientemente, los spammers han encontrado formas de eludir la protección contra spam integrada. El problema es que publican imágenes en sus publicaciones y luego incrustan inmediatamente estas imágenes en correos electrónicos de spam que envían a miles de personas. Incluso si elimino las publicaciones, estas imágenes parecen permanecer disponibles durante bastante tiempo.
Esto ha llevado a algunas quejas de abuso de spam por parte de mi proveedor de alojamiento.

Actualmente, he deshabilitado la carga de imágenes para nuevos usuarios, pero como es un foro de soporte, esta no es una solución muy agradable. La gente a menudo necesita agregar capturas de pantalla, etc., a sus primeras publicaciones.

¿Alguien ha encontrado una solución viable para este problema?

Ya he intentado descomentar el comando valid_referers para ^/uploads, pero no parece hacer nada. Las imágenes aún se pueden incrustar:

   location ~ ^/uploads/ {

      # NOTA: es realmente molesto que no podamos definir encabezados
      # en el nivel superior y heredarlos.
      #
      # proxy_set_header NO hereda, por diseño, debemos repetirlo,
      # de lo contrario, los encabezados no se establecen correctamente
      proxy_set_header Host $http_host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Request-Start "t=${msec}";
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $thescheme;
      proxy_set_header X-Sendfile-Type X-Accel-Redirect;
      proxy_set_header X-Accel-Mapping $public/=/downloads/;
      expires 1y;
      add_header Cache-Control public,immutable;

      ## reglas opcionales de anti-hotlinking de carga
      valid_referers folivora.ai *.folivora.ai *.llo.ai;
      if ($invalid_referer) { return 403; }

      # CSS personalizado
      location ~ /stylesheet-cache/ {
          add_header Access-Control-Allow-Origin *;
          try_files $uri =404;
      }
      # esto nos permite evitar rails
      location ~* \.(gif|png|jpg|jpeg|bmp|tif|tiff|ico||avif)$ {
          add_header Access-Control-Allow-Origin *;
          try_files $uri =404;
      }
      # SVG necesita un encabezado adicional adjunto
      location ~* \.(svg)$ {
      }
      # miniaturas e imágenes optimizadas
      location ~ /_?optimized/ {
          add_header Access-Control-Allow-Origin *;
          try_files $uri =404;
      }

      proxy_pass http://discourse;
      break;
    }
2 Me gusta

Hmmm. Ese es uno complicado. :thinking:

Creo que si editas la publicación para eliminar la imagen, de modo que no se incluya en la última versión de una publicación (eliminada o de otro tipo), y también estableces clean orphan uploads grace period hours en el mínimo de 1 hora, eso podría acelerar la eliminación.

Sin embargo, no es una solución ideal para esto, ni por facilidad de uso ni por inmediatez.

1 me gusta

Ya lo he configurado en una hora, pero son muy rápidos enviando sus correos de spam…

¿Sabes si usar S3 en lugar de mi propio servidor para las cargas resolvería el problema? ¿Hay quizás alguna forma de permitir solo a los usuarios registrados ver las imágenes subidas?

1 me gusta

Existe la función de Cargas Seguras que podría ser de utilidad:

Aunque es una configuración avanzada y no estoy muy familiarizado con ella.


En realidad, leyéndolo de nuevo, puede que no sea adecuado para esto después de todo:

3 Me gusta

Quizás debería publicar esto como una solicitud de características.

Básicamente, creo que necesitaría dos cosas:

  • Capacidad para eliminar inmediatamente imágenes si se elimina un usuario (incluida la foto de perfil).
  • Capacidad para eliminar o asegurar inmediatamente imágenes si un usuario es marcado para revisión.

Úselo, puede eliminar imágenes de forma permanente de forma fácil y rápida

1 me gusta

Gracias, lo intentaré. ¿Está seguro de que también eliminará permanentemente las imágenes?

Creo que elimina las publicaciones y las cargas se gestionan de manera similar al método anterior utilizando clean orphan uploads grace period hours.

También hay un retraso incorporado de 5 minutos entre la eliminación suave y la eliminación permanente por el mismo administrador (aunque un segundo administrador no enfrentaría la misma espera).

Ciertamente vale la pena intentarlo. :crossed_fingers:

1 me gusta

Sí. Y como dijo el otro tipo de arriba. Hay que esperar 5 minutos. Simplemente usa otra cuenta de administrador para hacerlo al instante. Borrará la imagen permanentemente.

Creo que algo anda mal con tu configuración de NGINX. Cuando intento abrir una imagen de tu foro en una nueva pestaña, se carga bien aunque no debería, ya que no he pasado ningún referer :thinking:
Si consigues que funcione, resolverá la mayoría de tus problemas de spam, ya que no podrán enlazar directamente a ninguna de las imágenes de tu foro.

3 Me gusta