¿Qué riesgos de seguridad plantean los proveedores de software que implementan SSL Intercepción de servidores proxy en los escritorios de los usuarios (por ejemplo, Superfish)?

58

Ha habido bastantes problemas con notado relacionado con el descubrimiento reciente de que Lenovo está preinstalando una pieza de Adware (Superfish) que tiene la capacidad de interceptar el tráfico SSL de las máquinas en las que está instalado.

¿Cuáles son los riesgos de seguridad de que los OEM u otras compañías instalen este tipo de software en los sistemas de los clientes?

    
pregunta Rоry McCune 19.02.2015 - 14:08
fuente

4 respuestas

65

Tener un certificado SSL de proxy crea algunas implicaciones de seguridad y privacidad:

  • Superfish puede hacerse pasar por cualquier sitio

    Esto no significa que Superfish lo hará (o está haciendo), pero tiene el poder. Como tienen un Certificado de Autoridad de Certificación , cualquier certificado que generen será válido y aceptado.

    La fijación de certificados no lo protege , tampoco:

      

    "Hay una serie de casos en los que las conexiones HTTPS son interceptadas   Mediante el uso de certificados locales, efímeros. Estos certificados estan firmados   por un certificado raíz que tiene que ser instalado manualmente en el cliente.   Los proxies corporativos de MITM pueden hacer esto, varios antivirus / parental   los productos de control hacen esto y las herramientas de depuración como Fiddler también pueden hacer   esta. Ya que no podemos romper en estas situaciones, el usuario instaló root.   Las CA tienen autoridad para anular los pines. No creemos que   habrá problemas de incompatibilidad ".

    Si usa Windows y EMET, Certificate Trust puede protegerlo SI lo configura de antemano. Pero el proceso es manual y algo complicado.

  • Superfish puede interceptar tráfico

    Como CA de confianza, Superfish puede realizar un ataque MiTM en cualquier sitio, y el usuario medio no detectará el ataque. Los usuarios expertos pueden ver que el certificado fue firmado por una CA extraña, si saben dónde buscar.

  • Superfish puede inyectar código en cualquier lugar

    Incluso si el sitio está protegido por SSL / TLS, Superfish puede inyectar Javascript o HTML en cada página. Solo proxy las solicitudes, hacen la solicitud al servidor deseado, leen la respuesta, inyectan datos y envían datos al usuario. Y a menos que lo estés buscando, nunca lo notarás.

  • Superfish se puede usar para instalar malware

    Como anteriormente, Superfish puede agregar código a las actualizaciones de Windows, modificar los ejecutables que se están descargando, infectar applets de Java, archivos Flash, etc. Cualquier descarga podría ser comprometida silenciosamente. Incluso podrían cambiar el sitio de origen y colocar las sumas de comprobación modificadas en él, por lo que incluso si calcula el hash después de descargar los archivos, se verían legítimos.

  • Superfish puede conocer todos los sitios a los que accede

    El software supervisa su navegador y envía datos a Superfish. Incluso sin el software, pueden insertar código en cada sitio y rastrearte en todas partes.

  • Cualquier persona en la web puede usar su certificado

    La clave privada del certificado se ha comprometido , por lo que cualquiera que conozca la clave puede usar el certificado Superfish para crear certificados SSL válidos para lo que ellos quieran.

Decir que pueden no significa ni implica que lo hará , solo que tienen el poder de hacerlo si quieren (o están obligados a hacerlo).

    
respondido por el ThoriumBR 19.02.2015 - 14:47
fuente
12

Aquí hay algunos riesgos a los que se expone con este software específico:

  • Utiliza la misma clave privada para cada instalación. Ya que la asociada es una CA raíz y se inserta en su lista de confianza privada, hace que sea trivial que CUALQUIERA genere cualquier certificado y que el cliente afectado confíe en él (en este caso, incluso la fijación de certificados del servidor no lo ayudará).
  • El software inspecciona todos los datos: es muy posible (e incluso probable) que parte de los datos que normalmente deberían estar protegidos por el cifrado SSL se transmitan al proveedor del software y se analicen allí. incluso si este proveedor fue perfectamente honesto (lo cual, dada la naturaleza de su producto y la forma en que se distribuye, ya es algo dudoso), hace que sus datos sean vulnerables a cualquier violación que ocurra por su parte.
  • Al igual que con todo el software, viene errores. Su uso aumenta la superficie de ataque de su sistema.
respondido por el Stephane 19.02.2015 - 14:30
fuente
8

Como problema secundario, este tipo de software oculta la verdadera naturaleza de cómo se cifraron los datos. Debido a que el software reemplaza los certificados conocidos por los propios, el usuario no sabe mucho sobre el certificado original. ¿Cómo se lo transmite el software al usuario? Si el certificado original estaba desactualizado o no coincidía, ¿cómo se enviaría al usuario? Si el sitio normalmente está firmado por una CA pero se cambia a otra, ¿cómo se sabe? En segundo lugar, la interfaz de usuario expone cómo se protegieron los datos durante el tránsito. La interfaz de usuario no tiene forma de mostrar que la conexión original era insegura (por ejemplo, SSL2, certificado nulo, etc.) ya que solo muestra el nivel de cifrado del proxy local al usuario.

    
respondido por el user219861 19.02.2015 - 20:53
fuente
2

Basado en otra actualización importante de Superfish: ¡La verificación SSL del lado del cliente de Komodia está rota!

El principal problema con los proxies de Intercepción de SSL (o cualquier software criptográfico interno) desarrollado por OEM o un tercero como Komodia es que realmente no se puede confiar en ellos (especialmente después del zumbido de Superfish )! TLDR de esta nueva actualización: un atacante ni siquiera necesita extraer las claves de raíz para un ataque MitM contra las víctimas. Dado que la forma en que Komodia maneja un certificado no válido / no confiable / autofirmado es errónea, es muy fácil omitir el proceso de validación del certificado SSL (estableciendo nombres alternativos en un certificado). Echa un vistazo a la publicación enlazada arriba para más detalles

Lección aprendida: La implementación del software criptográfico (incluidos los servidores proxy de interceptación) no es una tarea fácil. Se debe realizar un análisis de diseño adecuado (de múltiples expertos en criptografía), pruebas y evaluaciones rigurosas en dicho software antes de ser utilizado en la producción. Ir de una respuesta impresionante a la pregunta ¿Por qué no deberíamos rodar los nuestros? :

  

Puedes rodar el tuyo, pero probablemente harás una gran seguridad   error si usted no es un experto en seguridad / criptografía o ha tenido   Su esquema analizado por múltiples expertos. Estoy más dispuesto a apostar   un esquema de encriptado de código abierto conocido públicamente que está disponible para   Todo para ver y analizar. Más ojos significa menos probable que la corriente.   La versión no tiene mayores vulnerabilidades que algo desarrollado.   En casa de no expertos.

    
respondido por el Rahil Arora 22.02.2015 - 07:27
fuente

Lea otras preguntas en las etiquetas