ghrc.io parece ser un sitio malicioso
(bmitch.net)- La simple confusión por un error tipográfico entre ghcr.io y ghrc.io provoca una grave amenaza de seguridad
- ghrc.io a primera vista parece un servidor nginx básico, pero internamente se detectó que imita la API de OCI
- Este sitio usa el encabezado www-authenticate para inducir a clientes de contenedores a enviar credenciales sensibles
- Si se ingresan credenciales por error con docker login o se usa un registro equivocado, puede ocurrir una filtración de credenciales
- Si iniciaste sesión en el servidor equivocado, es necesario cambiar la contraseña, revocar el PAT y revisar actividad anómala en la cuenta de GitHub
Resumen general
La confusión frecuente entre ghcr.io y ghrc.io por un simple error tipográfico puede causar un problema de seguridad muy peligroso. Se detectó un intento de robo de credenciales en ghrc.io, una versión con typo de GitHub Container Registry (ghcr.io), usado por muchos desarrolladores y equipos.
Qué es ghcr.io
- ghcr.io es un registro compatible con OCI para imágenes de contenedor y artefactos OCI
- Forma parte de GitHub y se usa como un registro popular en muchísimos proyectos de código abierto
ghrc.io: lo que se ve en la superficie
- Al entrar a ghrc.io se muestra una simple pantalla predeterminada de nginx
- Su comportamiento básico, como el típico error 404, es igual al de un servidor nginx común
La naturaleza de la actividad maliciosa
- El problema central aparece al hacer llamadas a la API de OCI bajo el prefijo
/v2/ - Al acceder por esa ruta, responde con un encabezado
www-authenticatey un 401, con un comportamiento muy similar al de un registro oficial de contenedores - Está presente el encabezado
www-authenticate: Bearer realm="https://ghrc.io/token" - Por este encabezado, clientes como Docker, containerd, podman y Kubernetes intentan enviar automáticamente las credenciales del usuario a
https://ghrc.io/token - Como la configuración predeterminada de nginx no incluye ese encabezado, queda claro que fue configurado intencionalmente
El riesgo: escenario de robo de credenciales
- Este patrón parece ser un ataque de robo de credenciales basado en typo-squatting
- El riesgo existe solo si el cliente del usuario ingresó o guardó credenciales para ghrc.io
- Ejemplos de situaciones en las que credenciales reales pueden quedar expuestas
- Ejecutar
docker login ghrc.io - Usar
docker/login-actiondentro de GitHub Action y especificar ghrc.io como registro - Guardar credenciales de registro para ghrc.io en un secreto de Kubernetes e intentar hacer pull de imágenes
- Ejecutar
- Si simplemente se intenta hacer push/pull de imágenes a ghrc.io, la información de autenticación no se expone (intenta un token anónimo y luego devuelve error)
Medidas de respuesta
- Si alguna vez iniciaste sesión por error en ghrc.io, debes cambiar de inmediato la contraseña y revocar el PAT (token de acceso personal) usado
- También debes revisar sin falta si hay inicios de sesión anómalos o actividad maliciosa en tu cuenta de GitHub
- Un atacante podría aprovechar esto para agregar imágenes maliciosas a repositorios de ghcr.io o conseguir acceso a la cuenta
Conclusión
- Hay que tener cuidado con sitios de phishing que usan direcciones similares a ghcr.io
- Se requiere una política aún más estricta para gestionar credenciales, tokens, contraseñas y otra información de seguridad
Aún no hay comentarios.