Prácticas de seguridad de extensiones / complementos

2

¿Qué tipo de prácticas de seguridad comunes aplican los desarrolladores de software cuando permiten que se agreguen extensiones o complementos a su software, como por ejemplo? ¿Firefox, Photoshop y GIMP hacen? Puede ser en Windows o Linux o Mac.

Ejemplo de escenarios:

  1. ¿Qué impide que el complemento instale un código malicioso adicional en el sistema que le permita hacer todo lo que quiera (puertas traseras, etc.)?
  2. ¿Qué impide que el complemento espíe al usuario mientras se usa?

Obviamente, cualquier persona puede crear un complemento malicioso y nadie sospechará. Me pregunto por qué nunca le pasó a Firefox (por lo que sabemos).

    
pregunta mnoq 23.12.2016 - 08:09
fuente

4 respuestas

1

Si desea permitir complementos, los únicos métodos realistas para mantener segura la aplicación principal son:

  • Revisa el código

    Permitir solo envíos que puedan revisarse y poner en marcha recursos suficientes para realizar los exámenes. Las revisiones pueden ser automáticas o manuales, una combinación de ambas es sin duda la mejor.

    Los envíos de solo revisión también requieren algún tipo de mercado oficial para los complementos y también debe tener la capacidad de los usuarios finales para revisar y comentar públicamente.

  • Aplicar un modelo de seguridad restrictivo

    Puede asegurarse de que los complementos solo puedan realizar ciertas acciones relativamente seguras. Por ejemplo, podría evitar que se pongan en contacto con direcciones URL fuera de la suya para evitar que "llamen a casa" y pierdan datos.

    Puede ampliarlo más para permitir acciones menos seguras, pero solo después de una revisión manual del código.

Hacer los dos juntos es el mejor enfoque.

Estos son procesos bastante comunes pero, obviamente, llevan tiempo, lo que equivale a un costo. La segunda opción es la más barata, pero también puede ser la más difícil de implementar de forma segura.

Hay muchos ejemplos en los que este tipo de cosas fallan gravemente, la más obvia es la tienda de aplicaciones de Android donde las aplicaciones maliciosas se descubren regularmente con mucha frecuencia, solo después de años de estar en la tienda. La tienda de aplicaciones de Windows también sufrió esto en sus primeros días. Hasta donde puedo recordar, cada uno de los 3 navegadores principales también ha tenido extensiones maliciosas en algún momento.

Para protegerse, solo debe elegir extensiones bien usadas que tengan un gran número de comentarios positivos y consistentes. Preferiblemente unos con apoyo bien financiado. Obviamente, debes mantener el uso de la extensión al mínimo y algo como Extensity for Chrome es bueno, ya que te permite activar y desactivar las extensiones de forma fácil y rápida a voluntad. Trate de no usar las extensiones recién enviadas hasta que vea que otras personas las han probado y confiado.

Si puede, no pierda de vista las noticias para que pueda detectar cuándo se resalta una extensión, ya sea por haber sido revisada independientemente por la seguridad o cuando ha fallado. Y también tenga cuidado con las extensiones que cambian de propietario ya que los nuevos propietarios podrían no ser tan honestos.

En realidad, la mayoría de las personas no podrán hacer esas últimas recomendaciones, sin embargo.

    
respondido por el Julian Knight 23.12.2016 - 10:08
fuente
1

Esta es una cuestión de confianza, y yo diría que es más un problema social que tecnológico. Claro, hay soluciones técnicas (como solo dar acceso a un lenguaje de secuencias de comandos limitado, tratar de incluir el complemento en la caja de arena, etc.) pero a menudo se pueden romper o abusar.

Echar un vistazo a cómo el sistema operativo se ocupa de los programas podría ser útil aquí, porque en cierto sentido un programa es un complemento del sistema operativo.

El sistema operativo de escritorio tradicional permite al usuario decidir en qué programas confiar y ejecutarlos bajo su propio riesgo. El usuario tiene que decidirse si confía en el editor de un programa específico.

Esto ha funcionado bien para el usuario experimentado, pero si observa la cantidad de barras de herramientas del navegador en la computadora de sus padres, estoy seguro de que estará de acuerdo en que ha estado lejos de ser perfecto. El Internet está lleno de troyanos que se convierten en objetivos fáciles para los usuarios inexpertos (y algunas veces también para los experimentados).

El auge de los teléfonos inteligentes y las tabletas le dio al desarrollador una pizarra limpia para trabajar, y optaron por un nuevo sistema. En lugar de dejar que los usuarios decidan en qué editor confían, los proveedores de sistemas operativos ejecutan tiendas oficiales desde las que se deben descargar todas las aplicaciones. Para estar disponible allí, debe pasar la revisión de seguridad, y los proveedores pueden castigar a los editores que intentan propagar malware eliminando sus productos.

En este escenario, los usuarios no necesitan confiar en editores individuales. Solo necesitan confiar en que los proveedores hacen un buen trabajo en sus revisiones. Desafortunadamente, este sistema también ha demostrado ser menos resistente al agua, ya que el software en la zona gris, así como el malware absoluto, aún se las arregla para pasar por alto la revisión.

Así que creo que estas son las dos opciones principales:

  • Deje que los usuarios decidan en qué complementos confían y sufran las consecuencias si pierden su confianza.
  • Tenga una tienda oficial donde todos los complementos deban aprobarse y permita que los usuarios confíen en ese proceso. Si esa confianza está fuera de lugar, tanto usted como ellos sufrirán las consecuencias.
respondido por el Anders 23.12.2016 - 10:28
fuente
0

Esto depende totalmente del equipo de desarrollo de ese producto.

Generalmente,

  • Restricción de complementos (acceso a cookies, historial del navegador, bases de datos sqlite). En realidad, esto depende de cuánto quiere que su producto sea flexible.
  • Revisión de código / auditoría: revisar el código de los complementos de forma automática y manual antes de enviar el complemento al mercado donde las personas y los descargan.
  • Bloquear / Parcialmente permitir que los complementos descargados de otras fuentes esperen mercado oficial.
respondido por el Atul Sharma 23.12.2016 - 09:30
fuente
0

Una opción adicional a las que ya se mencionaron es cargar solo los complementos firmados con un certificado específico, que los desarrolladores / compañías de confianza tienen que adquirir de usted. Por supuesto, los certificados también pueden ser robados y mal utilizados para crear complementos que parecen ser legítimos, pero ofrecerían un gran obstáculo para los programadores malintencionados.

    
respondido por el knipp 23.12.2016 - 10:08
fuente

Lea otras preguntas en las etiquetas