14 votos

¿Cómo puedo instalar de forma segura aplicaciones que no se distribuyen a través de la Mac App Store?

Para simplificar las cosas, me gustaría instalar sólo aplicaciones de la AppStore oficial. Pero, con frecuencia me encuentro con que las aplicaciones que necesito no están en la AppStore como Gradle, Carbon Copy Cloner y Android Studio. Es lo que hay, y las instalo, pero ¿qué pasa?

¿Puede alguien explicarme por qué algunas aplicaciones se distribuyen fuera de la tienda y cómo puedo, como usuario, instalarlas de forma segura?

3 votos

¿Por qué considera esto último inseguro? Si se descarga de una fuente de confianza, como el sitio web del proveedor, ¿cuál es el problema?

0 votos

@MonkeyZeus Desinstalar scripts son mi primera preocupación, luego tranquilidad y no validación de checksum. AppStore (supongo) requiere un scripts que borre todos los recursos que una app instala si decido más tarde que no quiero i. Las apps fuera de la AppStore no tienen scripts de desinstalación. Mi db MySql no arranca después de la migración a Catalina. Me gustaría hacer nuke, reinstalar, volver a cargar los dbs, y estar en mi camino. Pero, no sé cómo borrar la instalación de MySQL que no sobrevivió a la migración. Por ahora, estoy usando una base de datos en una máquina diferente y voy a resolver una nueva base de datos macbook más tarde.

1 votos

Podría hacer una nueva pregunta sobre sus problemas con MySql :-)

30voto

Jose Chavez Puntos 645

Puede haber muchas razones para que los desarrolladores de aplicaciones se alejen de la App Store. Por ejemplo:

  • Querer evitar el pago de tasas/porcentajes a Apple
  • La aplicación tiene una funcionalidad que no es posible en la App Store debido a su requisito de sandboxing o a las directrices de revisión de Apple
  • No querer gastar tiempo en entrar en la App Store (normalmente para programas que han estado en el mercado mucho antes de que la App Store existiera)

Las sumas de comprobación son definitivamente una forma muy común de validar los archivos descargados. Si se combina con un certificado de autenticidad criptográficamente seguro para la suma de comprobación, se puede tener un cierto grado de confianza en que el archivo descargado procede del desarrollador de la aplicación y no ha sido manipulado por terceros.

9 votos

Tenga en cuenta que esto sólo funciona si obtiene la suma de comprobación y el certificado a través de un canal diferente y seguro. Si descargas la suma de comprobación y el certificado por el mismo medio que la aplicación, y supones que la aplicación puede haber sido manipulada, entonces la suma de comprobación y el certificado pueden haber sido manipulados del mismo modo. En mi universidad, por ejemplo, las sumas de comprobación y las huellas dactilares de los certificados estaban a disposición del personal de TI en el servicio de asistencia de TI físico del campus en forma de impresiones.

5 votos

Una cuarta razón común es que la aplicación tiene una funcionalidad no permitida por los términos de servicio de la App Store. Por ejemplo, los ToS tienen requisitos estrictos sobre las aplicaciones que ejecutan código que no fue enviado a la App Store, y la mayoría de los entornos de desarrollo de software violan eso. (La única razón por la que Xcode está permitido en la App Store es que Apple es libre de ignorar sus propios ToS).

2 votos

Una razón adicional: Apple no permite software gratuito en la App Store . Al distribuir un programa a través de la App Store, un desarrollador está sometiendo a sus usuarios a acciones legales por parte de Apple si infringen alguna de las normas de uso de Apple. Un desarrollador que quiera que sus usuarios puedan (por ejemplo) compartir el programa con un amigo sin temor al equipo legal de Apple no podría distribuir su programa a través de la App Store. Así pues, para muchos desarrolladores se trata de una decisión ética, más que práctica.

11voto

benwiggy Puntos 8

Si los desarrolladores pagan a Apple 99 dólares al año, pueden firmar criptográficamente sus aplicaciones, para que el sistema operativo reconozca que sus apps provienen de desarrolladores identificados y de confianza.

El panel de Seguridad en las Preferencias del Sistema tiene un ajuste para permitir aplicaciones de la App Store solamente, o "App Store y desarrolladores identificados". (Antes había una tercera opción: "Cualquiera").

En el primer lanzamiento, la aplicación será verificada, y cualquier "modificación" por parte del malware debería ser detectada en esta etapa. Apple puede revocar los certificados de los desarrolladores existentes.

Por tanto, debería ser "seguro" permitir el lanzamiento de aplicaciones de desarrolladores identificados, aunque no sean de la App Store.

Sin embargo, a algunos desarrolladores les puede molestar tener que pagar a Apple sólo por escribir algo de código. Los productos multiplataforma, sobre todo los que se originan en Linux o en productos genéricos de Unix (por ejemplo, el software de código abierto) pueden no ver ningún sentido o beneficio en el uso de la App Store, e incluso pueden oponerse filosóficamente a ella.

El software que no es una aplicación tampoco es elegible para la App Store, por ejemplo, lenguajes como Python, que no es más que un marco instalado, al que se accede en la línea de comandos.

4voto

Davide Giraudo Puntos 95813

Hay algunos tipos de aplicaciones que no están permitidas en la App Store pero que siguen siendo útiles o realmente necesarias para realizar un trabajo. La respuesta aceptada enumera algunas de las razones. A veces, los desarrolladores de aplicaciones necesitamos acceder a determinadas API para proporcionar la funcionalidad prevista, pero Apple no permite que haya aplicaciones en la App Store que accedan a ellas. Como ejemplo concreto, mi empresa proporciona un cliente VPN y necesitamos acceder a APIs de bajo nivel para poder realizar conexiones VPN. Pero el acceso a estas API está prohibido para las aplicaciones de la App Store.

Apple ha reconocido que hay aplicaciones que simplemente no pueden distribuirse a través de la App Store, por diversas razones, y ha proporcionado una alternativa para garantizar al menos cierta seguridad a los usuarios: Los desarrolladores pueden (y ahora a veces deben) notarizar aplicaciones. Por ejemplo, nosotros debe notarizar al distribuir extensiones del núcleo o del sistema. Como usuario, en realidad necesita activamente desactivar la protección de la integridad del sistema para permitir aplicaciones no anotadas con extensiones del núcleo o del sistema en MacOS 10.15 Catalina y 11.0 Big Sur.

Lo que significa la notarización es que los desarrolladores creamos una aplicación, la pasamos a Apple, que la escanea y si Apple considera que la aplicación está libre de malware, se guarda un "ticket" con Apple que MacOS puede consultar. (Los desarrolladores pueden "grapar" el ticket a la aplicación para que MacOS no tenga que consultarlo a través de Internet. Está firmado criptográficamente por Apple para que no se pueda falsificar). La aplicación no se revisa como en la App Store, sino que se realiza una comprobación automática de malware y eso es todo.

Cuando se inicia una aplicación notariada de este tipo, aparece un cuadro de diálogo que advierte que la aplicación ha sido proporcionada por un desarrollador de terceros, pero también informa de que Apple la ha analizado y la ha considerado segura para su ejecución:

Image

Cuando veas este cuadro de diálogo (el texto puede cambiar, pero contendrá una frase que indica que Apple lo ha comprobado), es razonablemente seguro para ti, como usuario, iniciar esa aplicación notarial de terceros. La notarización garantiza que la aplicación no ha sido manipulada (de lo contrario, el signo criptográfico se rompería y MacOS se negaría a iniciarla). Apple garantiza que ha comprobado que la aplicación no tiene "contenido malicioso".

Esto no garantía que la aplicación no contiene contenido malicioso (los desarrolladores pueden ocultar cosas a Apple si realmente quieren). Sólo que Apple no fue capaz de encontrar ninguno. Sin embargo, el proceso de notarización permite a Apple revocar retroactivamente un ticket si la app resulta ser maliciosa, impidiendo así que la app se ejecute en tu Mac. Apple ya podía hacerlo antes con aplicaciones firmadas, pero sólo revocando el certificado del desarrollador, bloqueando así todo aplicaciones de dicho desarrollador. La notarización permite a Apple bloquear a nivel de aplicación y versión. Así, Apple puede bloquear específicamente la versión 1.2.3 de Foo.app pero permite la ejecución de la versión 1.2.4.

2voto

John Keates Puntos 711

A veces simplemente no hay una razón específica. Muchos programas y desarrolladores existen desde hace décadas y la AppStore no es algo que nos venga a la mente como una gran prioridad.

Generalmente las cosas están en esa tienda si:

  1. Los desarrolladores quieren la UX
  2. Los desarrolladores necesitan algunas de las funciones que ofrece la tienda

Si esas condiciones no entran en juego, el trabajo requerido para añadirlo en una tienda no tiene sentido si ese trabajo también podría utilizarse para nuevas características, correcciones o simplemente para irse de vacaciones un rato.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X