next up previous contents index
Next: Eléments de sécurité propres Up: Considérations de sécurité. Previous: Considérations de sécurité.

Première approche.

L'utilisation des codes mobiles soulèvent plusieurs questions du domaine de la sécurité :

1.
Le contrôle d'accès  : est-ce que l'exécution de ce code est permise ?
2.
L'authentification  : l'utilisateur est-il un utilisateur valide ?
3.
L'intégrité  des données : pour s'assurer que le code est reçu intact.
4.
La non-répudiation  : l'utilisation de ce code doit être reconnue par le serveur et par le client, en particulier si son utilisation est payante.
5.
La confidentialité  des données : pour protéger les parties sensibles du code.
6.
L'audit  : on doit pouvoir tracer l'exécution de codes mobiles.
Les techniques pour garantir ces points sont bien connus. Leur mise en place n'est pas un problème technique, mais plutôt un problème économique et politique, dans la mesure ou certaines d'entre elles mettent en jeu des mécanismes de cryptographie  forts au sein des protocoles de communications. Les points 2, 3 et 4 sont garantis par les mecanismes de signatures cryptographiques tandis que le point 5 relève de la cryptographie  pure. Des logiciels comme PGP  (Pretty Good Privacy, par Phil Zimmermann) permettent en effet d'authentifier la source d'un code, d'en vérifier l'intégrité et d'en assurer la non répudiation par une simple signature numérique basé sur un système de clés asymétriques. PGP permet aussi le chiffrement fort du contenu du code, par une association de mécanismes asymétriques et symétriques.

L'exemple le plus parlant du non respect de ces règles est à mon sens l'exploit contre Hotmail découvert en 1998. Ce dernier consistait a inclure un JavaScript  à un email. Lors de son ouverture par l'utilisateur, le navigateur  l'exécutait : l'utilisateur se voyait invité à se reloguer (principe de la fausse banière de login : les vieilles techniques éculées ne sont décidemment jamais démodées). Son login et son mot de passe étaient alors envoyés par email à l'agresseur, lui donnant le contrôle total du compte. On constate qu'ici, le contrôle d'accès n'a pas été vérifié ni par le système Hotmail, ni par le navigateur  et son interpréteur  JavaScript .

Mais tôt ou tard, ces services pourront être implémentés. La question intéressante sera donc plutôt de se demander comment garantir la sécurité du système lors de l'exécution du code, une fois celui-ci validé et délivré à l'utilisateur final.


next up previous contents index
Next: Eléments de sécurité propres Up: Considérations de sécurité. Previous: Considérations de sécurité.
BLANCHER Cedric (IT)
1999-11-19