edición general
193 meneos
1010 clics
Grave fallo de validación en SSL.com permitió la emisión de certificados no autorizados

Grave fallo de validación en SSL.com permitió la emisión de certificados no autorizados

Una vulnerabilidad crítica ha sacudido la confianza en SSL.com, una Autoridad Certificadora (CA) reconocida por todos los principales navegadores. El fallo, reportado públicamente y ya reconocido por la entidad afectada, permitía obtener certificados válidos sin demostrar control real del dominio objetivo, con potenciales consecuencias graves para la seguridad web a nivel global.

| etiquetas: ssl , valicación , certificados , grave fallo , dominio , ca , vulnerabilidad
Qué ilusión, dentro de 3 meses o así habrá que renovar miles de certificados cuando Chrome deje de aceptar la CA vulnerable.
#1 Esta mañana están dando errores certificados de Globalsign que aparentemente son válidos (por ejemplo, Edge se los traga). Desconozco si está relacionado pero a mi me está jodiendo el café.
#1 Diría yo que ya los metieron en la lista de revocación... pero quién sabe.
#1 Primero habrá que investigar y demostrar que hay más casos de emisión de certificados con validación sospechosa. Pero dudo que le quiten la confianza al CA por esto. Como mucho se revocarán todos los certificados que hayan sido validados por correo.

Ya veremos cuánto crece la CRL de ssl.com.
Eso si, instala tu propio certificado de CA en Android y verás que diversión con las alertas de seguridad constantes y no desactivables >:-(
#3 Bueno, Android es un sistema con un 99% de usuarios completamente inexpertos.
Yo propondría por ejemplo que para desactivar las alertas tuvieras que conectar el teléfono a un PC y usar algún comando desde ahí. Algo que no pudiera hacer un usuario fácilmente siguiendo las instrucciones de un estafador.
#8 la triste realidad es que a la mayoría de los usuarios vulnerables a estafas se la sudan las alertas, porque ni siquiera saben lo que es un CA.

Y para instalar CAs puedes usar una solución MDM (las hay open source, como FleetDM).
#3 cuál es tu caso de uso?
#12 Cualquier servicio que hospedes tu mismo para uso personal, ya sea tu propio servidor web o tu propia nube, centro multimedia, etc
#14 Y porqué no usar Lets Encrypt por ejemplo? No vas a tener errores de CA, es gratuito, se puede configurar renovación automática fácilmente, permite wildcard (necesita validación por DNS, yo en mi caso lo tengo automatizado con al API de Cloudflare)
#21 Hasta donde yo sé, no puedes configurar dominios locales. Yo tengo el mismo problema: "your network may be monitored"
#22 Ah claro, un dominio local es un dominio que no existe y a la vez puede existir en miles de redes, por eso no te lo pueden generar.

Yo tengo un dominio "normal" y uso IPs internas, eso si se puede hacer
#21 Porque están en la red interna sin conexión a internet. Y tienes el mismo problema por ejemplo con impresoras de red o teléfonos IP. En entornos empresariales es muy habitual
#55 Nosotros también tenemos muchas cosas sin salida a internet, usamos un dominio real (registrado pero en las DNS apuntamos a las IPs locales) y tenemos un wildcard que le cargamos a las máquinas concretas.
También tenemos un autofirmado (y el CA instalado para evitar los errores) pero solo para PCs, los móviles no los tocamos
#12 show me the code
Este es uno de los mayores fallos de la arquitectura de Internet. Que haya entidades centralizadas para los certificados SSL
#2 hmm pero el problema no ha sido causado precisamente por una empresa privada que hacía mal el chequeo de la propiedad del dominio? si hubiera habido una entidad (non profit) centralizada que hicisese un chequeo último lo hubiese detectado, no crees?
#6 es lo mismo, sea privada, non-Profit o gubernamental. Sigue siendo una entidad centralizada que puede ser hackeada (o peor, corrompida).

Lo idea seria no depender de nada centralizado.
#16 en este tipo de certificación, donde un tercero da fe de que quien dice ser pepito realmente es pepito, no veo como se puede ejercer dicho poder de forma descentralizada.

Siempre hará falta un tercero que certifique que eres quien dices ser. Y que tendrá los mecanismos para que certifiques que eres quien dices ser.
#20 hay ejemplos descentralizados. Ej: el bitcoin.

Pero si que es verdad que es mas complicado que usar a un "avalista" centralizado. Todo llegara de momento.
#25 No conozco mucho los smartconbtracts de bitcoin, que seria creo el caso de uso donde un tercero podrí aser requerido, pero por lo que leo así rapido ya incluyen la opcion de que terceros validen el contrato, ergo el mismo problemilla que en certs SSL.

Creo que se puede ver en etherscan.io/contractsVerified?filter=audit

columna 'Audit'
#25 El bitcoin sirve para demostrar que mi clave publica es mia ?

Cual es el procedimiento para eso ?
#42 si hay un procedimiento para realizar pagos de forma descentralizada. Puedes tener un procedimiento similar para verificar dominios de forma descentralizada. La similitud de sistemas es muy similar.
#43 Ese razonamiento no es válido, porque son cosas completamente diferentes.

El certificado no "verifica el dominio". Esa verificación se hace como condición previa para obtener el certificado, que básicamente es una clave pública firmada digitalmente que se usará para asegurar la comunicación
#50 el "minado" de esta crytomoneda/blockchain seria verificar un dominio y meter el fingerprint de la clave publica en la blockchain.
#52 Como "verifica el domino" y en que ayuda meter el fingerprint en el blockchain exactamente??

Que aporta sobre un certificado correctamente firmado?
#16 es que no es una única entidad centralizada, y no se por qué crees que lo es. Son un conjunto de organizaciones a las que los navegadores y/o entidades (públicas/privadas) considera suficientemente confiables para emitir certificados de manera segura. Y esta confianza está basada en criterios de seguridad y fiabilidad establecidos por el PKI Consortium.

La estructura actual permite que cada navegador y/o cada entidad elija cuáles de esas entidades (Root CAs) son confiables.

Por ejemplo, es de esperar que un gobierno de un país elija no aceptar certificados firmados por entidades de certificación que sospechan de estar comprometidas por naciones rivales.
#26 bueno es la diferencia de un monopolio o un oligopolio. No nos metamos en la semantica. El problema sigue siendo el mismo, si una entidad es atacada o corrompida, puede hacer man in the middle sin problemas.

La estructura actual permite que cada navegador y/o cada entidad elija cuáles de esas entidades (Root CAs) son confiables.


No sirve. El 99,999% de los usuarios se queda con los predeterminados del navegador.
#2 Es que pasa como en la vida real: cuando ves una firma ¿cómo sabes que no es falsa? Lo sabes si hay un notario que la certifica. Tienes que confiar en que él se hace responsable de decir que él esa persona firmó frente a él.

Si no, ¿qué otro método se te ocurre?
#7 a nivel digital no se me ocurre nada de momento. Pero es una obvia falla que espero que se acabe solucionando con nueva tecnología.

Es un meme pero la block chain va hacia esa dirección.
#17 a nivel digital no se me ocurre nada de momento
Si no se te ocurre, ¿ no se te ha ocurrido pensar que a lo mejor no lo hay ?

espero que se acabe solucionando con nueva tecnología.
No, no es cuestión de tecnología. Hay muchas cosas que no se pueden solucionar con mejor tecnología. Es ciencia, no magia.
#23 por ejemplo. Los propios usuarios finales podrian validar estos certificados y firmarlos. De esta forma la validacion no se haria de forma centralizada sino descentralizada por todo el mundo. Esos usuarios podriamos llamarlos "validadores" y lo harian a cambio de una comision.

"Pero eso es imposible". Aja, has oido hablar del bitcoin y los mineros? Ves los paralelismos? xD

No digo que esta vaya a ser la solucion. Pero como puedes ver, con el tiempo salen ideas que a nadie se le hubiera ocurrido antes. El bitcoin es de hecho unos de los mejores ejemplos en ese sentido. Nadie se podia imaginar que pudiera haber una moneda digital descentralizada.
#28 Los propios usuarios finales podrian validar estos certificados y firmarlos.
A ver como lo haces.
Ánimo, solo hay millones y millones de ellos en activo.

Esos usuarios podriamos llamarlos "validadores" y lo harian a cambio de una comision.
Ah, ya te entiendo. Unos cuantos usuarios.
Es el método que hay ahora.

Aja, has oido hablar del bitcoin y los mineros? Ves los paralelismos?
No.
No creo que los haya.
Bueno, lejanamente todo se parece a todo.
#33 Ánimo, solo hay millones y millones de ellos en activo.

Eh? Comprobar unos CNAME DNS RECORDS y luego poner tu firma se hace en menos de un segundo. En serio esto es un argumento?

Que ademas no habria que traspasar todos de golpe en un dia. Solo conforme vayan expirando sus certificados actuales. Madre mia el nivel.

Ah, ya te entiendo. Unos cuantos usuarios.
Es el método que hay ahora


Estariamos hablando de MILLONES de usuarios.

Y con una barrera de entrada cero. Tu mismo…   » ver todo el comentario
#35 Como evitas que yo junto con unos miles de colegas y unos millones de bots me ponga a validar certificados falsos ?
#45 ese desafio ya fue resuelto por las criptomonedas.

Hay dos filosofias para resolver ese problema:

- Proof of work.
- Proof of stake.
#48 No. Esa solucion no sirve para firmas de claves públicas.
En todo caso lo que estas planteando es un metodo alternativo para comprobar la.legitimidad del solicitante del certificado, nada más
#35 Comprobar unos CNAME DNS RECORDS y luego poner tu firma se hace en menos de un segundo. En serio esto es un argumento?
Saber a quien poner la firma y a quien no creo que requiere más tiempo.
A lo mejor es que no entiendes el proceso o el objetivo que pretenden los certificados.

Entiendo. No sabes de criptomonedas ni lo que es el minado entonces.
No. No entiendes nada. Te imaginas cosas.
Es desagradable tener que tratar con personas con esa actitud, como comprenderás.
En mal momento decidí comentar sobre tu mensaje para aportar algo positivo.
#28 Los propios usuarios finales podrian validar estos certificados y firmarlos.
Para qué serviria eso???
Sabes para que sirve la firma de la clave pública (certificado)??

Eso no serviria para nada.

Si te vas a las cadenas de confianza tienes PGP mas antiguo que la lecne, si no se uso en la web fué por algo
#17 la Blockchain no hace nada por evitar este problema. Sigues teniendo el inconveniente/desafío de verificar que quien solicita la firma de un certificado es realmente quien dice ser y que controla (o está autorizado por) aquella entidad para la que solicita la firma.
#27 no, ese desafio se resuelve con DNS challenges que es lo que se hace normalmente. Eso es lo de menos.

Entiendo que la idea vendria de que un usuario recibiria la peticion, validaria el dominio y si esta todo guay lo meteria en la blockchain firmado. Los usuarios harian estas validaciones a cambio de una comision.

Lo estoy simplificando mucho. Pero basicamente es la misma idea que se hace con el bitcoin/criptomonedas y el minado.
#30 los certificados EV no se hacen con solo con DNS challenges -y para llegar al servidor de dominio necesitas de los servidores de raiz, que también son “centralizados”-, y las entidades de certificación tienen requisitos de validación tanto fisica como legal de los solicitantes de una firma de un certificado. En definitiva, la información sobre el dueño de un dominio en algún momento tiene que entrar a la blockchain. Esto implica que el registro de dominios también debería estar mediado por…   » ver todo el comentario
#30 ese desafio se resuelve con DNS challenges que es lo que se hace normalmente. Eso es lo de menos.
Eso que "es lo de menos" es justo lo que ha fallado
#17 a nivel digital no se me ocurre nada de momento.

Ese es el problema, que ni a ti ni a nadie parece ocurrírsele una solución.

La blockchain es una buena forma de publicar cosas y que quede registro... pero no creo que sea factible para publicar una clave pública sin que nadie se haga pasar por ti.
#36 bueno, pero el primer paso es reconocer que hay un problema. Hay algún usuario que ni siquiera me ha reconocido eso xD
#2 ??? Por qué?

Que sugieres para verificar las claves públicas ?
#11 #9 que no tenga una solución alternativa no quiere decir que no sea una obvia falla del sistema que habría que pensar como solucionar.

Me imagino que la solución vendrá relacionado con la blockchain.
#15 No es ninguna falla en el sistema. El sistema es bueno
#18 tener una entidad centralizada para los certificados es un punto de fallo evidente. Si falla una entidad, te puedes hacer pasar por cualquier web del mundo.

Puede fallar por hackeo (como este caso) o por corrupcion.
#19 No hay una "entidad centralizada". Es una estructura jerárquica.

No falla por "hackeo", no es el caso. Falla porque no han hecho las verificaciones pertinentes, dejándoselas a un sistema programado mal hecho.

Y aun a nadie se le ha ocurrido un sistema mejor.
#40 No hay una "entidad centralizada". Es una estructura jerárquica.


Llamalo "punto unico de fallo" si prefieres.

Y aun a nadie se le ha ocurrido un sistema mejor.


Lo cual no quiere decir que no exista un sistema mejor. Ese es precisamente mi punto.
#2 si tienes una idea mejor y que sea técnica, operacional, política y económicamente viable, te espera un Premio Turing.
#2 hay miles de auditores externos que de un plumazo revocarían las firmas. Google entre ellos
#24 pero eso tambien tiene dos problemas:

- Actuan con delay. Hasta que eso sea descubierto, he podido romper el HTTPS por un buen tiempo.
- Si la entidad certificadora es lo suficientemente grande, te vas a cargar bastante trozos de internet a corto plazo (imaginate si tu banco usa esa entidad... uh).
#31 No rompes el HTTPS por eso, solo facilita el phising
#47 no, me basta con ponerme en medio de la red.
#49 No. No funciona asi. Puedes ponerte en medio solo si el sitio usa tu certificado y tu clave privada.

No basta con obtener un certificado falso, tienes que colocar la clave privada y el certificado en el sitio web.
comentarios cerrados

menéame