http://www.oocities.org/yvesponline/irma.jpg
Version imprimable
La notion d' "urgence" pour le correctif java est une notion plutôt relative, je trouve. La détection du problème ne date pas d'hier...
J' espère que ce correctif sera suffisant pour la suite des evenements...
C'est clair hier le patch était déjà à disposition :roll:
Sur quoi tu te bases pour dire que les deux failles étaient connues par Oracle depuis longtemps ? De son côté Oracle indique que les problèmes lui ont été remontées début février ! Tu aurais souhaité qu'ils retardent la sortie du patch 15 qui corrigeait des failles dites activement exploitées ?
a+
Philippe
Suite à une emmerde, j'ai viré Java à la poubelle il y a deux jours et je ne vois vraiment pas pourquoi je le réinstallerais. Si un logiciel ne peut pas fonctionner sans, tant pis.
A partir de Java 1.7.0 u21 (prévu pour être publié en avril), les Applets devront être signées (par un certificat reconnu par une autorité) pour s'exécuter dans le navigateur de manière "confortable" pour l'utilisateur (oui je sais ce n'est pas très clair comme terme).
Si j'ai bien compris la FAQ en bas de l'article, les Applets non-signées afficheront un nombre plus important de boites de dialogues de sécurité et l'utilisateur pourra plus facilement terminer l'exécution d'un programme en cas de comportement dangereux.
De plus Oracle se réserver le droit de restreindre encore plus le mode d'exécution des applet "self-signed" (avec un certificat temporaire généré par le developpeur lui-même) ou non-signées dans les mises à jour suivantes.
Citation:
Envoyé par http://www.oracle.com/technetwork/java/javase/tech/java-code-signing-1915323.html
Lexsi démystifie les failles du plugin Java
Et sort un guide qui explique comment contrôler la machine d’un utilisateur à distance
Comme la communauté Java, le cabinet indépendant de conseil en sécurité de l’information Lexsi a remarqué les failles dans la sécurité du langage.
Il a publié sur son blog la manière dont la librairie JNA (Java Native Access), qui facilite l’interaction avec la mémoire et l’exécution du code natif, pourrait être utilisée pour injecter du code à distance.
Grâce à cette bibliothèque, la réservation d’un espace mémoire est rendue possible par l’objet Memory.
La structure décrit six types de situations qui semblent présenter des forteresses de prime abord, mais qui peuvent être contournées :
- l’utilisation d’une session graphique déportée type Citrix ou autre ;
- l’ensemble des applicatifs installés sur la machine est à jour ;
- un antivirus dont les définitions sont à jour est installé et actif ;
- l’accès à internet est protégé par des équipements de type WAF, proxy HTTP authentifiant ;
- un système de SRP (Software Restriction Policy) ne permet d’exécuter qu’une application : un navigateur internet ainsi que ses plugins (flash, java) ;
- ce même système ne permet l’écriture des données qu’aux seuls endroits où le navigateur a la nécessité d’écrire des fichiers temporaires (cookie, cache, etc.).
Elle va même jusqu’à fournir le code source et les lignes de commande pour perpétrer une telle action. En quelques lignes de code, un individu peut efficacement et simplement envoyer à distance une charge malveillante de type « meterpreter » de Metasploit en contournant l’ensemble de ces restrictions.
Malgré les efforts d’Oracle pour améliorer la sécurité du langage, le plugin Java reste vulnérable à de nombreux types d’attaques. Les restrictions introduites par la société, notamment le blocage des applets non signés, permettent néanmoins de limiter les risques. Pour ceux qui n’utilisent pas le plugin, les chercheurs conseillent tout simplement de le supprimer.
Source : blog Lexsi
Et vous ?
:fleche: Que pensez-vous du geste de Lexsi ?
:fleche: Désactiver la JNA serait-il une solution aux problèmes causés par les failles de sécurité ?
Permettre l'exécution de code natif dans une applet est sans doute une mauvaise idée, effectivement. Ca casse un peu l'idée de bac à sable...
Je serais tenter de dire qu'Oracle ne fait pas son boulot. Mais loin d'être spécialiste, je pose plutôt la question : Oracle a-t-il fait son boulot quand on voit cette facilité apparente ?
C'est délirant, non ?
Sauf que pour utiliser JNA, il faut avoir donner l'autorisation d’exécuter du code Java non sécurisé. Donc cette société enfonce une porte ouverte, a moins qu'elle ait trouvé un moyen d'utiliser JNA depuis la sandbox, ce qui ne semble pas être le cas.
Si Lexsi viens de découvrir que Java permet de faire appel à du code natif, je m'inquiète vraiment de leur sérieux et je ne leur confierais certainement pas la moindre mission de sécurité.
La question n'a pas vraiment de sens.Citation:
Envoyé par Stéphane le calme
JNA ne fait pas partie de Java et n'est pas désactivable. C'est juste une bibliothèque native que l'on peux ajouter à son application comme le sont SWT, LWJGL, ...
Et comme il s'agit d'une bibliothèque native elle n'est de toute façon pas utilisable dans un applet si on n'a pas préalablement diminué la sécurité.
En meme temps, supprimer quelque chose qu'on n'utilise pas, c'est un peu le bon sens. Le probleme, c'est plutot pour ceux qui l'utilisent...
Bah à partir du moment un un popup demande à l'utilisateur s'il accepte ou non que l'applet accede aux ressources, je vois pas trop le probleme. Apres tout, c'est pareil sur Android. L'utilisateur regarde de quoi a besoin une appli qu'il veut installer et accepte ou non l'installation.Citation:
Envoyé par Traroth2
Parce que sinon, dans une applet, il ne serait pas possible d'utiliser pas mal de ressources interessantes comme par exemple les librairies OpenGL. Ce qui enleverait beaucoup de leur intéret...
Je suis d'accord, mais par contre, il faut avouer que le message d'avertissement de Sun/Oracle n'est pas assez dissuasif.
Ils auraient du opter pour quelquechose du style de ce que fait Firefox pour les connexion non sécurisées, ce qui éviterait que les utilisateurs cliquent sur "oui" sans réfléchir :
http://support.cdn.mozilla.net/media...-25-5809bb.jpg
Bonjour
Je vous rappelle que JNA (contrairement à JNI) ne fait pas partie de l'API standard Java, c'est une bibliothèque tierce, cela devrait être précisé dans l'article, c'est loin d'être un détail.
P.S : Uther m'a doublé ;)
Comment accéder à OpenGL, OpenCL, OpenAL, OpenVG et OpenMAX sans code natif? Actuellement, on ne peut exécuter du code natif que dans une applet signée, pas dans une applet non signée.
Cela sera un obstacle de plus pour les développeurs de jeux vidéo indépendants qui n'ont pas nécessairement les moyens de payer plusieurs centaines de dollars par an pour un certificat dit de confiance. Pour eux, ce n'est pas vraiment une bonne nouvelle. Un pirate peut très bien obtenir ce genre de certificat.
Oui, surtout que je ne suis pas sûr de qui s'intéresse le plus à tes données personnelles entre les petits développeurs indépendants et les riches entreprises de développement qui auront le certificat...
Après, si l'organisme de certification fait bien son travail, ça devrait quand même permettre à l'utilisateur de cerner à quel "degré" de danger il s'expose, non?
Les organismes de certification ne font que garantir l'identité de la personne, pas son honnêteté. A la limite ça permet à la justice de remonter à l'adresse de la personne mais je pense que même ça, ça doit être facile a falsifier.
Et si le pirate te vole tes données personnelles, légalement en mettant une clause planquée au milieu de conditions d'utilisations interminable, il n'y a juste rien à faire.
Bonsoir,
Je souhaite une précision si la faille concerne les applets ou bien on peut l'exploiter sans la réponse de l'utilisateur ?
Parce que un applet qui accède au disque dur si on dit oui au message je vois pas ou est la faille, c'est juste bluffer l'utilisateur lambda qui comme les active x va dire oui sans penser a mal.
Car il me semble que metasploit auto signe les applets générer pour justement être en mesure d’exécuter le meterpreter.
Enfin si vous pouvez m'éclairer.
Merci.
En effet, il y a eu, récemment, des failles dans Java qui permettaient d’exécuter du code dangereux sans que l'utilisateur ne soit averti. Mais ces failles ont été corrigées et ne sont plus exploitables si on a une JVM à jour.
L'article cité par contre se contente de présenter l'utilisation de JNA pour essayer de hacker un système sécurisé, mais c'est inutilisable sans accord de l'utilisateur, ou sans l'utilisation d'une faille(corrigées depuis).
Mise à jour du 27/03/2013
94 % des utilisateurs de Java seraient exposés à des exploits,
75 % exécutent un ancien JRE, indique un rapport de Websense
Avec les nombreuses failles qui touchent l’écosystème Java, les entreprises utilisant les applications Java seraient exposées à des attaques de pirates.
En effet, il est rapporté par Websense que 94 % des terminaux faisant usage d’un logiciel Java sont vulnérables à un exploit au minimum sur le JRE.
L’entreprise note cependant que bon nombre de ceux-ci exécuteraient une version dépassée de la plateforme Java. En effet, trois machines sur quatre utiliseraient un JRE vieux d’au moins six mois, selon la même enquête. Plus de 50 % accuseraient un retard de deux ans sur les mises à jour des correctifs de sécurité.
Depuis des mois déjà, les utilisateurs ont été invités à désactiver Java de leur navigateur à cause des problèmes relatifs à sa sécurité.
Pour les entreprises qui ont l’impératif d’utiliser Java sur un site en particulier, il est conseillé d’utiliser le JRE uniquement pour lui et de le désactiver ailleurs.
Oracle recommande aux utilisateurs de Java 1.6 de migrer vers le JDK 7 pour recevoir des correctifs de sécurité (la version 1.6 étant en fin de cycle avec la sortie de sa mise à jour 43).
Il faut noter par ailleurs que cette version dispose de nouvelles options de sécurité permettant que les applets non signés génèrent toujours un message d’avertissement à l’utilisateur avant d’être exécutés.
Ces données sont à prendre avec modération, puisqu’elles ne concernent que les applications contrôlées par le service Websense. Données qui ont conduit au diagramme ci-dessous.
Source : Websense
Et vous ?
:fleche: Que pensez-vous de cette étude ? Les utilisateurs ne sont-ils pas les premiers à s’exposer en n’appliquant pas les mises à jour ?
Tiens, il faudrait que je vérifie sur l'ordi du boulot avec Windows 2000 la version du JRE... :aie: La dernière version est compatible Windows 2000 ? (bon, d'un autre côté, j'ai pas les droits admin dessus, je pourrais pas faire la mise à jour)
Si c'est une applet -> T'as intérêt à avoir une bonne raison de demander à sortir de la sandbox. Si ton problème est le stockage (parties sauvées), direction jnlp, qui fourni une api d'accès aux fichiers sécurisées ne nécessitant pas de signature (tu n'a accès qu'au fichiers appartenant à ton application en fait)
Si c'est une application indépendante -> Ben c'est comme tout les reste des jeux que t'installe sur ta machine, t'as pas besoin de certificats pour ça
Quand à l'argument de prix pour le développeur indépendant: Je suis désolé, mais si le développement de jeu java est ton core buisness, tu met les moyens pour faire fonctionner ton buisness: Lacher 160€ par an, c'est rien en frais de toutes façons à coté de la bécane à 700€, de l'hébergement sur serveur dédié à 30€ / mois, de l'adsl à 30€/ mois
Et si vraiment tu continue à trouver ça trop cher, tu te trouve 3 autres auteurs d'apps dans le même état que toi et vous faites une association qui achète ce certificat ensemble.
Perdu!
Fallait investir dans du solaris :aie:
Maintenant, ce sont les version "supportées des OS", pour les autres => faut essayer ^^
Je ne vois pas la version 1.5 dans le camembert!
Le pire que j'ai vu c'est des applis Orable Forms avec jinitiator (donc JRE 1.3 like) sous XP SP2.
Ca fait peur ! Et si je vous dis que c'est la Police d'un pays qui a cette config, c'est inquiétant, non ? ,:aie:
Ah oui, j'ai oublié de dire quand : il y a 2ans. Donc, aujourd'hui rien n'a dû changer. :aie:
Depuis que je l'ai désinstallé, je me suis jamais retrouvé dans une situation ou je devais l'installer pour utiliser une quelconque application ou accéder à une fonctionnalité d'un site. D'un coté, je m'aventure pas loin coté internet. Mais je viens de me rendre compte que je pouvais m'en passer et que je suis pas emmerdé par ces mise à jour à répétition. La question se pose. Est-ce que l'utilisateur lambda a vraiment besoin d'une JVM pour aller sur Web ?
+1 pour le non, l'utilisateur lambda n'en a pas besoin. Je ne comprends d'ailleurs toujours pas pourquoi le plugin n'est pas distribué à part :)
Sans doute que ça faisait partie d'une stratégie de promotion de java, la base d'un discours du style "70% des machines sont équipées".
Maintenant dans les faits, à mon sens les applications JNLP ou les applets sont plus très intéressantes pour les gros sites tout public. Par contre pour certaines applications multi-utilisateurs en entreprise c'est intéressant. Et à ce moment là il serait effectivement envisageable de devoir installer un plug-ins et 2 ou 3 trucs à part. Quant à la sécurité? Si on écrit et consomme ses propres applications, pas trop de soucis...
Il me semble bien que l'applet java n'est plus nécessaire depuis l'année dernière.
Java 7 : découverte d’une faille de sécurité dans l’API Reflector
permettant de contourner la sécurité Sandbox de la plateforme
Cela fait à peine quelques jours qu’un patch de sécurité pour Java 7 (Java Update 21) a été publié par Oracle, qu’une nouvelle faille de sécurité a été découverte pour la plateforme.
La faille concerne l’« API Reflector » et sa découverte a été réalisée par Adam Gowdiak, CEO de l’entreprise Security Exploration.
La faille rend vulnérables les systèmes exécutant Java 7. Même ceux qui exécutent la toute récente version estampillée Java 1.7.0_21-b11 ne sont pas épargnés. Correctement exploitée, elle permet à un hacker d’outrepasser la sécurité « sandbox » de Java. Cependant, une action de l'utilisateur est requise dans un scénario web pour le succès d’une attaque initiée par un hacker.
Le plus inquiétant encore, c’est que l’exploitation de la faille ne se limite pas uniquement à JDK 7. En effet, même la version serveur du JRE est concernée. Pour le comment de la chose, Adam Gowdiak donne une liste d’API et de composants rendant possible l’exécution de code arbitraire dans l’application serveur. C’est ainsi que nous avons : RMI et LDAP, l’implémentation de l’interpréteur XSLT de SUN, diverses implémentations SQL.
Par ailleurs, on note que la faille avait déjà été reportée à Oracle l’année passée. Surpris que celle-ci soit de nouveau présente dans les produits Java, Adam Gowdiak conclut qu’Oracle s’est concentré sur le correctif des mesures de sécurité liées aux appels de fonction de l’« API Reflector ».
Source : Seclist
Il faut que l'utilisateur accepte d'exécuter du code dangereux pour que cette "faille" soit exploitable.
Donc si l'utilisateur est assez bête pour ça il sera aussi suffisamment bête pour autoriser l'applet à nettoyer son disque dur (Ou surtout installer dieu sait quoi dessus).Citation:
a user needs to accept the risk of executing a potentially malicious Java application when a security warning window is displayed
Bref, cette "faille" est assez anecdotique comparativement à celles qui sorte de la sandbox sans en demander l’autorisation à l'utilisateur (Et visiblement il y en a qui se donne à coeur joie).
Bonjour
Je vais peut être faire le nostalgique, la mauvaise langue ou le pinailleur...
Mais il me semble que l'on parle beaucoup (trop ?) des failles de sécurité depuis l'ère Oracle de Java.
Attention, je ne dis pas que ces problèmes n'existaient pas chez Sun, ils existent bel et bien.
Serait-ce dû au fait que Java s'est installé dans à peu près toutes les niches possibles (dixit la propagande)? Ou est-ce dû au fait que maintenant que c'est Oracle qui "gère" Java, les gens seraient devenu plus méfiants?
Au final, OpenJava ne serait-il pas une alternative crédible?
@++
A la base le problème est que si quelqu'un veut infecter un max d'utilisateur via une page web, il a surtout trois choix:
javascript/html
java
flash
Les failles "javascript/html" dépendent du navigateur.
Flash semble assez béton, conçut à la base pour du rendu uniquement, donc bien sandboxé tôt.
Reste java et sa jvm très compliqué, généraliste, très répandue, souvent pas très à jour.
Donc pour infecter quelqu'un de passage sur une page web, chercher des failles dans java semble tout à fait indiqué.
Que java soit plus ou moins open ou gérer par le saint père, ça ne changera pas énormément de chose au problème.
La solution est que les navigateurs bloque plus les applet java, même ceux ne demandant pas de droits, et que les messages d'avertissements sur ceux demandant des droits fassent plus peur.