
CVE-2023-40429 : Une application pourrait être en mesure d'accéder aux données sensibles de l'utilisateur.
HostName est un exemple d'application montrant comment une application tierce peut accéder au nom de l'appareil d'un utilisateur sans l'entitlement com.apple.developer.device-information.user-assigned-device-name.
Sous iOS 16, Apple a ajouté l'entitlement com.apple.developer.device-information.user-assigned-device-name pour empêcher les applications tierces de prendre l'empreinte numérique d'un utilisateur via le nom de l'appareil. Cependant, l'API ProcessInfo.processInfo.hostName a été cassée dans le processus, ce qui permettait à un développeur tiers d'obtenir le nom d'hôte réseau de l'appareil sans entitlement. Bien que le nom d'hôte ne soit pas une copie exacte à 1:1 du nom de l'appareil, il s'en rapproche. Par exemple, mon appareil s'appelle Astronaut Sloth, ce qui me donne un nom d'hôte de Astronaut-Sloth.
Lorsqu'un développeur tiers accède à l'API ProcessInfo.processInfo.hostName, l'utilisateur voit apparaître une invite « Allow to communicate with Local Network Devices » (Autoriser à communiquer avec les périphériques du réseau local). Sous iOS 15, l'API ProcessInfo.processInfo.hostName retournait localhost si l'utilisateur refusait cette API. Cependant, sous iOS 16, cela s'est également cassé : le nom de l'appareil était toujours retourné, quelle que soit la réponse de l'utilisateur.