Bug en herramienta de Seguridad de Apple, permitiría a malware aparecer como Software.



Un bug existente en programas de terceras partes podría permitir a un malware aparecer como un programa legitimo firmado por Apple. Este error es causado en el método de validación utilizado por las aplicaciones para determinar si están o no firmados por Apple. Esto permite a un atacante poder diseñar una aplicación de tal manera que esta pareciera que esta firmada por Apple aunque esta no lo esté.

Cuando un desarrollador utiliza un código de firma una aplicación, este inserta una firma dentro del ejecutable que puede ser usada para que esta aplicación demuestre que no ha sido alterada, y demuestre ser de la organización que dice ser.  Algunas utilidades utilizan estas firmas incorporadas como una forma de incluir en lista blanca aplicaciones para que los usuarios se sientan seguros de que un programa es seguro de ejecutar.

Según el investigador Josh Pitts, existen varias aplicaciones que su firma podría utilizarse para poder saltarse esta verificación de firma.

La lista de aplicaciones serian:
  • VirusTotal – CVE-2018-10408
  • Google – Santa, molcodesignchecker – CVE-2018-10405
  • Facebook – OSQuery - CVE-2018-6336
  • Objective Development – LittleSnitch – CVE-2018-10470
  • F-Secure - xFence (also LittleFlocker) CVE-2018-10403
  • Objective-See – WhatsYourSign, ProcInfo, KnockKnock, LuLu, TaskExplorer (and others). – CVE-2018-10404
  • Yelp - OSXCollector – CVE-2018-10406
  • Carbon Black – Cb Response – CVE-2018-10407
La vulnerabilidad se podría explotar creando un archivo "gordo" especialmente modificado , que este basado en alguna de las aplicaciones mostradas anteriormente, para que el validador de firmas piense que la aplicación si esta firmada por Apple.

Los archivos gordos, son archivos que contienen múltiples binarios de una aplicación en particular, con diferentes versiones, cada una de estas versiones esta destinada para ejecutarse en una arquitectura de CPU en particular.

El problema es que muchas aplicaciones de terceros no están comprobando correctamente cada componente del archivo Fat para comprobar si la firma es válida. Esto hace que los programas verifiquen solo el primer binario en el archivo Fat, que está firmado correctamente por Apple, y luego confían en el resto de las secciones del archivo, incluso en la parte maliciosa.

Apple acusa a los desarrolladores


Apple indica que el problema de esta vulnerabilidad esta en el proceso de desarrollo de la aplicación, ya que existen API como "kSecCSCheckAllArchitectures" y "SecCSStrictValidate" con SecStaticCodeCheckValidity" que deberían haber sido implementados para evitar este tipo de inconvenientes.