Extensiones de Chrome, archivos .crx y permisos — preguntas frecuentes
Preguntas habituales sobre los paquetes de extensiones, su código fuente y qué significan de verdad los permisos que declaran.
¿Qué es un archivo .crx?
Un archivo .crx es la forma empaquetada de una extensión de Chrome. Es un archivo ZIP precedido por una cabecera firmada, y contiene el manifiesto, el JavaScript, los estilos y todos los demás recursos que la extensión incluye.
¿Por qué Chrome intenta instalar un .crx en vez de descargarlo?
Por el tipo de contenido. Google sirve los paquetes como application/x-chrome-extension, y Chrome lo interpreta como una petición de instalación, no como un archivo. Desde 2018 además rechaza las instalaciones que no vengan de la Web Store, así que el intento falla. Descargarlo desde este sitio funciona porque servimos los mismos bytes como un adjunto corriente.
¿Puedo leer el código fuente sin instalar la extensión?
Sí. Descarga el .crx y suéltalo en el extractor de la página principal. Se descomprime en tu navegador y te devuelve un .zip; el archivo no se sube a ningún sitio.
¿El código se puede leer?
Normalmente sí, aunque la mayoría de extensiones publican JavaScript minificado, así que es compacto más que legible. El manifiesto, la lista de permisos y la estructura de archivos siempre son claros, y responden a casi todas las preguntas sobre qué hace una extensión.
¿Qué significan los permisos de estas páginas?
Cada uno es una capacidad que la extensión declara en su manifiesto. Describimos qué permite cada capacidad y dejamos el juicio en tus manos, porque el análisis estático no puede saber por qué un desarrollador pidió algo. Un permiso acorde con el propósito de la extensión es normal; ese mismo permiso en una extensión que no lo necesita merece una pregunta.
¿Qué permiso debería preocuparme más?
El acceso amplio a sitios —<all_urls> o *://*/*— porque cubre todas las páginas que visitas, incluidas aquellas en las que tienes sesión iniciada. También es del todo normal en bloqueadores, modos oscuros y gestores de contraseñas. Alcance y riesgo no son lo mismo.
¿Qué significa Manifest V2 en una de estas páginas?
Que la extensión sigue apuntando a la plataforma antigua, que Chrome está retirando. En la práctica sugiere que no se ha actualizado en bastante tiempo y que puede dejar de funcionar en las versiones actuales de Chrome.
¿De dónde salen los datos de estas páginas?
De dos sitios: del propio manifiesto de la extensión, leído del paquete que descargamos, y de su ficha pública en Chrome Web Store. Nada de lo que hay aquí lo aporta el desarrollador ni se edita a mano.