iOS Trousseau de Sécurité
nous voulons utiliser des certificats sur l'iPhone pour authentifier pour MS Exchange de Synchronisation. Nous ne sommes pas sûr de savoir comment le concept de sécurité est mis en place pour protéger ces certificats.
par exemple, est-il possible d'obtenir le "plein" Trousseau d'accès sur l'iPhone si pas de ScreenLock est-il activé?
(ou avec un iPhone Jailbreaké).
Quelqu'un a des liens à ce sujet?
- Cette question serait approprié à security.stackexchange.com
- Encore, très pertinent pour nous tous iOS devs qui fréquente de Débordement de Pile. Peut-être que nous devrions tous nous visiter security.stackexchange.com de plus en plus fréquemment? 🙂
Vous devez vous connecter pour publier un commentaire.
De Fraunhofer étude sur iOS trousseau de sécurité:
De ce que je peux dire, il y a deux niveaux de cryptage que l'iOS trousseau utilise. Le premier niveau utilise l'écran de verrouillage code de mot de passe comme clé de chiffrement. Le deuxième niveau utilise une clé générée et stockée sur l'appareil.
De Fraunhofer chercheurs ont compris comment contourner le deuxième niveau. C'est le "plus facile" à autour de, depuis la clé de chiffrement est stocké sur l'appareil. Donc sur iOS4, leur méthode ne fonctionne qu'avec le keychain entrées qui n'utilisent PAS kSecAttrAccessibleWhenUnlocked ou kSecAttrAccessibleWhenUnlockedThisdeviceonly, parce que ces entrées de résider dans la mémoire avec le premier niveau décrypté, même lorsque le téléphone est verrouillé.
Bas de ligne:
Si vous devez stocker des données sensibles, à mieux utiliser votre propre chiffrement. Et ne les stockez pas la touche sur l'appareil.
Edit:
Il existe de nombreux articles de presse qui citent le Fraunhofer étude et de rassurer ses lecteurs de ne pas s'inquiéter, à moins que leurs appareils sont volés, parce que cette attaque ne peut être fait avec un accès physique à l'appareil.
Je suis douteuse. Le fait que les chercheurs n'ont leurs tests avec un accès physique au téléphone semble avoir été simplement un moyen de simplifier le problème, plutôt que d'une limitation. C'est leur description de ce qu'ils ont fait pour déchiffrer le trousseau des entrées:
Comme quelqu'un qui a utilisé le jailbreak.moi sait que, cette opération ne nécessite pas de physique l'accès à l'appareil. Théoriquement, il devrait être facile à modifier le jailbreak.me code et de le automatiser les suivantes:
Donc une fois de plus, être prudent sur ce que vous mettez dans le trousseau d'accès.
Normalement, le trousseau de clés serait le moyen recommandé pour stocker un tel certificat. Toutefois, il a été découvert que le jailbreak peut être utilisé pour contourner la sécurité du trousseau (l'article).
kSecAttrAccessibleAlways
etkSecAttrAccessibleAlwaysThisDeviceOnly
. Voir forum.agile.ws/index.php?/topic/... pour le mo de détails.Franhofer a fait une étude sur la sécurité de l'iPhone Trousseau :
http://www.sit.fraunhofer.de/Images/sc_iPhone%20Passwords_tcm501-80443.pdf
Je peux répondre à la partie de votre question, mais puisque l'autre partie est encore inconnue, je suis à droit de vote de la question comme je suis aussi impatients de connaître la réponse.
La partie à laquelle je peux répondre est la suivante: "pouvez obtenir la pleine application trousseau d'accès si aucune screenlock est activé. Non, chaque application dispose de son propre trousseau de la zone sur l'iphone, ce qui signifie qu'une application ne peut accéder à ses propres secrets. Ces secrets ne sont pas verrouillés pour l'application elle-même, donc il n'y a aucun moyen de cacher le trousseau des entrées à partir de l'application elle-même. Donc, pour résumer: une application peut lire ses propres entrées, et pas d'autres entrées.
Ce que je suis intéressé de savoir si c'est ce qui se passe sur les appareils jailbreaké. Sont des porte-clés de toutes les applications exposées une fois qu'un appareil a un jailbreak?