La sécurité de Java

Magazine
Marque
MISC
Numéro
45
Mois de parution
septembre 2009
Spécialité(s)


Résumé

Depuis l'origine, Java utilise différentes technologies pour protéger les postes utilisateurs contre du code malveillant. Combinées, elles permettent une réelle sécurité, rarement mise en défaut. Regardons les différentes barrières mises en place dans une JVM pour interdire l'utilisation de code malveillant.


Cet article présente les différentes techniques et approches permettant de faire de Java, l'un des langages les plus sûrs : les opcodes et la JVM, le scellement des packages, certains packages spéciaux, les API, la sand box et les gardians, avant d'évoquer quelques vulnérabilités encore présentes.

1. Opcode et JVM

La première couche de sécurité de Java consiste à utiliser une machine virtuelle pour l'exécution d'un code. Cette machine virtuelle a été spécialement conçue pour réaliser une vérification complète du code, avant son exécution. Les Opcodes ont été sélectionnés pour faciliter cette analyse. Ainsi, il n'est pas possible de rédiger une classe spécialement formée pour exploiter une confusion entre un entier et un pointeur, pour déborder d'un tableau, etc.

Comme le compilateur ne peut être digne de confiance, ces vérifications sont effectuées par la JVM au chargement. Lors de l’installation d'une classe, la JVM effectue…

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous