Openajax Et Les Dangers Des Mashup

L’utilisation massive de services Web et de leurs cohortes de mashup et la mise en oeuvre en quelques clics de ces bouts de code est aujourd’hui un sujet extrêmement préoccupant pour qui s’intéresse à la sécurité informatique.
Et ce tant dans ses aboutissants privés : le détournement de données personnelles et la manipulation, que professionnels : où l’intelligence économique et les méthodes agressives actuelles rendent très floue la frontière entre l’entreprise et la malfaisance… La fin justifie les moyens.
Les services d’agrégation de contenu exogène, ou mashup, représentent une menace pour les systèmes d’information.
Je reviens sur un article paru le 9 octobre dernier sur le Monde Informatique qui s’intéresse aux avertissements lancés par le consortium OpenAjax Alliance. Cyrille Chausson y met en avant l’”exécution Javascript non-contrôlées et [l']immaturité des développeurs“.
Car rappelons-le, la super technologie sur laquelle reposent tous les espoirs des valeureux entrepreneurs du Web dit-2.0 n’est autre que Javascript, le langage côté client (qui s’exécute sur votre machine) qui déjà aux plus belles heures de l’An 2000 pré-Bulle permettait de créer ces roll-overs sur les boutons de navigation, de vous alerter de la non saisie de votre email dans un formulaire et autres menus déroulants plus ou moins buggués.
L’assemblage hasardeux des technologies et la Ruée vers le 2.0
Aujourd’hui c’est donc ce même langage, s’appuyant sur des librairies de scripts, le DOM (Document object Model) de la page HTML, les langages XML (information) et CSS 2 (habillage graphique) et les requêtes serveur asynchrones (ne nécessitant pas le changement ou le rechargement de la page), qui constitue AJAX.
Bien qu’un grand nombre de développeurs de qualité travaillent au sein de cette industrie et sans vouloir amoindrir le formidable intérêt que suscite le fourmillement d’idées, l’explosion de créativité du secteur, il faut être honnête, dans cette Ruée vers le 2.0, pour un grand nombre des sociétés aux modes de production “agiles” et une partie des webmasters élaborant individuellement mashups et autres plugins, c’est du grand bricolage.
Normal. La facilité avec laquelle les briques fournies (API, librairies, applications Opensource, ..) sont rendues manipulables par un jeune débrouillard ou un développeur débutant sans comprendre le code utilisé repousse très loin toute notion de vérification de la sécurité des développements réalisés.
Sécurité zéro
Les services Web et mashup ne sont pas lancés dans le 2.0 sans la possibilité de les inclure et de les connecter aux travers des pages de leurs utilisateurs. C’est le modèle publicitaire qui veut ça : diffusion virale, abonnés, affiliation, pseudo-statistiques (on pourrait revenir sur ce sujet).
Leur intégrétation est donc toujours plus facilitée, sous la forme de widgets dans les sites et pages personnalisables, de plugins pour les socles d’édition célèbres comme Wordpress, en un clic l’échange de flux d’information au format XML - comme les fameux fichiers RSS - a lieu dans les tuyaux d’un nombre plus ou moins complexe d’intermédiaires : sources d’information, services utilisés, applications et librairie de scripts Opensource employés, customisations de code, ..
Lors de l’AjaxWorld Conference qui s’est tenue du 2 au 4 octobre à Santa Clara (Californie), David Boloker, fondateur de l’OpenAjax Alliance et CTO chez IBM a pointé du doigt les menaces que constituent les services d’agrégation de contenu exogène (ou mashup) pour les systèmes d’informations. Selon lui, [les mashup] “représentent deux dangers : un premier très connu, représenté par le scripting côté serveur, et dont on peut se protéger. Le second, davantage lié à une brique fondamentale d’Ajax, Javascript, qui nécessite une exécution sur le poste client. “Si vous créez des mashup à partir de sources internes ou de partenaires - des sources de confiance -, les mashup sont sécurisés. Le problème intervient surtout quand on crée des agrégations entre ma société et une personne inconnue, qui peut soit injecter du code Javascript malformé, soit essayer de prendre le contrôle de ma machine. Comment alors sécuriser les mashup en autorisant ou non leur accès ?” Un problème que l’OpenAjax Alliance compte par ailleurs résoudre en travaillant en collaboration avec ses membres et le W3C.”
David Boloker a mis en cause l’immaturité des développements provoqué notamment par un manque d’expérience de certains développeurs. “Si les projets de mashup ont abouti grâce à des développeurs chevronnées, certaines personnes développent en Javascript sans savoir comment écrire le code. Et dans le cas de mashup, cela peut être catastrophique“.
Vient le moment où je noircis le tableau
Au-delà de tous les business plan et des modèles économiques à inventer, le problème des données personnelles qu’on vous à invite à gérer à votre place à chaque nouveau service sans aucune garantie - puisque c’est “gratuit” - est déjà posé.
Celui des études comportementales de votre consommation de l’Internet ne vous engage encore qu’à faire vivre les panels des agences qui doivent remplacer la ménagère de moins de 50 ans. La démocratisation de l’accès à Internet a eu lieu et les cookies qui nous dérangeaient il y a quelques années deviennent un combat d’arrière-garde.
La cybercriminalité prospère et les quelques dizaines de spams que vous purgez journalièrement avec un petit froncement de sourcils ne sont que des balbutiements d’acariens comparés à des intrusions malveillantes de communautés Opensource mal encadrées, à la gestion de l’information opaque d’un service de diffusion de vidéo à très forte audience ou à l’exploitations de failles XML/RSS.
Sources :
L’insécurité 2.0 at Blog.Vulnerabilite.com Le 1 novembre 2006 à 12:03
[...] Dominique Van-Den-Abbeel nous dépeint un tableau du Web 2.0 et des Mashups pour le moins obscure. En sourcant Le Monde et le consortium OpenAjax, il met en avant la relative insécurité des développements Ajax. Les services d’agrégation de contenu exogène, ou mashup, représentent une menace pour les systèmes d’information… [...]
RSSI 2.0 Le 8 novembre 2006 à 12:38
L’insécurité 2.0…
En visitant le blog de vulnerabilite.com, j’ai lu le petit billet suivant :L’insécurité 2.0.
Cela m’a tout simplement rappelé l’un de mes précédents billets dans lequel je faisais état de certains risques liés à l’absence de prise en….