Une identité valide n'est pas une situation valide
Summary: Un protocole peut authentifier correctement des participants légitimes tout en se trompant sur la relation physique qui les relie.
La sécurité numérique repose largement sur l'identité.
Certificats, clés cryptographiques, mots de passe, authentificateurs matériels et biométrie cherchent tous, de manières différentes, à établir qu'un participant est bien celui qu'il prétend être ou qu'il contrôle un authentificateur attendu.
Mais certaines décisions de sécurité contiennent une hypothèse supplémentaire, parfois implicite :
le participant légitime est supposé se trouver dans une situation physique particulière.
C'est là qu'identité et situation se séparent.
Un protocole peut réussir dans la mauvaise situation
Imaginons deux dispositifs A et B.
A reconnaît cryptographiquement B.
B répond correctement aux défis de A.
Les clés sont valides.
Les messages ne sont pas modifiés.
Du point de vue de l'identité, tout peut sembler correct.
Pourtant, si un intermédiaire transporte les messages entre A et B alors qu'ils sont physiquement éloignés, le protocole peut observer une interaction logique valide tout en attribuant à tort une propriété physique à cette interaction.
C'est précisément ce qui rend les attaques par relais conceptuellement intéressantes.
La cryptographie peut être correcte alors que la situation est fausse.
Une attaque qui ne cherche pas nécessairement à voler l'identité
Dans une attaque classique par vol d'identifiants, l'adversaire cherche à se faire passer pour quelqu'un d'autre.
Une attaque par relais peut suivre une logique différente.
Elle peut laisser les véritables dispositifs effectuer leur authentification et simplement transporter leurs échanges entre deux endroits.
Les travaux de Francillon, Danev et Čapkun sur les systèmes automobiles PKES ont fourni une démonstration particulièrement claire : des dispositifs légitimes pouvaient être amenés à interagir à travers un relais malgré une distance physique importante, et cela indépendamment de la présence d'une authentification ou d'un chiffrement forts.
L'attaquant ne demande donc pas nécessairement au système de croire à une fausse identité.
Il cherche à lui faire croire à une fausse relation physique entre de vraies identités.
Ce que le système sait --- et ce qu'il suppose
Cette distinction permet de séparer deux catégories d'informations.
Un système peut savoir, avec un niveau d'assurance défini, qu'une clé privée a signé un défi, qu'un authentificateur a produit une réponse valide ou que deux facteurs ont été présentés.
Mais il peut seulement supposer que l'équipement qui produit cette preuve se trouve à côté du terminal, dans une pièce donnée, devant une porte ou à l'intérieur d'un véhicule --- sauf si cette propriété fait elle-même l'objet d'un mécanisme de vérification adapté.
Cette frontière entre connaissance et hypothèse est fondamentale pour construire un modèle de menace.
Localisation et co-présence ne sont pas synonymes
Ajouter une information de localisation ne résout pas automatiquement le problème.
Une position GPS, une adresse IP ou une géolocalisation réseau décrit une information concernant un dispositif ou une connexion. La co-présence est une relation entre plusieurs participants et leur environnement commun.
Deux appareils peuvent avoir des positions estimées compatibles sans que le protocole ait établi qu'ils partagent réellement le même contexte physique au même instant.
Inversement, certains scénarios peuvent nécessiter une preuve locale sans qu'une position géographique absolue soit utile.
La question n'est donc pas uniquement :
« Où est cet appareil ? »
mais :
« Quelle relation physique entre ces participants le système est-il capable d'établir ? »
Le contexte physique comme source d'évidence
La recherche sur la co-présence contextuelle explore précisément cette question.
Conti et al. décrivent les Contextual Co-presence protocols comme des approches collectant et utilisant des informations contextuelles pour améliorer la vérification de proximité dans les systèmes de co-présence et d'authentification sans interaction.
Truong et al. ont étudié plusieurs modalités --- Wi-Fi, Bluetooth, GPS et audio --- ainsi que leur combinaison pour résister aux attaques par relais. Leurs résultats montrent aussi pourquoi il faut rester prudent : la sécurité dépend du modèle d'attaquant et une modalité contextuelle isolée peut devenir faible face à un adversaire capable de manipuler le contexte observé.
Le contexte n'est donc pas magique.
Il devient intéressant lorsqu'il est transformé en évidence définie par un modèle de menace explicite.
De l'identité à la situation
C'est ici que se situe la question étudiée par Keypulse.
L'objectif conceptuel n'est pas d'opposer identité numérique et monde physique. Il est de reconnaître qu'ils décrivent des propriétés différentes.
Une architecture de sécurité peut avoir besoin d'établir :
- qui participe ;
- ce que ce participant contrôle ;
- et, dans certains cas, quelle situation physique relie réellement les participants.
Les deux premières questions sont au cœur de l'authentification traditionnelle.
La troisième ouvre le problème de la co-présence.
Une propriété supplémentaire, pas un remplacement
Parler de situation ne signifie pas que l'identité devient secondaire.
Une preuve physique sans identité peut être insuffisante. Une identité forte sans preuve physique peut également être insuffisante lorsqu'une décision dépend explicitement de la présence locale.
Le modèle pertinent dépend du cas d'usage.
Un service web distant n'a généralement aucune raison d'exiger que le client et le serveur soient physiquement co-présents.
Un système de contrôle d'accès, un dispositif sans contact, un équipement industriel ou une interaction locale entre objets peuvent, en revanche, prendre des décisions précisément parce que deux éléments sont supposés être ensemble.
Dans ces situations, la propriété physique fait partie de la politique de sécurité.
Elle mérite donc d'être vérifiée comme telle.
Une identité valide ne garantit pas une situation valide.
Cette phrase ne décrit pas une faiblesse de la cryptographie. Elle rappelle simplement une règle fondamentale de l'ingénierie de sécurité :
un mécanisme ne peut prouver que les propriétés qu'il a été conçu pour établir.
Références
- Aurélien Francillon, Boris Danev, Srdjan Čapkun, Relay Attacks on Passive Keyless Entry and Start Systems in Modern Cars, NDSS, 2011. https://eprint.iacr.org/2010/332
- Mauro Conti et al., Context-based Co-presence Detection Techniques: A Survey, Computers & Security, 2019, DOI: 10.1016/j.cose.2019.101652. https://www.sciencedirect.com/science/article/pii/S0167404819301968
- Hien Thi Thu Truong et al., Comparing and fusing different sensor modalities for relay attack resistance in Zero-Interaction Authentication, IEEE PerCom, 2014, DOI: 10.1109/PerCom.2014.6813957. https://research.aalto.fi/en/publications/comparing-and-fusing-different-sensor-modalities-for-relay-attack/
- NIST, SP 800-63B --- Digital Identity Guidelines: Authentication and Authenticator Management. https://pages.nist.gov/800-63-4/sp800-63b/authenticators/