¿Existe alguna API estándar que permita que un malware de Android descargue e instale un certificado SSL / TLS como RCA, en el almacén de claves predeterminado, en dispositivos no root?
Creo que este es un problema muy subestimado.
Cualquier aplicación puede crear un nuevo KeyStore
y hacer cosas arbitrarias con él. Por lo tanto, es posible que un malware importe una CA raíz descargada y la use para conexiones TLS que se originan a partir del malware mismo .
Sin embargo, esto no afecta a ninguna otra aplicación, ya que KeyStore
s global no se ve afectado. Para cambiarlo utilizando las API oficiales, es necesario crear un intento de instalación a través de createInstallIntent
, que luego puede usarse para abrir el cuadro de diálogo de instalación del certificado. A menos que el usuario confirme el diálogo, el certificado no se instalará.
Tenga en cuenta que esta respuesta no considera las vulnerabilidades u otros medios fuera de las API normales para obtener acceso de escritura al KeyStore
s global, ya que su pregunta explícitamente solicita solo la API estándar. Por supuesto, una aplicación con acceso a la raíz puede utilizar otros medios para cambiar la lista de entidades emisoras de certificados raíz.
Lea otras preguntas en las etiquetas tls certificates certificate-authority android