Seguridad de las extensiones de Firefox como Mailvelope

4

Estoy haciendo estas preguntas porque no estoy muy familiarizado con JavaScript o el sistema de extensión / complemento de Firefox. El contexto específico es la extensión pgp de Mailvelope, pero las preguntas son generales y se aplicarían a todas las extensiones.

  • ¿Puede otra extensión acceder a la memoria en uso o utilizada anteriormente por otra extensión?

  • ¿Puede otra extensión actuar como un keylogger MITM? ¿Puede JavaScript de otra página / pestaña que esté abierta?

  • Puede otra extensión modificar el código de otra (por ejemplo, en el disco)

pregunta TrustNoOne 02.01.2015 - 18:01
fuente

2 respuestas

2

Esta pregunta se debería mover de nuevo a la etiqueta de Firefox-Addon de stackoverflow.

Sí, una extensión puede obtener acceso a otra, consulte este tema: enlace

No estoy seguro de lo que quieres decir con "¿Puedo javascript de otra página / pestaña que está abierta?"

Tampoco estoy seguro de lo que quieres decir con "¿Puede otra extensión actuar como un keylogger MITM?"

Los complementos de Code of Firefox no se ejecutan en pestañas, se ejecutan en todo el ámbito del navegador, por lo que pueden acceder a pestañas, páginas y claves de registro que entran en el navegador. Puede hacer que registre las claves en el nivel del sistema operativo con js-ctypes : enlace

Una extensión puede modificar el código de otra, primero buscaría el complemento por el ID de los complementos, luego descomprimiría el archivo xpi si es un xpi, luego lo editaría y luego reenvasaría el xpi. Los cambios no se llevarán a cabo hasta que se reinicie el navegador. Si el complemento no está empaquetado como xpi, solo puede editar los archivos en la carpeta, pero nuevamente el código no tendrá efecto hasta que se reinicie el navegador. O si es sin reinicio hasta que vuelva a habilitar el complemento.

    
respondido por el Noitidart 08.01.2015 - 00:58
fuente
1
  

¿Puede otra extensión acceder a la memoria en uso o utilizada anteriormente por otra extensión?

@Noitdart cubrió esto, sí.

  

¿Puede otra extensión modificar el código de otra (por ejemplo, en el disco)?

Nuevamente, @Noitdart cubrió esto, pero en caso de que no esté claro, sería posible modificar el código de otro complemento sin necesidad de reiniciar. Es decir. no se requiere ningún disco para modificar el código porque el otro complemento tiene acceso a la memoria "ejecutable" (interpretable). De la misma manera, un complemento malicioso puede modificar cualquier parte de Firefox que elija, ya sea en tiempo de ejecución o mediante modificaciones en el disco a archivos críticos.

La principal mitigación de este riesgo (asumiendo que no va a inspeccionar todo el código del complemento) es que en respuesta a @georgie, hay un proceso de verificación antes de que se permita un complemento en los complementos oficiales. sitio web.

Es probable que haya más mejoras de seguridad pronto cuando Mozilla comience a requerir que todos los complementos estén firmados digitalmente antes de que Firefox los cargue. Eso no va a ayudar contra un ataque dirigido, pero le brindaría a Mozilla una forma fácil de bloquear la ejecución de complementos / desarrolladores maliciosos una vez que algunas personas desafortunadas hayan descubierto un comportamiento malicioso en un complemento.

No creo que exista el riesgo de reemplazar el código de un complemento cuando se trata de Mozilla, ya que deberían usar TLS para todo eso, pero no he inspeccionado personalmente su sistema de entrega. código. Nuevamente, el uso de firmas digitales ayudará a proteger contra ataques relacionados con la modificación maliciosa de un código de complementos durante el almacenamiento o la entrega remota.

Las otras preguntas están un poco menos definidas, pero además de la explicación de @ Noitdart sobre el alcance de la ejecución del código complementario, parte de la información a continuación puede ser útil.

Normalmente, se evita que Javascript en una página web acceda al navegador o al código / datos del complemento directamente; es un código remoto, por lo que no se puede confiar. Sin embargo, hay formas en que un sitio web puede enviar mensajes de datos simples a un complemento si ese complemento lo permite. Antes de que ocurra algo malicioso en el nivel del sistema, debería programarse en el código adicional. Por lo tanto, no existe una interacción estrictamente malintencionada desde la página web (suponiendo que no haya fallas de seguridad en el complemento o en el código del navegador), pero existe la posibilidad de interacción que un complemento malintencionado puede usar como activador para hacer algo malo.

Nuevamente, volvemos a los comentarios anteriores, porque un complemento malicioso puede hacer lo que quiera, no requiere que exista ningún Javascript específico para que exista en un sitio web específico (solo puede agregar el código malicioso al sitio cuando lo desee). ).

    
respondido por el Luckyrat 20.01.2015 - 18:16
fuente

Lea otras preguntas en las etiquetas