Google marca el sitio de Immich como peligroso
(immich.app)- Recientemente, el servicio Google Safe Browsing hizo que todos los sitios relacionados con Immich recibieran advertencias de peligro.
- Todo el dominio immich.cloud se vio afectado, y el acceso quedó prácticamente bloqueado en la mayoría de los navegadores.
- La causa fue que URLs internas de despliegue, como los entornos Preview, fueron rastreadas automáticamente y tratadas como falsos positivos.
- El equipo logró una recuperación temporal mediante una apelación en Google Search Console, pero el problema vuelve a ocurrir cada vez que se crea un nuevo Preview.
- Debido a la naturaleza de un servicio open source y self-hosted, se trata de un problema estructural, y planean separar en el futuro los entornos Preview en otro dominio.
El incidente en el que Google marcó el sitio de Immich como peligroso
20 de octubre de 2025
Por Jason Rasmussen
Resumen
- A inicios de este mes, todos los sitios web bajo
*.immich.cloudfueron clasificados como sitios peligrosos, y los usuarios comenzaron a ver en el navegador advertencias de seguridad (la llamada "red-screen-of-death"). - Nadie dentro del equipo entendía con claridad cómo funciona esta característica del navegador, pero ahora ese conocimiento ya se sumó a la lista de "cursed knowledge".
Contexto
- Google ofrece gratuitamente el servicio Safe Browsing, cuyo objetivo es determinar si un sitio contiene malware, software no deseado o engaños de ingeniería social.
- Navegadores principales como Chrome y Firefox integran este servicio.
- No está claro cómo funciona realmente el sistema de evaluación de riesgo.
- Cuando un sitio se clasifica como peligroso, la mayoría de los usuarios ya no puede usarlo.
- Solo una pequeña minoría puede entrar usando los enlaces de "ver detalles" y "visitar este sitio no seguro".
Detección del marcado
- A principios de este mes, muchos sitios del dominio
immich.cloudcomenzaron a aparecer como "peligrosos", y también hubo quejas de usuarios diciendo que sus instancias autohospedadas de Immich habían sido marcadas. - Todos los sitios internos en uso, incluidos los entornos Preview, también mostraban advertencias.
- La molestia de tener que pasar cada vez por el proceso de "ver sitio no seguro" continuó.
Respuesta a través de Google Search Console
-
Como la advertencia no se quitó incluso después de varios días, decidieron usar la ruta oficial de respuesta: Google Search Console.
-
Este servicio exige crear una cuenta de Google, usar Search Console y solicitar una revisión del sitio marcado.
-
Search Console sí ofrece algo de explicación sobre por qué se tomó la decisión de riesgo.
- "Google detectó contenido dañino en algunas páginas de su sitio"
- "Estas páginas presentan riesgos como inducir la instalación de software no deseado o exponer información personal"
-
Al revisar la lista completa de URLs señaladas como problemáticas, todas correspondían a URLs de entornos Preview.
-
Lo más impactante fue que, aunque solo se marque un subdominio individual, todo el dominio queda catalogado como problemático.
Impacto
- Los entornos Preview y los servicios internos (zitadel, outline, grafana, victoria metrics, etc.) quedaron dentro del alcance del problema.
- El tile server de producción (
tiles.immich.cloud) también fue afectado. - Sin embargo, como el tile server se solicita mediante JavaScript y no tiene una interfaz directa para el usuario, se confirmó que seguía funcionando normalmente.
Intento de "solución"
- En Google Search Console, se requiere usar la función
Request Reviewpara apelar y explicar cómo se resolvió el problema. - Si se solicita la revisión sin haber resuelto realmente nada, el proceso de evaluación tarda más.
Solicitud de recuperación de sitio peligroso
-
Como concluyeron que en realidad no había un problema sustancial, enviaron una explicación de respuesta como la siguiente:
- Immich es una aplicación self-hosted y el equipo de Immich (https://immich.app/) administra y opera directamente todo ese dominio.
- Todos los sitios marcados son entornos oficiales de despliegue propio y no están haciéndose pasar por terceros.
-
En 1 a 2 días, el dominio volvió a considerarse seguro y se recuperó el acceso.
Esfuerzos para minimizar el problema
-
Si se agrega la etiqueta
previewa un GitHub Pull Request, se crea automáticamente un entorno Immich Preview, y en cuanto se genera, también se publica la URL Preview junto con un comentario de verificación.https://pr-<num>.preview.internal.immich.cloud/ -
Cada vez que se crea un nuevo entorno Preview, el dominio
immich.cloudvuelve a recibir la clasificación de peligroso. -
Se sospecha que Google rastrea GitHub, descubre la nueva URL, la explora y luego la marca como riesgosa.
-
Como medida actual, están planeando separar estos entornos Preview a un dominio dedicado (
immich.build).
Un problema mayor
- El sistema de Google Safe Browsing parece haber sido diseñado sin considerar las características del software open source y self-hosted.
- Además de Immich, varios proyectos populares han experimentado problemas similares.
- Google puede bloquear arbitrariamente cualquier dominio y, en la práctica, no parece haber otra respuesta más que seguir solicitando revisiones a Google de manera constante.
Saludos,
El equipo de Immich
1 comentarios
Opiniones en Hacker News
Si planeas alojar contenido de usuarios en subdominios, debes registrar el sitio en la Public Suffix List https://publicsuffix.org/list/
Así, un subdominio contaminado no afecta a todo el sitio
Entre desarrolladores web hay una especie de conocimiento implícito de que, si alojas contenido generado por usuarios, sí o sí debes estar en la PSL
Es difícil enterarse de estas cosas si no te toca vivir un caso como el de Immich, así que la mayoría no lo sabe hasta que lo sufre en carne propia
Antes los navegadores usaban un algoritmo que solo impedía establecer cookies amplias cuando el dominio no tenía puntos (por ejemplo,
.com,.org)Pero eso causaba el problema de que, en dominios de subnivel como
.co.uk, las cookies se filtraban a todos los dominios registrados por debajoComo cada TLD tiene políticas de registro distintas, no había forma de resolverlo desde el lado del desarrollo, y al final surgió el enfoque de mantener manualmente una lista como la Public Suffix List
Viendo esta limitación tan fundamental del navegador, la web se siente como un auto hecho con cinta adhesiva https://publicsuffix.org/learn/
Viendo varios enlaces de este post, en realidad hay dos problemas
El primero es relativamente fácil si conoces la PSL, pero el segundo es más complicado, especialmente cuando el nombre del software está incluido en el dominio
El problema no es el contenido de usuarios en sí, sino que subí directamente el release build de Immich a mi propio servidor y Google bloqueó todo mi dominio
No fue porque Immich realmente alojara contenido de usuarios, sino porque el problema ocurrió en un subdominio de preview para PR
Creo que eso claramente es un problema en el código de Google
Recomiendo ver completa la lista de “Cursed Knowledge” del equipo de Immich https://immich.app/cursed-knowledge
Algunas cosas de la lista en realidad parecen un diseño de seguridad bastante obvio
Por ejemplo, “algunos teléfonos eliminan automáticamente la información GPS cuando una app sin permisos de ubicación lee una imagen”
Más bien suena como un comportamiento natural y deseable
Estaría bueno poder compartir este tipo de conocimientos en un archivo estándar como
CURSED.mden cada proyectoAsí todos podrían aprender ese tipo de conocimiento obtenido en la práctica
“Los parámetros de consulta de Postgres tienen un límite de 65,000”
Da risa que incluso eso no alcance
Siempre me pregunto algo con este tipo de advertencias
Te etiquetan de forma bastante directa como “estafador” o “atacante”, y me pregunto si eso no podría considerarse difamación
Pasa lo mismo con las advertencias de Microsoft sobre ejecutables no verificados
Antes te decían algo como “no sabemos si es seguro”, pero ahora parece que afirman directamente “tú eres el atacante”
La palabra “estafador” no aparece en el mensaje real; usan frases como “puede haber un atacante en el sitio”, “might”, etc.
Eso también incluye casos en los que un tercero comprometió el sitio
No están señalando al dueño del sitio como atacante
Seguro el equipo legal revisó el texto con mucho cuidado
No soy abogado, pero no recuerdo que esto haya llegado a tribunales
Podría considerarse difamación
Puede que no sea un problema tan grave, pero me pregunto si en un lugar como Immich cualquiera puede enviar un PR y, con solo ponerle la etiqueta de preview, ese contenido termina alojado automáticamente en https://pr-<num>.preview.internal.immich.cloud
¿No significa eso que cualquiera podría subir lo que quiera libremente?
En GitHub, quienes pueden agregar etiquetas están limitados a colaboradores, así que no está completamente abierto
Aun así, si un colaborador puede enviar primero un PR legítimo, conseguir la etiqueta y luego subir cualquier cosa, sí hay un riesgo
Suena como una idea de phishing realmente gratis
Cuesta creer que una sola empresa pueda decidir incluso a qué sitios puedes entrar
No les bastaba con limitar la ejecución de apps; ahora ya estamos en este nivel
Muchas de estas cosas son consecuencia de que el Congreso de EE. UU. haya funcionado de forma ineficiente durante tanto tiempo
Me sorprende cómo lograron que incluso usuarios que odian la publicidad sigan pensando que estas grandes empresas son “cool”
Nadie quiere anuncios, pero para la empresa son una forma de ganar dinero
No entiendo cómo Google logra maquillar una imagen corporativa tan poco ética como si fuera algo admirable
Siento que el internet abierto ya se terminó
Ahora los monopolios controlan todo
Tuve una app de iOS en la tienda durante 3 años y, de repente, Apple empezó a exigir una licencia nueva que ni siquiera existía, diciendo que si no la presentaba iban a bajar la app
No había cambiado absolutamente nada en esos 3 años, pero así fue
Cada vez me cansa más que ni siquiera el self-hosting se pueda hacer libremente
Un amigo mío, que también es cliente, usaba hosting del ecosistema WordPress y una redirección simple
En algún momento el host terminó en una blacklist de “sitio peligroso”
Incluso después de quitar la redirección, su propio dominio siguió contaminado, y por eso Google dejó de aceptar por completo correos desde ese dominio
Logró salir de la blacklist tras pedir una revisión, pero el efecto de bloqueo del correo quedó para siempre
Al final registró un dominio nuevo, y este tipo de comportamiento de Google más bien incentiva a seguir creando cuentas desechables
Solo de imaginar que mi dominio, que he usado bien durante 25 años, termine en una blacklist por error y además me bloqueen el correo, me parece espantoso
Mi conclusión es que conviene separar dominios según el uso
Tiene la desventaja de que, a nivel global, varios TLD pueden parecer menos oficiales, pero este caso me dejó aún más convencido
Por ejemplo
www.contoso.com (público)
www.contoso.blog (público, con comentarios de usuarios)
contoso.net (interno)
staging.contoso.dev (desarrollo / endpoint de zero trust)
raging-lemur-a012afb4.contoso.build (para snapshots)
Pero si separas así los dominios, desde la perspectiva del usuario hay mucho más riesgo de que parezca phishing
Una vez recibí un correo desde
githubnext.com, y como para mí GitHub =github.com, naturalmente pensé que era phishing o spamResultó ser un servicio real
Buen enfoque
Yo también estoy pasando por el mismo problema con mi dominio
Google marcó como peligroso nuestro Immich familiar, y por eso todos los demás servicios del mismo dominio quedaron inaccesibles en Chrome
En teoría se puede saltar la advertencia, pero eso hace que el álbum de fotos que le envié a mi suegra quede prácticamente inutilizable
A mí me pasó exactamente lo mismo a inicios de este año cuando hice self-host de Umami Analytics
https://news.ycombinator.com/item?id=42779544#42783321
Cuando reclamé en Google Search Console y mencioné “acciones legales”, recién entonces quitaron el flag
Yo también llevo años con el mismo problema
https://news.ycombinator.com/item?id=45678095