Openajax Et Les Dangers Des Mashup

Remixe, reuse, resample
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

Mashup and widgetsAujourd’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 :

Commentaires

  1. vandevivere a écrit :

    Very interesting is’n it ? But what is a mashup in simple language (and in french) please.

    JL

  2. Dominique a écrit :

    Des services d’agrégation de contenu exogène Jean-Louis.. ahh, soit à ce qu’on dit.

  3. sid a écrit :

    Un des billets les plus réalistes que j’ai l’occasion de lire depuis quelques mois à part les wow, aaahh, huu sur le web 2.0 🙂

    Bravo pour cette synthèse, elle a le mérite de remettre les choses à leur place et je suis heureux de voir que je ne suis le seul à partager ce sentiment d’insécurité et de grand bricolage mondial à propos de ces ‘nouvelles technos’ sorties pour la plupart dans les années 80 .. 🙂

    Je viens de découvrir votre blog, il vient d’être ajouté à mes sites préférés !

  4. Dominique a écrit :

    Alors merci, cela dit je vous conseille aussi la lecture de l’article original qui m’a inspiré ce billet qui me démangeait… 😉

  5. padawan a écrit :

    @JL : mashup = salade numérique :-).

    En lisant l’article j’ai plusieurs réactions :
    – trop alarmiste, ça me rappelle vaguement un discours identique à l’arrivée du web dans l’entreprise il y a 10 ans
    – il y a quelque chose, mais je demande à voir des preuves concrètes pour faire la part des choses entre vrai problème de sécurité inhérent à la technologie, ou code pourri programmé avec les pieds par des incompétents

  6. Dominique a écrit :

    Padawan > ici le ton sera souvent critique et la différence de potentiel avec la blogosphère euphorique 2.0 pourra parfois choquer. 😉

    Pour te répondre, le problème de la sécurité informatique n’est pas balayé par la masquarade du bug de l’An 2000. Je pense simplement que là où il y a un énorme potentiel et des occasion il y a opportunisme. En 2006 le Net est devenu un endroit magnétique et juteux… pour tout le monde. 😉

  7. sid a écrit :

    Padawan > Je viens de tomber sur ca :

    http://nvd.nist.gov/nvd.cfm?cvename=CVE-2006-6507

    Et pourtant Prototype est un pas un truc codé à la va vite avec les pieds .. (La team de Sabre je crois de mémoire)

Laisser un commentaire

Votre email ne sera pas publié. Les champs requis sont marqués *

*

*


Time limit is exhausted. Please reload CAPTCHA.