En OS X, cuando una aplicación solicita acceso a un elemento de Llavero, se le indica al usuario si otorga o niega ese acceso.
Supuestamente, el sistema guarda no solo la ruta binaria, sino también su hash en la entrada de ACL que se crea después de que el usuario confirma la solicitud; según Apple , esto protege contra binarios modificados que tienen acceso a contraseñas de usuario y / o certificados.
¿Es esto realmente suficiente para evitar que un atacante con permisos de usuario (pero no de superusuario) recupere todas las contraseñas almacenadas?
En Linux, por ejemplo, existe la variable de entorno LD_PRELOAD
que se puede usar para cargar bibliotecas dinámicas adicionales que sobrescriben algunas funciones de biblioteca estándar con código personalizado; Usando eso, parece ser posible cambiar el código que se ejecuta dentro de un binario dado sin modificar el ejecutable base en sí mismo.
¿Hay un mecanismo similar en OS X que permita este tipo de ataque? (quizás uno de los métodos mencionados here )?