Issuu on Google+

https

1/2

22.02.2011

FlashInformatique.epfl.ch

SECURITE EPFL

attaque

faille

Internet

URL

trous

PRESENTATION

AUDIT dangereux

pirate

p/a EPFL - Domaine IT - Station 8 - CH 1015 Lausanne - tél. +41 21 69 322 11

Web

DU SITE

Analyse

voir page 11 Actualités ForumIT de novembre J. Dousson

3

CiNN 01, édito P. Fumasoli

16

Seductive Interactions N. Meystre

22

Analyse Sécurité des appli. Web M. Ouwehand

1

Pixlr A. de Brossin

7

Médaille au SWERC C. Kauth

10

Mot-croisé: PANNE

12

Autopsie d’une attaque L. Kling

19

À votre service Certificat de notre CA M. Ouwehand

15

Et si vous clavardiez... L.Venries

17

Recherche dans my.epfl P. Viceic

24

Comment faire? Images ISO sur clé USB B. Barras

8

Agenda Projets AAA de Switch P. Mellier

13

Insomni'hack 2011 P. Such

14

Un penseur, un fignoleur … C. Kauth

18

Brèves DIT-info: retraite de Hoang Lê, nouveaux au DIT

2

Technocivilisation

5

Cahier Secure-IT

15

Zetta

23

Prochaines parutions No Délai de rédaction Parution 3

10.03.11

29.03.11

4

04.04.11

26.04.11

5

05.05.11

24.05.11

tout public public averti expert

Sécurité des applications Web Martin.Ouwehand@epfl.ch, EPFL - Domaine IT, responsable sécurité informatique

A recent security audit of our computer infrastructure found many vulnerable websites in our network. The aim of this article is therefore to give a few basic security tips and pointers to additional resources to help developpers create more secure Web applications. L’audit de sécurité informatique (voir page 11) ayant révélé de nombreux problèmes dans des applications Web aux quatre coins de l’EPFL, cet article a pour but de rappeler les principes de base en ce domaine et de donner quelques pointeurs pour en savoir plus. Un bon point de départ est sans doute le document Les dix risques de sécurité des applicatifs Web les plus critiques de l’OWASP (disponible sous owasptop10. googlecode.com/files/OWASP%20Top%20 10%20-%202010%20French.pdf).

Cet Open Web Application Security Project (owasp.org) est une association de développeurs qui a décidé de réagir contre les problèmes de sécurité omniprésents sur le Web et qui commencent à avoir un impact économique conséquent (dans un incident célèbre, des pirates ont exploité une telle faille pour mettre la main sur les codes de plus de cent millions de cartes de crédit !) Alors que le site de l’OWASP regorge de

documents, de conseils et de bouts de code très utiles (c’est donc une bonne idée d’y faire une visite), il faut bien dire qu’on s’y perd un peu, et j’invite plutôt les développeurs Web de l’EPFL à commencer par lire les dix pages du document mentionné concernant chacune un type de faille et à réfléchir si les applications qu’ils ont écrites ou qu’ils maintiennent ne sont pas vulnérables... Ces pages sont très bien faites, nous emmenant tout de suite au coeur du problème: une description, quelques exemples, comment l’éviter et enfin des pointeurs pour en savoir plus. Parmi ceux-ci, j’ai trouvé dans les cheat sheets (ce qu’écolier j’appelais donc une feuille de triche) un bon équilibre entre la concision et l’étendue des problèmes couverts. Comme le traitement donné dans ce document est assez concret et axé sur la pratique, je vais dans la suite de l’article parler des failles traitées (numérotées, comme dans le document, de A1 à A10) selon les points forts qui s’en dégagent.

Validation des données Tout appel à une application est entièrement sous le contrôle d’un éventuel attaquant, qui peut glisser des caractères imprévus dans les paramètres. Il est donc indispensable de les valider tout au début du code applicatif, et selon la logique liste blanche (par exemple, dans un nom d’utili.. /.. Suite page 6


Brèves

DIT-info Jean-Claude.Berney@epfl.ch, EPFL–Domaine IT, directeur du DIT

Départ à la retraite de Hoang Lê Hoang Lê a quitté finnovembre 2010 le groupe de gestion du DIT pour prendre une retraite bien méritée. Il était l’adjoint du directeur du DIT et il s’occupait des achats et des finances du DIT. Beaucoup de membres de l’EPFL ont eu des contacts avec lui lors de négociation de contrats de maintenance ou lors d’appels d’offres publiques. Un départ à la retraite est toujours l’occasion de faire un rappel sur une carrière. Hoang a fait ses études jusqu’au baccalauréat à Saigon au Vietnam. En 1967, il a choisi de venir en Europe pour continuer ses études dans une université francophone, il a choisi l’EPUL (c’était avant 1969). Il aurait tout aussi bien pu aller en Belgique, mais pas en France, vu la situation politique de l’époque. En 1972, il a obtenu son diplôme d’ingénieur électricien en même temps que plusieurs autres membres actuels de l’EPFL: Paul-André Rumley, Jean-Pierre Moinat, Philippe Metzner, les professeurs Claude Petitpierre et Hans Putgen. Ensuite, sans permis de travail, cela n’a pas été facile pour lui de trouver un job. Heureusement, le CHUV était en train de monter son informatique et avait besoin d’un spécialiste du langage Fortran, compétence rare à l’époque. En 1975, Hoang a bénéficié d’un petit coup de pouce du destin: Saigon tombe entre les mains des communistes, Hoang a alors pu être considéré comme réfugié et très rapidement il a obtenu un permis C. Par la suite, Hoang s’oriente petit à petit vers la gestion et en 1987, il postule pour le poste d’adjoint du chef de service au service informatique général (SIG) de l’EPFL, sous la responsabilité de Jean-Jacques Paltengui. (c’est l’époque de la fusion du centre de calcul et du SIG, et de la création du service informatique central (SIC)).

Impressum Revue consacrée aux technologies de l'information, éditée par le Domaine IT de l'EPFL (DIT). Les articles n'engagent que leurs auteurs, sauf ceux qui concernent de façon évidente des prestations officielles (sous la responsabilité du DIT ou d'autres entités). Toute reproduction, même partielle, n’est autorisée qu’avec l’accord de la rédaction et des auteurs.

2 flash informatique

De 1988 à 2003, Hoang sera l’adjoint du chef du SIC, Michel Reymond. Pendant cette période, il a été l’artisan de l’accord Apple University Consortium(AUC), avec à la clef des rabais très importants et la mise en place d’un centre de réparation. Il va travailler à la réorganisation des achats IT à l’EPFL, jusqu’en 2000 sous la tutelle de l’OCFIM et ensuite de façon autonome. De 1996 à 2006, il va participer au développement et à l'exploitation du logiciel UOTS avec Milan Crvcanin et Pierre Bucheli, ensuite ce sera le passage à EBP sous SAP. Depuis 2003, j’ai eu le plaisir de travailler avec Hoang au DIT. J’ai beaucoup apprécié cette collaboration. Je lui suis très reconnaissant pour tout ce qu’il a apporté au service. Sa bonne humeur et ses conseils avisés nous manqueront à tous. Hoang, je te remercie pour tout ce que tu as donné au service et je te souhaite une bonne et heureuse retraite, certainement très active avec plein de nouveaux projets.

Nouvelle adjointe du Directeur du DIT Depuis le 1er février dernier, le groupe Gestion du DIT compte une nouvelle collaboratrice en la personne de Chiara Tanteri, qui succède à Hoang Lê en tant qu'adjointe du Directeur du DIT pour les questions d’organisation et de gestion. Ses activités principales seront la préparation du budget du DIT et le suivi de la gestion des engagements ainsi que la négociation et le suivi des contrats de maintenance matérielle et logicielle. Elle sera en outre responsable des appels d’offres OMC (GATT) du DIT et fournira une aide méthodologique pour la gestion des projets ainsi que des conseils en matière d’organisation informatique. Chiara connaît déjà l'EPFL car elle y a obtenu son doctorat en mathématiques avant de travailler dans le privé comme consultante senior sur différents projets, puis à l'Etat de Vaud en tant que cheffe de projet informatique puis adjointe d'un chef de service. Nous lui souhaitons la bienvenue et plein succès dans ses nouvelles fonctions.

Rédacteur en chef: Jacqueline Dousson, fi@epfl.ch Mise en page & graphisme: Appoline Raposo de Barbosa Comité de rédaction: Aristide Boisseau, Paulo de Jesus, Patrice Fumasoli, Jean-Damien Humair, Laurent Kling, Julia Paolini, Vittoria Rezzonico, François Roulet, Christophe Salzmann, Predrag Viceic & Jacques Virchaux

.. /.. Suite page 21

Impression: Atelier de Reprographie EPFL Tirage: 4000 exemplaires Adresse Web: FlashInformatique.epfl.ch Adresse: Domaine IT EPFL Station 8, CH-1015 Lausanne Téléphone: +41 21 69 32246 & 32247 Abonnement au FI par e-mail à: fi-subscribe@listes.epfl.ch


Actualités

ForumIT de novembre 2010 Jacqueline.Dousson@epfl.ch, EPFL–Domaine IT, responsable de la communication au DIT

Twice a year, ForumIT is meeting point for IT Domain and IT-people from the EPFL labs (more than 200 people). If you could not attend the November 25 Forum IT, you will find here abstracts of the tackled subjects. The presentations are available on the site. Le 25 novembre 2010, un peu plus de 40 responsables informatique d’unités ont assisté au ForumIT, rencontre bisannuelle avec le DIT. Pour ceux qui n’ont pas pu y assister, voici les sujets qui ont été abordés.

La gouvernance du Système d’information (D. Rey) Didier Rey a été nommé il y un an au poste de coordinateur du système d’information & (SI) de l’EPFL. Une des premières tâches qu’il a réalisée est la définition du terme système d’information: c’est en effet un terme-valise dans lequel chacun met ce qu’il veut. Dans le contexte de l’EPFL, Didier Rey reprend volontiers la définition de Wikipedia et donc entend par système d’information toutes les infrastructures et les applications informatiques de l’EPFL, en excluant celles qui ne concernent que des activités de recherche. Ensuite, il s’est agi pour lui de faire un état des lieux des coûts (en ressources humaines, en matériel et en applications) de ce vaste domaine dont 40 % sont sous la responsabilité des Facultés, 7 % sont alloués au réseau et un peu plus de 20 % correspondent aux équipements centraux du DIT (mail, stockage, etc.). La part du calcul scientifique (central et Facultés) est évalué à 5 %. Ce ne sont que des estimations qui devront être affinées par la suite.

Un premier constat: la dispersion des responsabilités et l’hétérogénéité Au cours d’une journée standard, un membre de l’EPFL, par exemple un professeur, utilise des applications de provenances très diverses: son laboratoire pour un logiciel-métier, le DIT pour le mail et le réseau, infoscience pour publier ses publications, Jahia pour mettre à jour le site Web de son laboratoire, IS-Academia pour communiquer la description de son cours du prochain semestre, Moodle pour distribuer son support de cours, SAP pour gérer les finances de son laboratoire, Grants pour établir un dossier pour une demande de financement, etc. Et chaque application a sa propre logique de fonctionnement. Il est donc urgent de mettre l’utilisateur au centre de la réflexion du système d’information et d’améliorer l’ergonomie des principales applications pour en faciliter l’utilisation.

Structure mise en place z un comité de pilotage, le CoPilSI, vérifie la faisabilité de tout nouveau projet au sein du SI, qu’il s’inscrit dans une bonne coordination avec les autres partenaires, que les ressources nécessaires sont allouées puis en suit la progression jusqu’à son achèvement (car tout projet doit avoir une fin). Plus de 70 projets en cours ont été recensés au sein des services centraux. Deux autres comités soutiennent le CopilSI: la coordination des applications qui se concentre sur les applications métier (ISAcademia, SAP, Moodle, Grants, Jahia, gestion des bâtiments, systèmes de la bibliothèque, etc.) et la coordination des services et infrastructures IT de base qui se concentre sur le socle de base (ex: réseau, stockage) sur lequel s'appuient les applications spécifiques, et sur un certain nombre de prestations génériques (ex: email, hébergement Web) gérés par le DIT et les services IT de faculté; chaque faculté dispose d’une commission informatique à laquelle auquel participera D. Rey et dans laquelle seront coordonnées les activités informatiques de la faculté avec l’ensemble de l’EPFL. Le copilHPC & continue de traiter les aspects spécifiques au HPC, en coordination avec le copilSI.

Projets Deux projets d’importance ont été lancé par le CoPilSI, qui concernent toute l’EPFL: un nouveau Data & Computing Center et une révision de la politique dans le domaine du Computational Science & Engineering. Ces deux projets ont été discutés en Direction en décembre 2010 et produiront leurs premiers résultats concrets en 2011. D’autres projets ou études ont été réalisés en 2010 sous l’égide du CoPilSI: z l’authentification forte pour certaines applications critiques; z un exercice d’ethical hacking ou piratage éthique sur l’entier du système d’information de l’EPFL; z une analyse des risques du système d’information. Nous reviendrons dans les prochaines éditions sur les développements et résultats de ces projets et sur les nouvelles initiatives du CoPilSI.

Méthodologie

La gestion de projets demande un outil ad’hoc, en 2011, Hermes & sera appliqué pour deux projets-pilotes.

22 FÉVRIER 2011 - N°1/2

3


ForumIT de novembre 2010

IT@EPFL: survol des 6 derniers mois (J.-C. Berney)

Web 2010, l’envers du décor (M. Macowicz, P. Mellier et G. Charmier)

Généralités

L’été 2010 fut l’été de tous les bouleversements pour les applications gérées par le KIS. z Le plus visible, ce fut bien sûr la nouvelle ligne graphique pour tous les sites Web de l’EPFL, avec sous le capot, une nouvelle version du CMS Jahia 6: l’installation sur le site de Jahia 6 a commencé en septembre 2009. En juin 2010 les webmasters ont pu commencer à l’utiliser et pendant l’été une task force d’assistants-étudiants est venue leur prêter main-forte. À la date du Forum IT, 270 sites utilisant Jahia 6 étaient en ligne dont 200 migrés depuis des sites Jahia 4. L’infrastructure a été renforcée, Jahia 6 tourne sur 3 nœuds (dont un est réservé au mode édition et deux pour la lecture), ainsi que deux nœuds de secours qui prennent le relais dans un mode non éditable en cas de problème grave ou de maintenance des serveurs Jahia 6. Les fichiers sont stockés sur le NAS du DIT et l’ensemble est monitoré jour et nuit par Nagios et PSI_probe. z L’envers de plan.epfl.ch: une mise à jour majeure a eu lieu au printemps 2010. Plan est basé sur les fonds de carte d’OpenStreetMap, auxquels on ajoute les données des bâtiments (fournies par le DII), plus une couche correspondant aux numéros des locaux et enfin, les couches des ressources (prises, imprimantes, lecteurs CAMIPRO, etc. ) Les sources d’information sont donc multiples: w OpenStreetMap w autocad (plans EPFL) w Archibus (base des locaux) w CADI (pour la base des personnes) Les tuiles, générées par le framework GIS Openlayers, sont stockées directement dans le cache du browser de l’utilisateur pour améliorer la vitesse d’affichage. z L’envers de l’outil actualités: l’outil est basé sur le Framework Django (en python) et utilise le modèle MTV (Modèle: gestion des données – Template: l’interface (HTML) – Vue: liaison entre le modèle et le template). Ce framework permet de gérer de manière unifiée les relation avec une base de données, des templates pour la génération du code HTML produit, ainsi un outil de résolution d’URL extrêmement puissant pour déterminer le code à exécuter dans les vues.

Un audit sur les achats IT a eu lieu en automne 2010 (en 2011 l’audit portera sur la sécurité). L’agrandissement du campus (Quartier de l’Innovation, RAK …) pose des questions techniques et contractuelles (accès aux ressources). Le départ de Martin Vetterli, actuel Vice-Président des Affaires Institutionnelles pour le poste de Doyen de la Faculté IC pose le problème du rattachement du DIT en 2011. Un travail en commun avec la Faculté STI a été effectué sur l’amélioration de l’accueil des nouveaux collaborateurs, une connexion simplifiée à travers DHCP et une installation automatique d’OS. Du côté de la communication, 2010 a été l’année d’une campagne de sensibilisation à la sécurité informatique, dont les lecteurs du FI ont découvert petit à petit les 9 épisodes; un poster les rassemblant est d’ailleurs disponible sur la page dit.epfl.ch/securite.

Réseau Les anciens serveurs VPN ont été arrêtés, le certificat des serveurs Radius a été changé.

Serveurs centraux Préparation du dossier pour un nouveau Data & Computing Center; passage à Netbackup 7, ajout d’un cluster monoCPU et remplacement des serveurs SAP.

Services de base Migration cet automne à Exchange 2010 (voir plus loin), myprint en service pour les étudiants, OpenDirectory en production dans les Facultés SB et SV. Poseidon: grand succès de la journée du 11 novembre, HP remplace DELL dans l’offre des portables; des portables Mac sont en prêt au RLC.

Support Ouverture d’un blog: 1234.epfl.ch pour les annonces de pannes et de maintenance des services du DIT.

KIS Web2010, jahia6 et plan sont détaillés plus loin. My.epfl.ch: ajout de la recherche en texte intégral (voir page 24).

Pour 2011 Un appel d’offre pour un nouveau cluster, une augmentation du stockage NAS (53 TB), un pilote pour le support de MS-SQL et le test pendant 6 mois de la messagerie instantanée d’Office Communicator Server (voir page 17).

4 flash informatique


ForumIT de novembre 2010

Migration à Exchange 2010

(L. Venries)

La migration des boîtes aux lettres des collaborateurs et étudiants a été planifiée pour l’automne 2010, elle offre plusieurs avantages: z des quotas plus importants (2.5 GB pour les collaborateurs, 500 MB pour les étudiants); z un même niveau de fonctionnalités pour toutes les platesformes pour l’interface Web (ewa.epfl.ch); z une meilleure tolérance aux pannes par la réplication des bases de données; z la possibilité de récupérer des éléments supprimés par l’utilisateur. Avant de migrer les boîtes aux lettres, il a fallu basculer les machines frontales (celles qui sont interrogées par l’utilisateur) depuis un serveur Exchange 2007 vers un serveur Exchange 2010. Lors des deux premiers basculements, l’équipe en charge de l’opération est revenue en arrière après avoir constaté des problèmes bloquants. Finalement les migrations ont commencé le 13 septembre, les boîtes des étudiants ont été migrées le 20 septembre (juste avant la rentrée). Les différentes migrations ont eu lieu les week-ends suivants pour se terminer le 10 octobre. Pendant toute la période de migration il n’y a jamais eu d’interruption complète de services car l’utilisateur pouvait toujours consulter ses mails (notamment par l’interface Web). Certaines lenteurs ont pu être constatées, mais aucun message n’a été perdu et peu de problèmes suite aux migrations sont remontés au niveau du helpdesk. Les problèmes constatés sont: z des pièces jointes corrompues avec Thunderbird et IMP – problème corrigé; z des pièces jointes corrompues avec Thunderbird quand le corps du message est vide – – le problème est en suspens et devrait être corrigé courant janvier. On peut le contourner en définissant mail.server.default.fetch_by_chunks: false;

z le champ from disparaît dans les éléments envoyés avec AppleMail en mode Exchange - le problème devrait être corrigé par Apple; z des déconnections du client Apple Mail – le problème est toujours en cours d’investigation. Le message final donné par l’équipe en charge de la migration est: tout s’est relativement bien passé vu la diversité des platesformes, des logiciels et des OS utilisés, et ce, malgré quelques problèmes mineurs. Mais n’hésitez pas à faire part de vos problèmes de messagerie (1234@epfl.ch) en précisant z le matériel: un iPhone, un poste de travail … z le système et sa version: Windows, Android … z le logiciel et sa version: Outlook, AppleMail … z le protocole utilisé: Exchange, IMAP … Comme d’habitude les présentations du Forum-IT sont accessibles sur le Web: dit.epfl.ch/forumIT. Rendez-vous au printemps 2011 pour le prochain Forum-IT ! n

GLOSSAIRE

&

copilHPC: Comité de pilotage du calcul à haute performance à l'EPFL (hpc.epfl.ch). Hermes: méthode générale de gestion de projet conçue par l’administration fédérale suisse, voir: www.hermes.admin.ch. système d’information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données et procédures) qui permet de regrouper, de classifier, de traiter et de diffuser de l’information sur un phénomène donné. W W = tiré de Wikipédia

Brèves

À tous ceux qui voudraient retrouver les réflexions d’un humaniste comme René Berger sur les technologies et leur impact sur notre façon de vivre et de penser, nous conseillons de lire cet ouvrage paru récemment aux PPUR (Presses Polytechniques et Universitaires Romandes: www.ppur.org). Solange Ghernaouti-Hélie a pendant plusieurs années rencontré régulièrement René Berger, ce livre est né de ces entretiens. Comme toujours, René Berger pose beaucoup de questions; c’est comme cela qu’il enrichit notre réflexion sur le cybermonde et qu’il nous interroge sur ce qu’on va bien pouvoir en faire ! René Berger est parti explorer une autre planète voici deux ans déjà, nous ne l’entendrons pas parler des tablettes, de WikiLeaks, ni du rôle joué par Internet lors des récents bouleversements politiques. Jacqueline.Dousson@epfl.ch, Domaine IT

22 FÉVRIER 2011 - N°1/2

5


Sécurité des applications Web ../.. Suite de la première page

sateur, seuls les caractères alphabétiques sont permis) plutôt que selon la logique échappement (où on essaye de traiter spécialement les caractères dangereux qui ont une signification spéciale pour le langage de programmation utilisé). Si dans de très rares cas cette dernière est réellement nécessaire, elle doit toujours suivre l’approche liste blanche. Un manquement à ces pratiques donne lieu aux failles du type A1 (injection), où par exemple un paramètre externe directement utilisé pour construire une requête SQL permet à un pirate de lire la base de données, ou même de la modifier. Dans les cas les plus graves, ces failles permettent l’exécution de commandes sur le serveur hébergeant l’application, avec peut-être même la possibilité d’en prendre complètement le contrôle. Les failles de type A2 (XSS ou cross-site scripting) appartiennent aussi à cette catégorie. Les développeurs les traitent souvent à la légère, parce qu’elles ne mettent pas en péril l’application ou le serveur, mais l’utilisateur final: il s’agit de données externes qui sont utilisées directement dans la page Web renvoyée par l’application, un pirate peut donc y glisser un appel vers un site externe qui attaquera le browser de la victime ou lui subtilisera ses données d’authentification (cookie -- notons que l’application peut empêcher cette subtilisation en donnant l’attribut HTTPonly à tous ses cookies). Il est possible d’éviter le cross-site scripting dans la génération de code HTML simple (balises et texte) en substituant dans les données sous contrôle externe les caractères <, >, &, '', ‘ et / par, respectivement, &lt;, &gt;, &amp;, &quot;, &#27; et &#2F;. Par contre, il semble extrêmement difficile de construire du code javascript en utilisant ces paramètres sous contrôle externe, tant les possibilités de passes multiples d’interprétation sont nombreuses. À éviter donc ! Enfin, certaines failles de type A10 (redirections non validées) suivent le même principe et permettent par exemple à un pirate de rediriger la victime vers un site dangereux (par exemple, il exploite une vulnérabilité de son browser). Quand l’application construit une URL de redirection, elle doit toujours, pour éviter ce type de faille, préfixer ce qui dépend des données externes par le chemin complet du site.

Authentification et gestion de session C’est le point A3, qui concerne l’authentification de l’utilisateur de l’application, la manière dont elle est maintenue au cours d’une session, la durée qu’il convient de lui donner, etc. C’est là un sujet très vaste, nous y reviendrons sans doute et nous nous contenterons donc pour l’instant de rappeler qu’à l’EPFL, la solution recommandée pour l’authentification est Tequila (tequila.epfl.ch).

Contrôle d’accès Lorsqu’une URL donne accès à une ressource précieuse ou déclenche une action importante, l’application doit très tôt contrôler que l’utilisateur authentifié a les privilèges nécessaires pour le faire. Ceci devrait, dans la logique de l’application, venir juste après la validation des paramètres. Quand ce n’est pas fait, des failles telles qu’A4 (références directes non sécurisées) ou A8 (manque de restriction d’accès URL) apparaissent. Un exemple simple de ce

6 flash informatique

dernier cas serait une application qui restreint l’accès à la partie administrative du site en ne montrant dans le menu de navigation que le lien site.ch/user.php aux simples utilisateurs, et le lien site. ch/admin.php aux seuls administrateurs. Elle n’a donc pas prévu le cas d’un pirate malin qui devine son existence (il lui suffit d’entrer cette URL dans son browser pour devenir administrateur).

Contexte C’est la faille A5 (falsification de requête intersite), très subtile (comprenez: certaines applications de l’auteur de cet article y étaient vulnérables avant qu’il ne lise le document de l’OWASP...), où le développeur n’arrive pas à imaginer que les URL de son application puissent être utilisées en dehors du contexte d’une séance normale de navigation à travers son site. Un exemple illustrera son principe: la victime vient de visiter le site de sa banque pour effectuer un versement généreux: mabanque.com/versement?somme=1 000CHF&pour=compte_Unicef, et la banque a utilisé, après authentification, un cookie pour savoir à qui elle avait affaire. Le pirate envoie alors un mail en HTML à la victime contenant ce lien: mabanque.com/versement?somme=10000CHF&pour=compte_pirate, qui sera suivi par le browser de la victime (par exemple le pirate le donne comme source d’une balise <IMG>). Le cookie de la session précédente sera utilisé pour authentifier la victime et la banque effectuera le transfert ! La banque pourra dire, non sans raison, que la victime aurait dû invalider le cookie en se déconnectant du site de la banque, mais elle pourrait prévenir ce genre d’accident en ajoutant aux URL de son site des chaines pseudo-aléatoires que le pirate ne peut deviner, liées à chaque utilisateur et chaque session.

Bonnes pratiques Ce sont les points relevant du bon sens. En premier lieu (faille A6), il faut initialiser correctement l’infrastructure utilisée par l’application (changer les mots de passe par défaut, empêcher l’accès à distance de la base de données, etc.) puis la tenir à jour. En particulier, n’oubliez pas que très peu d’applications Web sont incluses dans les mises à jour automatiques des systèmes, et que si vous en installez une, il faut vous abonner à la mailing-list qui annoncera les trous de sécurité et la parution de correctifs. On ne compte plus le nombre de sites de l’EPFL qui ont été piratés par oubli de cette précaution. Ensuite, le point A9: toute transmission de données confidentielles et précieuses (mot de passe, cookie, jetons de session, etc.) doit passer par un canal chiffré par TLS/SSL (les URL impliquées doivent débuter par https://, avec le s de sécurité). Pour ce faire, vous aurez besoin d’un certificat de serveur, que vous pouvez obtenir en suivant les indications du site rauth.epfl.ch (la registration authority locale dans le cadre de SwitchPKI, switch.ch/pki). Enfin la faille A7: utiliser la cryptographie quand c’est nécessaire, et l’utiliser correctement. Par exemple, l’application n’a pas besoin de connaître les mots de passe en clair pour réaliser l’authentification, il suffit de stocker des hachages (de nos jours, SHA a détrôné MD5 pour ça) des mots de passe: quand l’utilisateur présente son mot de passe, il suffit de le passer par le même hachage et de comparer le résultat avec le hachage stocké (mais bien sûr, dans cet exemple précis, la bonne solution est d’utiliser Tequila, comme mentionné ci-dessus). n


Analyse

Pixlr: un excellent éditeur d’image en ligne et gratuit Aymar.deBrossin@epfl.ch, EPFL, Domaine IT, support en infographie

An online solution for image editing, without installation of software. Une solution en ligne pour la retouche d'images sans installation de logiciel.

Prévu pour l’édition et la retouche d’images destinées au réseau Internet, Pixlr est un logiciel en ligne léger et gratuit. Multilingue, bien pensé et sans fioritures, cette application en Flash® met à disposition de ses utilisateurs des outils efficaces et rapides. L’application Pixlr se lance depuis son adresse Internet: pixlr.com/.

Pixlr a de réels points forts z C’est un logiciel en ligne, accessible partout et sans installation locale autre qu’un plug-in Adobe Flash®. Il offre également le choix de la langue de fonctionnement. z L’organisation de l’interface utilisateur est à la fois simple et logique. z La boite à outils permet l’essentiel de l’édition et de la retouche des images destinées au Web.

z Le montage des images se fait par calques avec transparences réglables, styles, et masques de fusion. z Les réglages indispensables (luminosité / contraste / couleur) sont présents avec un excellent outil de type Courbes. Grâce aux masques de fusion associés aux calques, il est possible de simuler des calques de réglages chers aux utilisateurs de Photoshop. z Les textes sont des calques éditables.

Mais aussi des faiblesses z Pixlr n’est pas conçu pour l’image imprimée ni pour les grands documents. C’est un pur produit Web. z Les outils de gestion de la couleur sont limités. Il n’est par exemple pas possible d'accéder aux canaux des couleurs élémentaires, ni de travailler dans un autre mode que RGB 8bits/ plan. z La gestion des textes manque totalement d’options de mise en page. Elle est suffisante pour des titres ou de brèves annotations, mais pas plus. z Des bugs parfois gênants subsistent, mais ces défauts sont corrigés au fur et à mesure des mises-à-jour. À l’heure de la complexification croissante des programmes classiques d’imagerie, tels Photoshop ou GIMP, Pixlr.com offre une combinaison agréable d’efficacité, de performance et de simplicité. Malgré ses quelques défauts, je le recommande vivement pour la préparation d’images destinées à l’Internet. Sur la page dit.epfl.ch/formation (rubrique Quelques supports de cours en libreaccès), vous trouverez un lien vers des vidéos de traitement d'images, réalisées avec différents logiciels: Photoshop, GIMP, Photofiltre et Pixlr… Des cours de traitement d'images sont organisés par le DIT, entrer le mot-clé image dans cette même page n

La figure est une copie d’écran d’une page Pixlr pendant un travail en cours. Avec une interface inspirée de Photoshop, on y retrouve les menus, fenêtres et palettes flottantes indispensables, à savoir la palette des outils, celle des paramètres de l’outil en cours d’utilisation, celle des calques et le navigateur.

22 FÉVRIER 2011 - N°1/2

7


Comment faire?

Transférer vos images ISO sur une clef USB Benjamin.Barras@epfl.ch, EPFL - Domaine IT - responsable de la plate-forme Unix à l’EPFL

We will describe in this paper, a simple and universal method to transfer your ISO images of your GNU/ Linux distribution on a USB key. Nous allons décrire dans cet article, une méthode simple et universelle pour transférer vos images ISO de votre distribution GNU/Linux sur une clef USB.

Introduction Les lecteurs CD/DVD se font de plus en plus rare sur les ordinateurs récents, il est donc important de savoir installer sa distribution GNU/Linux depuis une clef USB, surtout si l’on ne dispose que d’une image ISO pour le faire. Il est relativement simple de transférer son image ISO sur une clef USB moyennant quelques précautions. Bien sûr, il existe une multitude d’outils qui font faire cela en seulement quelques clics. Malheureusement, ces outils ne marchent vraiment bien que pour votre distribution GNU/Linux préférée et ne sont souvent pas universels. Il existe également des images préparées pour clef USB pour chaque distribution GNU/ Linux, le problème ici est que cette image va détruire la structure de votre clef USB ainsi que son contenu. De plus, il n’est pas idiot d’apprendre et de comprendre comment ces outils fonctionnent, cela vous permettra de faire vous-même vos distributions sur une clef USB.

Avertissement Comme je l’ai annoncé, nous allons faire simple. Nous partirons donc avec une clef USB déjà formatée, en FAT32 &, et il ne nous restera plus qu'à y mettre du contenu et d’y installer l’amorce afin que cette clef puisse démarrer. Nous emploierons l’utilitaire SYSLINUX & qui nous permettra de rendre amorçable notre clef USB qui devra être au format FAT &. Il est important de travailler avec une version récente de syslinux, sinon vous risquez d’avoir quelques soucis concernant les menus graphiques. La première chose à faire est de repérer où se trouve notre clef USB, la commande suivante vous aidera à trouver votre partition: sudo mount | grep media@ /dev/sdb1 on /media/usbKey type vfat (rw,noexec,nosuid,nodev,shortname=winnt,uid=1216)

Ma clef USB s’appelle usbKey et est montée comme partition externe (/dev/sdb1, de type vfat) sur /media/usbKey.

Méthode Il nous faut commencer par récupérer une image ISO de notre distribution GNU/Linux, par exemple l’image mini.iso d’Ubuntu.

8 flash informatique

Pour ce faire, montons notre image pour en récupérer le contenu comme suit: sudo mkdir /mnt/iso sudo mount -o loop mini.iso /mnt/iso

On recopie tout le contenu de notre image ISO tel quel sur notre clef USB: cp -r /mnt/iso/* /media/usbKey

Renommer le fichier isolinux.cfg Il nous reste plus qu'à renommer le fichier isolinux.cfg et le dossier isolinux, si ce dernier existe, par respectivement syslinux.cfg et syslinux. Il peut y avoir trois cas de figures possible. # Le fichier isolinux.cfg se trouve dans le # dossier /media/usbKey : @ mv /media/usbKey/isolinux.cfg /media/usbKey/ syslinux.cfg@ # Le fichier isolinux.cfg se trouve dans le # dossier /media/usbKey/isolinux : @ mv /media/usbKey/isolinux/isolinux.cfg /media/ usbKey/isolinux/syslinux.cfg@ mv /media/usbKey/isolinux /media/usbKey/syslinux@ # Le fichier isolinux.cfg se trouve dans le # dossier /media/usbKey/boot/isolinux : @ mv /media/usbKey/isolinux/boot/isolinux.cfg / media/usbKey/isolinux/boot/syslinux.cfg@ mv /media/usbKey/isolinux /media/usbKey/syslinux@

Nous en avons déjà fini avec le contenu, il ne nous reste plus que la partie délicate à faire.

Rendre amorçable la clef USB C’est le point le plus délicat, et la raison principale pour laquelle notre clef USB ne démarre pas. Il faut tout d’abord prendre soin de défaire notre point de montage (sans retirer la clef): sudo umount /media/usbKey

Ensuite nous devons employer l’utilitaire SYSLINUX qui va nous créer un fichier ldlinux.sys à la racine de notre partition. Soit: sudo syslinux /dev/sdb1 # Ou dans le dossier syslinux si il existe # sudo syslinux -d /syslinux /dev/sdb1 # Ou encore dans le dossier /syslinux/boot # sudo syslinux -d /syslinux/boot /dev/sdb1

Comme il y a peu de chance que le Master Boot Record & soit présent sur notre clef USB, faisons également:


Transférer vos images ISO sur une clef USB locate mbr.bin /usr/share/syslinux/altmbr.bin /usr/share/syslinux/gptmbr.bin /usr/share/syslinux/mbr.bin cat /usr/share/syslinux/mbr.bin > /dev/sdb

Il faut encore activer le flag Boot sur notre partition: sudo fdisk /dev/sdb Command (m for help): m Command action a toggle a bootable flag p print the partition table w write table to disk and exit ... Command (m for help): p Disk /dev/sdb: 4110 MB, 4110417920 bytes 127 heads, 62 sectors/track, 1019 cylinders Units = cylinders of 7874 * 512 = 4031488 bytes Device Boot /dev/sdb1

Start 1

End 1019

Blocks 4011802+

Id System b W95 FAT32

Command (m for help): a Partition number (1-4): 1 Command (m for help): p Disk /dev/sdb: 4110 MB, 4110417920 bytes 127 heads, 62 sectors/track, 1019 cylinders Units = cylinders of 7874 * 512 = 4031488 bytes Device Boot /dev/sdb1 *

Start 1

End 1019

Blocks 4011802+

Id System b W95 FAT32

Command (m for help): w

Ces trois manipulations ne sont là que pour rendre amorçable notre clef USB et on ne fait qu’une seule et unique fois les deux dernières manipulations. Vous pouvez tester si votre clef USB démarre avec l'émulateur qemu: sudo qemu -hda /dev/sdb -m 256 -vga std

Une fois que votre clef USB démarre, vous pouvez passer à la dernière étape.

Personnaliser votre clef USB Pourquoi faire simple quand on peut faire compliqué ? Telle est la devise de notre époque dite moderne. Il est probable que vous deviez retoucher votre fichier de configuration syslinux.cfg. Par exemple avec Fedora 14, le fichier se présente ainsi: default vesamenu.c32 @ #prompt 1 @ timeout 600 @ display boot.msg @ menu menu menu menu menu menu menu menu menu menu

background splash.jpg @ title Welcome to Fedora 14! @ color border 0 #ffffffff #00000000 @ color sel 7 #ffffffff #ff000000 @ color title 0 #ffffffff #00000000 @ color tabmsg 0 #ffffffff #00000000 @ color unsel 0 #ffffffff #00000000 @ color hotsel 0 #ff000000 #ffffffff @ color hotkey 7 #ffffffff #ff000000 @ color scrollbar 0 #ffffffff #00000000 @

label linux @ menu label ^Install a new system or upgrade an existing system @ menu default @ kernel vmlinuz @ append initrd=initrd.img stage2=hd:LABEL="Fedora" @ label vesa @ menu label Install system with ^basic video driver @ kernel vmlinuz @ append initrd=initrd.img stage2=hd:LABEL="Fedora" xdriver=vesa nomodeset @ label rescue @ menu label ^Rescue installed system @ kernel vmlinuz @ append initrd=initrd.img stage2=hd:LABEL="Fedora" rescue @ label local @ menu label Boot from ^local drive @ localboot 0xffff @ label memtest86 @ menu label ^Memory test @ kernel memtest @ append -@

Hors il est peu probable que votre clef USB s’appelle Fedora, et donc vous devez changer le nom du label par le nom de votre clef USB, dans notre cas ce sera usbKey. On en profite au passage pour se débarrasser du menu graphique qui peut poser quelques problèmes si vous n’avez pas une version récente de syslinux. prompt 1 @ timeout 600 @ default linux @ say Type linux for : Install a new system or upgrade an existing system @ say Type vesa for : Install system with ^basic video driver @ say Type rescue for : Rescue installed system @ say Type local for : Boot from local drive @ say Type memtest86 for : Memory test @ label linux @ kernel vmlinuz @ append initrd=initrd.img stage2=hd:LABEL="usbKey" @ label vesa @ kernel vmlinuz @ append initrd=initrd.img stage2=hd:LABEL="usbKey" xdriver=vesa nomodeset @ label rescue @ kernel vmlinuz @ append initrd=initrd.img stage2=hd:LABEL="usbKey" rescue @ label local @ localboot 0xffff @ label memtest86 @ kernel memtest @ append -@

Pour aller plus loin, je vous laisse lire ou relire l’article: Personnaliser vos images ISO Linux (voir FI8/10) concernant les images ISO. Il ne vous reste plus qu'à faire les quelques manipulations ci-dessus afin d’avoir une installation GNU/Linux personnalisée ou handmade. n GLOSSAIRE

&

FAT/ FAT32 (File Allocation Table): en.wikipedia.org/wiki/File_Allocation_Table. MBR (Master Boot Record): fr.wikipedia.org/wiki/Master_boot_record. SYSLINUX: syslinux.zytor.com/wiki/index.php/SYSLINUX.

22 FÉVRIER 2011 - N°1/2

9


Analyse

Médaille au SWERC = justesse x efficacité Christian.Kauth@epfl.ch, EPFL-STI, doctorant, président PolyProg

& Trained and selected by PolyProg    , the EPFL del&  egation to the regional ACM ICPC   finals, won a bronze medal. The combination of profound analyses, splendid ideas and efficient implementations along with perfect team coordination is the key to success in this probably most prestigious programming contest for universities.

& Entraînée et sélectionnée par PolyProg    , la délé& gation EPFL aux finales régionales de l’ACM ICPC    , concours d’algorithmique par excellence au niveau universitaire, a décroché une médaille de bronze. La combinaison d’analyses profondes, d’idées originales, d’implémentations efficaces, tout comme une coordination d’équipes impeccable est la clé du succès dans ce concours.

de gauche à droite: Robin Steiger, Jean-Paul Wenger, Pierluca Borsò, Christian Kauth, Slobodan Mitrovic, Robert Enderlein, Titus Cieslewski

Cinq équipes, composées chacune de trois étudiants EPFL, se sont affrontées lors du concours de sélection local organisé par PolyProg. Un ensemble de huit problèmes algorithmiques variés permettait de trouver les deux équipes les plus prospères. Le prix fut un voyage sponsorisé par PolyProg aux finales régionales de & l’ICPC, le SWERC    . Les délégations des universités de Suisse, France, Italie, Espagne, Portugal et Israël se donnèrent rendez-vous à Madrid pour déterminer la meilleure d’entre elles, qui représentera la région sud-ouest européenne aux finales mondiales à Charm el-Cheikh (Egypte) cet hiver. L’équipe de l’ETHZ a su réaliser ce grand exploit. La formation et les entraînements avec des équipes de St Petersburg, desquels aussi les membres de PolyProg ont pu grandement bénéficier, ont vraisemblablement porté leurs fruits. Nos sincères félicitations !

10 flash informatique

Les cinq heures de concours demandent une énorme concentration et une excellente organisation d’équipe. Il s’agit effectivement de résoudre le plus grand nombre de problèmes le plus rapidement possible et des tentatives erronées se voient accompagnées d’une pénalité. Avec seulement un ordinateur à disposition par équipe, chaque seconde devant le clavier compte et les conflits d’accès entre les coéquipiers doivent être résolus de manière intelligente. Les problèmes étaient particulièrement ardus pour cette édition 2010 et il a fallu surmonter plusieurs niveaux de difficulté: seuls des algorithmes justes et efficaces implémentés sans la moindre faute ont pu résoudre tous les tests et marquer des points. En guise d’exemple, une brève réflexion sur un des problèmes mena à la conclusion qu’il fallait vérifier si deux matrices (A et B) sont l’une le carré de l’autre (A2=B ?). Si un premier réflexe est de calculer le carré de la matrice A en complexité O(N3), puis de comparer le résultat A2 avec B en O(N2), cette solution est trop lente, vu la taille des matrices. Plutôt que de calculer le carré, il aurait fallu comparer le produit de la matrice par un vecteur (A*A*v=B*v ?). Ceci peut se faire en complexité O(N2). Si les deux résultats sont différents, alors B n’est définitivement pas le carré de A. En revanche, un résultat identique n’implique pas forcément A2=B. Mais si l’identité persiste pour un certain nombre de vecteurs choisis de manière aléatoire, alors il y a des fortes chances que B soit effectivement le carré de A. Une démonstration mathématique rigoureuse donne le nombre minimal de vecteurs à tester qui s’avère étonnamment petit ! Les autres problèmes cachaient des flux maximaux, de la 2-satisfaisabilité avec ses composantes fortement connexes, de la recherche de cycles, de la programmation dynamique, des graphes et une résolution d'équations linéaires qui devait se résoudre avec de la géométrie pour contourner les problèmes de dégénérescence. Pour vous donner une idée très concrète des casse-têtes auxquels les étudiants ont dû faire face, je vous guide à travers ce problème qui a été résolu par six des 38 équipes. Vous êtes à la poursuite d’un singe qui se cache dans une forêt à N (1≤N≤21) arbres. Vous n’avez pas la moindre idée dans lequel de ces arbres il se cache, mais si vous tirez avec votre fusil surdimensionné sur l’arbre derrière lequel se cache le singe, vous ne pouvez pas le manquer. Si par contre vous vous êtes trompé d'arbre, il profitera du fait que vous devez recharger votre fusil et sautera vers un arbre voisin sans que vous ne vous en aperceviez (le singe a tellement peur qu’il ne restera jamais sur l’arbre actuel). Si on vous donne la description de la forêt (M relations de voisinage entre arbres), est-ce que vous sauriez trouver la suite d’arbres sur lesquels vous devriez tirer pour être sûr d’arrêter le singe ?


Médaille au SWERC = justesse x efficacité Pour économiser la munition, cette suite, si elle existe, doit être aussi courte que possible et permettre d’arrêter le singe indépendamment de sa position de départ et de la suite des sauts qu’il décide d’entreprendre.

À cette fin, nous mémorisons pour chaque constellation C la constellation C’ depuis laquelle nous avons fait la transition C’–C tout comme le tir qui correspond à la transition. dad[next] = current; shot[next] = i;

Solution

Cette petite indication nous permet de restituer la suite totale

Pour chaque arbre, il est soit possible soit impossible que le singe se cache dedans. Associons à chaque bit (d'un nombre à N bits) un arbre différent. Chaque bit i aura comme valeur 1 si le singe peut potentiellement se cacher dans l’arbre i et 0 sinon. Ainsi les positions possibles du singe à chaque instant se laissent encoder dans un nombre inférieur à 2 N. 2 N–1 est la constellation de départ (le singe peut se trouver dans n’importe quel arbre), et 0 sera la constellation finale (on aura fusillé le singe), si accessible. La transition d’une constellation current à une autre next se fait en deux étapes. 1 D’abord on laisse sauter le singe: pour toute connexion d’un arbre A vers un arbre B, si dans la constellation actuelle, le singe peut être dans l’arbre A, alors dans la constellation suivante, il peut être dans l’arbre B. Ceci se traduit dans le & . code C++ suivant qui utilise du bitmasking   

while (constellation != (1<<N)-1) { cout<<shot[constellation]; constellation = dad[constellation]; }

for (int i=0; i<M; i++) if (current & 1<<A[i]) next |= 1<<B[i];

2 Ensuite on tire dans un arbre i, donc le singe ne peut plus y être if (next & (1<<i)) next –= (1<<i)

Nous avons maintenant une constellation de départ (2 N-1), un objectif d’arrivée (0) et une fonction de transition. Il suffit maintenant d’ajouter toutes les nouvelles constellations dans une queue d’attente et de traiter les éléments de cette queue & & de manière FIFO    . Techniquement parlant, on fait un BFS    . Si la constellation 0 est atteinte, nous avons réalisé une suite minimale de tirs pour fusiller le singe. Si d’autre part la queue se vide avant que le 0 n’apparaisse, le singe a toujours un chemin de fuite (par exemple dans le cas d’un graphe cyclique). Il ne reste alors plus qu’à retrouver la suite des tirs qui nous a amenée de la constellation de départ à la constellation finale.

Notez que ce code imprime la suite dans l’ordre inverse. Si ce petit amuse-gueule vous a ouvert l’appétit, n’hésitez pas à passer au buffet complet. Les problèmes du SWERC tout comme ceux des autres concours organisés par PolyProg sont accessibles & à travers notre site Web et notre moodle    . Vous y trouvez aussi le code source complet de ce problème. Que vous soyez étudiant ou doctorant, profitez de nos séminaires pour vous mettre en forme pour la seconde édition de & l’HC2   , l’équivalent suisse au concours européen, qui se tiendra le 12 mars 2011 sur le campus de l’EPFL, organisé par PolyProg & .n et sponsorisé par Open Systems   

GLOSSAIRE

&

ACM ICPC (International Collegiate Programming Contest): cm.baylor.edu/welcome.icpc. BFS (Breadth-First-Search): parcours en largeur. Bitmask: un masque utilisé pour manipuler des nombres bit par bit en parallèle. FIFO: First In First Out. HC2 (Helvetic Coding Contest): Inscriptions sous www.hc2.ch/ Open Systems: www.open.ch/ PolyProg: association du campus qui promeut les compétences en algorithmique des étudiants et doctorants, polyprog.epfl.ch. PolyProg moodle: moodle.epfl.ch/course/view.php?id=8471, avec SayHello comme key. SWERC (Southwestern Europe Regional Contest): swerc.eu/.

Agenda

Audit sécurité du site Martin.Ouwehand@epfl.ch, EPFL – Domaine IT

Fin 2010, l'EPFL a mandaté l'entreprise Objectif Sécurité pour faire un audit de la sécurité informatique du site. Philippe Oechslin, qui a participé à l'audit, en présentera les résultats à toute personne intéressée:

le jeudi 17 mars à 16h, auditoire CM1 121

Dans leur rapport final, les auditeurs ont signalé comme gros problème de sécurité à l'EPFL les nombreux sites Web vulnérables. En conséquence, un cours sur la sécurité des applications Web a été agendé le 14 avril 2011, http://short.epfl.ch/coursSecuWeb, et une première introduction à la problématique est proposée en première page de ce numéro. n 22 FÉVRIER 2011 - N°1/2

11


Analyse

PANNE Appoline.Raposo@epfl.ch, EPFL - Domaine IT, la claviste Esteban.Rosales@bluewin.ch, géologue et illustrateur Eric.Gruter@epfl.ch, EPFL - Domaine IT, responsable du CRI Laurent.Kling@epfl.ch, EPFL- STI, coordinateur informatique à la Faculté des Sciences de l'Ingénieur

Un mot: Panne – quelques regards: informatique, littéraire et illustrateur.

Le coup de la panne – HRB La Panne: une histoire encore possible, c'est ainsi que Friedrich Dürrenmatt nomma une de ces histoires qui commençait par une simple panne d'automobile, la même qui inspira aussi notre dessinateur ?… Au Flash informatique nous ne nous permettrions pas de vous faire le coup de la panne… et pourtant le mois dernier, nous nous sommes vus contraints de renoncer à faire paraître le numéro 1, nos auteurs présumés nous ayant tous ou presque fait le coup de la panne d'inspiration, … une histoire encore possible. Pas d'article, pas de journal ! Il est possible que vous entendiez le doux bruit de la panne de porc grésillant sur la poêle, vous serez peut-être assis confortablement et protégé de la pluie sous les pannes du hangar, vous serez éventuellement vêtu d'un pull chatoyant en panne de velours fushia, couleur de l'année, mais vous ne lirez pas le numéro 1 du Flash informatique de janvier 2011 !

Ça marche pas – EG Au CRI (Centre de Réparation Informatique de l'EPFL, cri.epfl.ch), nous entendons souvent une expression courante dans la bouche de l’utilisateur mécontent de ne pouvoir faire fonctionner sa machine (PC, MAC, périphérique de

sauvegarde, …) qu'il regarde d'un air dépité comme un être cher, voire son meilleur ami: «ma machine ne marche pas». Alors, moi qui ne pense pas qu'une machine puisse marcher: – Je n’en ai jamais vu avec des pattes… et vous ? Il s'agit en fait d’une PANNE (arrêt accidentel du fonctionnement d’une machine, d’après le Petit Robert) qui peut être due à diverses causes internes et externes à la machine. Voici une petite liste non exhaustive de pannes fort souvent dues à son utilisateur et non pas à la machine elle-même avec le symptôme (●) et le remède (◆). Problème de ventilation d’un portable et du PC de table. ● Une surchauffe du boîtier et la perte probable des données. ◆ Passer de temps à autre l’aspirateur devant les bouches d’aération des radiateurs. Problème de liquide dans le clavier (pas pris en compte par la garantie) ● Un dysfonctionnement complet du portable. ◆ Ne jamais avoir un liquide à moins de 1 mètre de votre portable ou du PC de table. Problème de salissures et de touches du clavier qui collent. ● Mauvais affichage et certaines touches du clavier ne fonctionnent plus. ◆ Passer de temps à autre un chiffon humide avec un produit pour nettoyer les vitres sur le clavier et sur l’écran. Problème de casse… (pas pris en compte par la garantie). ● Mauvais fonctionnement de l’écran ou de la machine en général. ◆ Respecter votre machine comme si c’était votre meilleur ami. Ne voulant pas être plus moralisateur que je ne le suis, je vous accueillerai volontiers au CRI lors de la prochaine panne de votre PC, Mac ou de tout autre périphérique externe et tacherai de remédier à la PANNE, au mauvais fonctionnement, et non pas au truc qui ne marche pas…

Tentation de la Pomme – LK Chacune de nos lectures laisse une graine qui germe. [Jules Renard]. La société de consommation nous a habitués à disposer immédiatement de tout. À cette profusion matérielle s’aligne un fonctionnement sans faille, une panne devient presque inimaginable. Parfois l’arrêt n’est pas provoqué par un incident technique, mais simplement par notre habitude à ne pas vouloir lire le mode d’emploi. Sur une plate-forme au logo de Pomme, le credo peut même être: Pourquoi lire le mode d’emploi, cela fonctionne tout seul. Ayant moi-même succombé à la tentation de la Pomme dans ma jeunesse, le vice a perduré pour ce péché originel.

12 flash informatique


Mot-croisé: PANNE

Curseur pour *phone silencieux

Sur un *phone, on peut vouloir rendre silencieux l’appareil pendant l’appel téléphonique. Une première méthode consiste simplement de réduire le niveau sonore de son appareil dans les préférences. Après quelques répétitions de cette manipulation, on peut se poser la question de disposer d’une méthode plus simple ?

Une inspection approfondie de son *phone nous permet de découvrir un curseur qui mécaniquement enclenche le mode silencieux. Ainsi, la panne se transforme en redécouverte d’une fonction déjà présente. Comme ce curseur est également présent sur le grand frère *pad, son usage peut prêter au doute: z rendre l’appareil silencieux, z ou empêcher une rotation automatique de l’écran. Pour éviter une double panne, ou simplement un dilemme, les concepteurs vont nous offrir le choix. Ainsi, il existera deux catégories de*pad: silencieux ou à torticolis. Une autre possibilité de panne est l’absence d’un câble. Quand Apple a intégré une prise clavier souris sur un écran, il a engendré une série involontaire d’incidents. Le clavier est branché, mais l’ordinateur est incontrôlable. La solution était simple, il suffisait de brancher le câble clavier provenant de l’écran sur l’ordinateur. Ces différentes aventures démontrent que dans notre société moderne il faut s’assurer de lire le mode d’emploi. n

Agenda

Projets AAA de Switch pour la période 2008 - 2011 Pierre.Mellier@epfl.ch, EPFL – Domaine IT, responsable du KIS

Suite aux projets AAI, la Fondation SWITCH a démarré au printemps 2008 une nouvelle phase de projets AAA appelée e-Infrastruture for e-Science pour la période 2008-2011. Les unités de recherche, les services informatiques centraux et les unités d’e-learning peuvent soumettre deux fois par année des propositions de projets. L'objectif de ces projets est d'améliorer le partage des prestations informatiques entre les différentes institutions, dans les domaines du Grid (optimisation de l'usage des ressources), du e-learning (améliorer l'accessibilité et le partage), et des organisations virtuelles (meilleurs supports informatiques aux projets de recherche interinstitutionnels). Pour la septième étape, les projets doivent être soumis jusqu'au 31 mars 2011. Ces projets doivent être centrés sur des aspects coopératifs et doivent impliquer au moins un autre partenaire institutionnel. Le soumissionnaire doit également apporter 50% des fonds du projet. Les projets seront évalués en fonction des bénéfices pour l'utilisateur final, des aspects coopératifs, du caractère d'innovation, de la pérennité de la solution, de la qualité de la gestion du projet. Des renseignements très complets sont disponibles à l'adresse www.switch.ch/aaa ou chez Pierre.Mellier@epfl.ch.

After the first phase of realization of the infrastructures for authentication and autorization (AAI), SWITCH Foundation has started a new phase for the 2008-2011 period on AAA projects, called e-Infrastructure for e-Science. The research units, the central informatics service and the e-learning units can participate twice a year by submitting project proposal. The objectif of these projects is to improve the sharing of informatics resources between different institutions in the domains of Grid (optimization of the use of resources), of e-learning (to improve access and sharing) and of virtual organizations (better informatics support to inter-institutional research projects). For the seventh deadline, the projects must be submitted for March 31. These projects must focus on cooperative aspects, and involved an other institutional partner. These projects must be realized within a matching fund framework (50% from SWITCH and 50% from the institution). Their evaluation will be based on end user benefits, cooperative aspects, innovative aspect, sustainability, and quality of the project management. More complete information can be found at www.switch.ch/aaa or contact Pierre.Mellier@epfl.ch. n

22 FÉVRIER 2011 - N°1/2

13


Agenda

Insomni'hack 2011 – concours de hacking éthique Paul Such, directeur SCRT

SCRT organizes for the forth year a contest of Ethical Hacking Insomni’hack which will take place in Geneva on March 4th. La société SCRT organise pour la quatrième année consécutive un concours d’Ethical Hacking Insomni’hack qui se tiendra à Genève le 4 mars prochain.

Présentation du concours Le vendredi 4 mars 2011, se tiendra à Genève la quatrième édition du concours de hacking, INSOMNI’HACK. Cet événement consiste en une série d'épreuves de tous niveaux (faciles à difficiles) relatives à la sécurité informatique. Le concours est ouvert à tous, du débutant à l'expert confirmé ! L'inscription est gratuite et divers prix sont à la clé. Il s'agira, au final, pour chaque participant d'utiliser ses compétences en matière de sécurité des systèmes d'information, ceci dans une ambiance conviviale. Les visiteurs sont les bienvenus, des activités leur seront proposées.

Quand ? Le vendredi 4 mars 2011. Cette année, des conférences seront organisées durant l’après-midi. Le concours, lui, débutera dès 18 heures, et ceci jusqu’à environ 1 heure du matin.

Où ? Haute École du Paysage, d’Ingénierie et d’Architecture (HEPIA), Rue de la Prairie 4, 1202 Genève.

Public cible z Hackers européens. z Ouvert à tous les professionnels ou particuliers, passionnés ou simplement intéressés par le hacking et la sécurité informatique.

Qui est SCRT ? SCRT est une société basée à Préverenges près de Lausanne, entièrement dédiée à la sécurité de l'information. Depuis maintenant plus de 8 ans, nous proposons une large gamme de services dans le domaine de la sécurité informatique, tels que tests d'intrusion, audits, intégration, formations, etc.

14 flash informatique

Ethical hacking L’ethical hacking consiste à attaquer le système de sécurité d'une entreprise avec son consentement et à sa propre demande. Il a pour but de détecter les failles du système qui pourraient être exploitées par une personne mal intentionnée. L’ethical hacker utilise les mêmes méthodes que les pirates informatiques à proprement parler, mais à des fins honnêtes et constructives.

Conférences agendées Pour la première fois cette année, auront lieu des conférences sur le thème de la sécurité informatique. Différentes conférences seront agendées durant l'après-midi, de 14h jusqu'à 18h. Les sujets seront traités par des conférenciers spécialisés dans leur domaine et couvriront les thèmes suivants: z cryptographie. z organisationnel. z analyse de vulnérabilités récentes. z vulnérabilités concernant les terminaux mobiles. Tout comme pour le concours, il est recommandé de s'inscrire préalablement pour les conférences, le nombre de places étant limitées.

Objectifs du concours z Faire connaître au grand public les enjeux et les risques induits par l'émergence des nouvelles technologies. z Permettre aux participants de pratiquer leur art dans un cadre légal. z Offrir un lieu d'échange entre passionnés et professionnels afin de partager des connaissances et des compétences en matière de sécurité informatique.

Les épreuves du concours Les épreuves proposées lors de ce concours ont aussi bien pour cibles des novices que des experts, le but étant de divertir tout le monde. Les thèmes seront variés avec des épreuves de logique, de cryptographie, de reverse engineering, des attaques Web ou encore de réseaux. Le classement des participants se fait en fonction du nombre de points acquis lors de la résolution d'épreuves. Bien entendu, le nombre de points varie en fonction de la difficulté de l'épreuve. Cette année le travail en équipe sera autorisé et, comme les années précédentes, diverses épreuves seront proposées pour les visiteurs (lockpicking, hardware,...) n


À votre service

17:40:65:42:0D:66:06:EE:87:44:C9:37:07:FC:51:FF

nouveau certificat de notre CA Martin.Ouwehand@epfl.ch, EPFL - Domaine IT, responsable sécurité informatique

The EPFL certificate authority will start using a new certificate, what are the consequences ? L'autorité de certification de l'EPFL renouvelle son certificat: quelles en sont les conséquences ? Il y a un peu moins de dix ans paraissait un article dans le FI2/02 avec un titre analogue (voir 48:69:6D:82:56:56:FA:F4:8E:85: C6:4D:02:95:9B:65, le nouveau certificat de notre Autorité de Certification) et pour la même raison: le certificat courant de l’Autorité de Certification de l’EPFL arrive à échéance le 21 janvier 2012 et il est donc temps d’introduire déjà le certificat qui prendra la relève, dès le 1er mars 2011 et jusqu’au 31 janvier 2031, ce recouvrement dans le temps servant de nouveau à assurer une transition sans heurt (je serai, je l’espère, à la retraite en 2030 et je ne pourrai donc pas recycler une deuxième fois mon article de 2002).

Quel est l’impact de ce changement ? Il est bien moindre qu’en 2002, parce que notre Autorité de Certfication a cessé en 2008 d’émettre des certificats pour les serveurs Web (voir Les certificats SSL pour serveurs sont désormais signés par GlobalSign dans le FI1/08) que nous obtenons depuis début 2009 auprès de QuoVadis par le biais du programme SwitchPKI (voir Nouvelle autorité de certification pour les certificats de serveurs dans le FI2/09). En ce qui concerne les certificats personnels délivrés aux membres de l’EPFL, le changement annoncé n’a aucun impact pour ceux qui ne les utilisent que pour s’authentifier auprès de Tequila (bouton Security Cert), les dispositions ont déjà été prises pour que les certificats délivrés avec le nouveau certificat de notre Autorité soient reconnus.

Par contre, ceux qui utilisent S/MIME (standard de signature et chiffrement du courier électronique, voir dit.epfl.ch/page-17370. html) doivent charger le nouveau certificat (certauth.epfl.ch/ newepflca.pem) dans leur logiciel e-mail pour une transition sans heurt (ceci est toutefois fait automatiquement pour les utilisateurs d’Outlook sous Windows et dont le poste de travail est rattaché à l’Active Directory). Enfin, les webmasters utilisant encore pour leur site Web un certificat d’avant 2008 émis par l’Autorité de l’EPFL doivent d’ici début 2012 obtenir si nécessaire un certificat auprès de QuoVadis (nous ferons dans le courant de l’année une campagne de rappel auprès de ceux qui l’auraient oublié).

Informations utiles z L’article de 2002 (ditwww.epfl.ch/SIC/SA/SPIP/Publications/ spip.php?article231) débute par une introduction générale au monde des certificats, toujours d'actualité. z Le titre donne l’empreinte digitale (fingerprint ou hash en jargon anglo-informatique) du nouveau certificat de l’Autorité de Certification de l’EPFL, au format MD5. L’empreinte au format SHA-1, aussi utilisé par divers logiciels, est: 49:68:F7:8 F:54:50:E7:EF:B0:98:9B:DA:95:6E:71:26:BC:82:C7:82. z Le site de l’Autorité de Certification de l’EPFL: certauth.epfl.ch. z Pour demander un certificat personnel: https://tremplin.epfl. ch/certs.cgi. z Pour accéder au certificat de l’Autorité de Certification: certauth.epfl.ch/cacert.html. z Le site de la Registration Authority SwitchPKI (certificats Web): rauth.epfl.ch. z Pour demander un certificat Web: https://tremplin.epfl.ch/servCertReq-SCS.cgi. n

Brèves En 2010, le Domaine IT a réalisé une campagne de sensibilisation à la sécurité informatique que vous avez pu découvrir un peu partout dans l'École, sur le Web, sur les écrans, dans le Flash, sur les serviettes des restaurants et bien sûr dans le FI. Un petit cahier regroupant les points importants de cette campagne vient de paraître. Il sera envoyé à tous les nouveaux arrivants sur le campus. Vous pouvez également le demander à la réception du DIT. Jacqueline.Dousson@epfl.ch, Domaine IT

Secure-IT, votre affaire

IT Security is your concern https://secure-it.epfl.ch © Domaine IT – CP 121 1015 Lausanne 15 – mars 2011

22 FÉVRIER 2011 - N°1/2

15


Actualités

CiNN 01, édito i-Ci n’est plus, vive CiNN ! Patrice.Fumasoli@unil.ch, UNIL, rédacteur en chef du CiNN

A new look, a light tone for an accessible and well illustrated content. With CiNN, feel the IT world through our coverage and our achievements. Un emballage neuf, un ton léger au service & d’un contenu accessible et bien illustré. CiNN   ou le monde bouillonnant des technologies de l’information vu à travers nos yeux et nos réalisations.

http://www.unil.ch/ cinn Informer la communauté de l’UNIL des outils informatiques & que le Ci   met à sa disposition, attirer l’attention sur d’importantes mutations technologiques qui auront un impact sur la vie de l’institution: ces objectifs sont l’ADN de CiNN. Trois numéros rythmeront l’année académique (automne-hiver, été et printemps). Une rubrique nouvelles brèves, libre de toute périodicité, permettra aux collaborateurs du Ci, étudiants compris (plus de 20 étudiants travaillent au Ci !) de communiquer sur un ton moins formel. Pour attirer l’attention sur un article intéressant, pour communiquer une statistique (utilisation du Wi-Fi, de MyUNIL, de PrintUNIL,…), ou pour faire le compte rendu d’une conférence, d’un congrès ou d’un voyage. Les nouveaux collaborateurs du Ci seront bien entendu toujours mis à l’honneur, dans le cadre de l’incontournable rubrique people. i-Ci, notre précédent journal en ligne, aura vécu 7 ans, c’est qui est long en matière de Web. Il était donc grand temps de mettre un wordpress – un système de gestion de contenus Web libre et plébiscité par des millions d’utilisateurs - dans le moteur du journal en ligne du Centre informatique, son prédécesseur Spip étant arrivé au bout de ses possibilités. Le nouveau look se veut plus clair, la navigation plus intuitive. Il est désormais possible de s’abonner au journal via RSS, histoire d’avoir les derniers contenus CiNN dans son agrégateur préféré (ThunderBird, Apple Mail, Google reader,…). Le moteur de recherche se trouve en un coup d’œil, un nuage de mots-clefs permet de visualiser les sujets abordés tout en offrant un surf thématique, les articles écrits par

16 flash informatique

un auteur se trouveront en un clic, le site sera optimisé pour les smartphones, des contenus multimédias apparaîtront progressivement… CiNN s’ancre d’un clin d’œil dans le Web du 21e siècle. Ce premier numéro abordera plusieurs sujets qui font l’actualité de l’UNIL et des nouvelles technologies. Le quartier Mouline se développe et, en attendant Géopolis, l’IDHEAP y dispose depuis la rentrée d’automne d’un bâtiment flambant neuf. Le secrétaire général de l’Institut des Hautes Études En Administration Publique nous accueille pour une visite et une interview portant notamment sur l’intérêt d’une présence physique sur le campus de Dorigny, ainsi que sur l’informatisation de cet institut et de ses cursus, avec notamment le Ci comme partenaire. Sur le front des SIG, un atlas interactif de l’État – fruit d’une collaboration notamment entre le Ci et l’IDHEAP - est désormais disponible, un outil à découvrir de toute urgence tant il est utile dans de nombreux domaines scientifiques. L’article qui présente notre offre d’hébergement de serveurs virtuels intéressera par exemple un groupe de recherche qui a besoin de serveurs sans pour autant avoir les ressources pour gérer une ferme de ce type bien particulier. Les & feront étudiants de FBM   quant à eux connaissance avec une nouvelle application Web qui attribue par exemple les sujets des travaux de master sur la base d’un tirage au sort. Sur le front de l’actualité informatique au sens large, un étudiant en fac de droit (et collaborateur du Ci) nous propose de suivre le procès de la société Logistep - en direct du Tribunal fédéral s’il vous plaît – pour aborder le thème brûlant du piratage d’œuvres numériques protégées par les droits d’auteur. Et, pour finir, que serait un premier numéro sans un article de la main du directeur pour faire le point sur le Ci d’hier, d’aujourd’hui et de demain, le tout dans une perspective de qualité ? n GLOSSAIRE

&

Ci : Centre informatique de l'Université de Lausanne (UNIL) www. unil.ch/ci. CiNN (Centre informatique Net News): un nouveau journal en ligne pour l'informatique de l'UNIL. FBM : Faculté de Biologie et Médecine de l'UNIL


À votre service

Et si vous clavardiez... Luc.Venries@epfl.ch, EPFL - Domaine IT, responsable du service Exchange

An Instant Messaging (IM) solution in test at the EPFL until summer 2011. Une solution de messagerie instantanée en test à l'EPFL jusqu'à l'été 2011.

La messagerie instantanée requiert, pour être utilisée, l’emploi d’un logiciel client installé sur le poste de travail ou d’utiliser le webmail ewa.epfl.ch. Le serveur Lync emploie un protocole propriétaire se basant sur SIP et SIMPLE (=SIPE). On ne peut donc pas utiliser n’importe quel programme de messagerie instantanée. En plus du webmail ewa.epfl.ch, voici les programmes compatibles: sous Windows:

sous Mac:

sous Linux:

Lync 2010

MS Communicator

Pidgin + sipe

Pidgin + sipe La messagerie instantanée, le dialogue en ligne ou le clavardage (québécisme), également désignée par l’anglicisme chat (bavardage) francisé en tchat, permet l’échange instantané de messages textuels entre plusieurs ordinateurs connectés au même réseau informatique, et plus communément celui d’Internet. Contrairement au courrier électronique, ce moyen de communication est caractérisé par le fait que les messages s’affichent en quasi-temps réel et permettent un dialogue interactif (fr.wikipedia.org/wiki/ Messagerie_instantan%C3%A9e). Un tel système vient d’être mis à l’EPFL comme pilote à des fins de test et d’évaluation pour une durée d’au moins 6 mois. Les objectifs de ce pilote sont: z étudier le remplacement de solutions décentralisées dans certaines facultés par une prestation centrale; z décharger la messagerie par un moyen plus interactif; z remplacer d’autres outils de communication décentralisés/ externes (MSN, Skype, ICQ, Yahoo, Google, AOL, AIM …); z évaluer des moyens de communication avec RAK; z définir et valider l’infrastructure; z définir la criticité du service. La solution choisie pour ce pilote est le logiciel Microsoft Lync Server. Il s’agit d’un système géré, hébergé localement et centralement, qui s’appuie sur l’Active Directory pour l’authentification. Cela implique qu’il n’y a pas besoin de créer de nouveaux comptes et tous les correspondants potentiels sont dans l’annuaire; les nom et mot de passe de l’utilisateur étant quant à eux déjà connus. Chaque personne de l’EPFL disposant d’une adresse @epfl.ch peut demander l’activation de son compte de messagerie instantanée en envoyant un mail à im@epfl.ch. Il est possible de demander l’activation pour tout un groupe ou un laboratoire.

Empathy + sipe

Un indicateur de statut (présence, absence, occupation…) intégré au programme permet de savoir si son interlocuteur est potentiellement apte à correspondre.

Le statut de présence est visible pour les autres utilisateurs dès la connexion à un client de messagerie instantanée. Il faut effectuer la recherche d’un correspondant pour voir son statut de présence et communiquer avec lui. Le plus simple sera de l’ajouter dans ses contacts pour une utilisation future. Bien que les fonctions d’appel audio, de vidéo, de partage de bureau et d’application soient disponibles avec le système mis en place, celles-ci ont été désactivées. Elles feront peut-être l’objet de tests spécifiques ultérieurement. Enfin, comme il s’agit pour le moment d’une phase pilote et non d’un service critique, l’infrastructure mise en place n’est pas redondante et dans ce cas nous ne pourrons évidemment pas éviter toute interruption de service. Vous trouverez de la documentation complémentaire sous: dit.epfl.ch/im. n 22 FÉVRIER 2011 - N°1/2

17


Agenda

Un penseur, un fignoleur et un programmeur… Christian.Kauth@epfl.ch, EPFL-STI, doctorant, président PolyProg

… se donnent rendez-vous pour la seconde édition de l'

Helvetic Coding Contest & (HC2)   qui se déroulera

ce 12 mars à l'EPFL!

& Vu le grand succès de la première édition, PolyProg   a décidé de mettre les bouchées doubles pour vous offrir un HC2 2011 exceptionnel ! Vos cellules grises trouveront leur compte pendant ces cinq heures de concours. Avec vos deux coéquipiers, votre équipe disposera de quinze heures de réflexion (trois cerveaux qui turbinent en parallèle pendant cinq heures) pour imaginer des solutions aux huit problèmes algorithmiques proposés. Les occasions pour démontrer votre créativité et vos capacités de réflexion pluridisciplinaire ne vont pas manquer et vous amèneront à des solutions originales et stupéfiantes. Il s'agira ensuite de les traduire en des petits programmes en C, C++ ou Java. Si les meilleures équipes se battent sur des solutions hautement avancées et visent un score parfait, la fascination pour les casse-têtes tout comme une pensée logique et originale sont suffisantes pour participer. En effet, pour chaque problème, un juge automatique compile et exécute vos programmes et vérifie qu'ils produisent des résultats corrects dans les limites de temps et de mémoire. Ces contraintes se serrent au fur et à mesure des tests et assureront que seuls des algorithmes bien pensés parviennent aux 100%, les autres s'arrêtant entre 30% et 80% des points. Cette stratégie de correction vous permettra de tenter votre chance et de vous amuser à résoudre tous les problèmes, quel que soit votre niveau. L'HC2 2011 rassemblera des étudiants bachelor, master, des doctorants et même quelques gymnasiens intrépides venant des quatre coins de la Suisse. Pour vous mettre dans l’ambiance, voici l’un des casse-têtes de l’Helvetic Coding Contest 2010. Heidi, la vache mascotte de l’événement, organise un banquet de fondue pour célébrer la fin d’hibernation de toutes les marmottes en Suisse. Les emplacements de ces dîners peuvent être modélisés par des points équidistants le long d’une ligne. Toute planification

18 flash informatique

étant soumise aux caprices du hasard, Heidi connaissait certes le nombre total d’invités, mais a dû estimer à son mieux l’emplacement qui sera choisi par chacune des marmottes. Si certains villages sont abondants en fondue, il en manque à d’autres et il faudra recourir à une redistribution des portions. Heidi priera simplement quelques marmottes de changer de village tout en garantissant que la distance cumulative parcourue par l’ensemble des marmottes pour ce réarrangement sera minimisée. Si la distance entre deux villages voisins vaut un, combien vaut alors la distance minimale de parcours pour que chaque marmotte trouve sa fondue ? Il y a pour les tests les plus durs jusqu’à 100'000 emplacements dont la différence absolue par village entre le nombre de marmottes et celui des portions de fondue peut atteindre 1000. Votre satisfaction sera maximale si vous essayez de trouver la & par vous-même avant de la vérifier dans le glossaire. solution   Et pourquoi pas l’implémenter et la tester sur les quelques tests &  proposés sur le site de l’édition 2010   ? Vous y trouverez aussi les autres problèmes accompagnés des idées aux solutions. Composez votre équipe du tonnerre et relevez le défi! Si ce n'est pas un prix (pour les cinq meilleures équipes), votre t-shirt HC2 vous restera comme souvenir de cette journée hors du commun. Inscrivez-vous d’ores et déjà sur hc2.ch. Il va de soi que l'organisation d'un événement d'une telle ampleur repose sur un considérable soutien logistique et financier. À ce propos, nous adressons nos chaleureux remerciements à l'EPFL qui & fournit l'infrastructure et à Open Systems   qui a fait confiance 2 à PolyProg pour l’organisation de HC 2011 et parraine généreusement l’initiative. n

GLOSSAIRE

&

édition 2010 de HC2: www.hc2.ch/archive/2010/. HC2 : Helvetic Coding Contest, inscriptions sous www.hc2.ch. Open Systems: www.open.ch. PolyProg : association du campus qui représente l’EPFL à des concours de programmation internationaux et fondatrice de l’HC2. polyprog.epfl.ch. solution: chaque voyage de marmotte peut être décomposé en plusieurs étapes, reliant chacune deux emplacements voisins. Il n’importe pas de savoir quelle marmotte se déplace, puisqu’on s’intéresse exclusivement à la distance cumulative. Ainsi une solution greedy fait l’affaire. On demande aux marmottes excessives ou virtuellement manquantes du village 1 de se rendre au village 2. Maintenant le village 1 est en équilibre et nous répétons l’opération depuis le village 2 au village 3 et ainsi de suite, chaque fois sommant la différence absolue entre marmottes et portions de fondue dans le village


Analyse

Autopsie d’une attaque, microprogrammation en danger Laurent.Kling@epfl.ch, EPFL- STI, coordinateur informatique à la Faculté des sciences et techniques de l’ingénieur

Cyber attack on your washing machine Attaque informatique sur votre machine à laver

Une menace diffuse Si on écoute les chantres de la sécurité informatique, une attaque cybernétique globale est imminente, comme la menace soviétique d’une époque heureusement révolue. Ces experts peignent le diable sur la muraille de nos craintes, particulièrement efficace quand le firewall est virtuel. Souvent, l’informatique est comprise uniquement dans le contexte limité des ordinateurs de bureau, des serveurs et du réseau Internet. En réalité l’informatique est largement plus diffusée, pratiquement chaque objet de la vie quotidienne est basé sur un microcontrôleur qui réalise des opérations logiques ou de régulation. Si votre garagiste branche un appareil de mesure sur votre voiture, c’est par obligation. Une voiture moderne n’est qu’un vaste réseau industriel qui relie ses différents éléments. Le poids grandissant des véhicules est également provoqué par la & et moteurs électriques en tout genre profusion d’actuateurs   qui permettent de régler votre rétroviseur, lever vos vitres, laver vos feux de circulation, essuyer vos glaces, verrouiller votre voiture, réguler votre vitesse...1 Dans le cas d’une automobile, nous sommes souvent démunis face à cette profusion de capteurs et d’intelligences embarqués. L’allumage d’un seul voyant d’erreur sur son tableau de bord entraîne rapidement la consultation de spécialistes. Le diagnostic de plusieurs garagistes dépositaires de la marque peut laisser dubitatif quant à la pièce à changer: z la sonde lambda, z l’embrayage, z la boite de vitesse. Devant des indications aussi disparates, on peut être tenté de ne rien faire, ce qui entraîne parfois la disparition de l’alerte ! L’intégration du logiciel et du matériel est appelée par le néologisme firmware (microprogrammation). Sur un plan familier, votre machine à laver la vaisselle ou votre cafetière électrique programmable utilisent des microprogrammes embarqués. Pour ces appareils, les fabricants pensent assurer la sécurité par l’opacité des technologies employées. Bizarrement, personne n’évoque le risque d’attaque informatique.

Stuxnet, une attaque réussie sur de la microprogrammation En août 2010, une société de sécurité située en Biélorussie annonce la découverte d’un ver informatique qui affecte des clients iraniens (un ver est capable de fabriquer par lui-même ses toxines, de se reproduire et de se déplacer). La nouveauté réside dans la combinaison de 3 attaques différentes contre: z le système d’exploitation Windows, z un contrôle industriel, z une régulation de vitesse.

Même processeur, même architecture Les virus ou les vers utilisent des lacunes provoquées par les concepteurs. En général, ces lacunes sont involontaires et permettent dans les cas les plus graves une exécution d’un code non autorisé. Pour réussir, une attaque doit nécessairement provenir de la conjonction d’un code malin dans une architecture définie. Comme pour le monde vivant, la barrière des espèces évite de nombreuses attaques. Dans le cas de Stuxnet, l’objectif est de réussir à perturber une opération d’enrichissement de l’uranium dans une centrifugeuse. Pour l’opération d’enrichissement, ces appareils sont mis en cascade pour obtenir une concentration appréciable. Et naturellement, le processus doit se dérouler sur de longues périodes sans interruption ni perturbation. L’infrastructure matérielle est difficile à saboter, la fourniture de pièces défectueuses peut être contournée par un contrôle de qualité élevé. Seule une attaque indirecte peut réussir, elle doit utiliser le maillon faible de l’infrastructure, le logiciel contenu dans le régulateur industriel. L’étage de commande logiciel de contrôle – système de régulation doit être corrompu. Le vecteur d’infection procède en trois étapes: z contaminer l’ordinateur hôte, z contaminer le logiciel de contrôle, z pour finalement contaminer le régulateur industriel. L’analyse de cette attaque est complexe, des chercheurs de Symantec ont écrit dans une étude particulièrement bien détaillée ces trois niveaux d’attaques 2. Pour corrompre l’ordinateur, deux mécanismes conjoints ont été utilisés: z une signature électronique usurpée d’un fabricant de matériel de Taiwan, z quatre trous de sécurité dans Microsoft Windows, inconnus avant leur utilisation par Stuxnet.

Les deux premiers trous de sécurité ouvrent la porte à l’infection.

«Un véhicule haut de gamme nécessite environ 40 kg de faisceau {électrique} pour une longueur de plus de deux kilomètres et 1800 interconnexions.» www.educauto. org/Documents/Tech/ANFA-MULTIPLEX/multiplex.pdf.

1

www.symantec.com/content/en/us/enterprise/media/security_response/whitepapers/w32_stuxnet_dossier.pdf.

2

22 FÉVRIER 2011 - N°1/2

19


Autopsie d’une attaque, microprogrammation en danger L’hôte devient lui-même un porteur contagieux capable de transmettre la maladie par l’utilisation de deux nouvelles failles (une réplication sur les points de partage et une exécution par une file d’attente d’impressions). Ensuite, l’infection libère la 2e étape qui consiste à infecter le système de développement du microprogramme du contrôleur industriel qui utilise le langage S7, il inclut un code défectueux ne s’enclenchant que dans des conditions précises. La dernière étape est l’objectif, modifier le comportement d’un régulateur de vitesse. Dans ce cas, le ver était asservi à distance par une série de serveurs Web, une technique très courante pour & la gestion de parc de PC zombie   .

Le maillon faible, le régulateur de vitesse Le centre de la cible est le contrôleur industriel de Siemens S7-300 CPU. Chaque appareil peut commander jusqu’à 6 processeurs de communication CP 342 - 5 contrôlant chacun 31 moteurs. Une fois le processus d’infection réalisé, la cible identifiée et l’ordre exécuté, l’attaque peut com- Contrôleur Siemens S7 mencer. Sont concernés uniquement des moteurs avec des fréquences de rotation très élevées (de 48’420 t/min à 72’600 t/min). Le résultat est particulièrement désastreux pour un équipement mécanique tournant à ces vitesses: z accéléré jusqu’à 84’600 t/min, z freiné à 120 t/min, z re-accéléré à 63’840 t/min. L’attaque est une machine à état (processus informatique qui suit différentes étapes) incorporé dans tous les programmes contenus dans ces contrôleurs S7. Elle modifie la fréquence de consignes des moteurs selon un schéma pseudo aléatoire.

Pour reprendre l’analogie avec le monde vivant, cette attaque existe dans la nature: z une fourmi est attaquée par un ver parasite, z celui-ci modifie le comportement de la fourmi (elle reste immobile au sommet d’une herbe), z la vache ingère le brin d’herbe accompagné de son passager clandestin, z les larves du ver parasite se développent dans la vache, z les larves sont évacuées avec les déchets de la digestion, z elles sont ingérées par un escargot, z et finalement l’escargot est mangé par une fourmi. Ce scénario peut sembler être de la Science-Fiction, en fait c’est le contenu d’un article de Frédéric Thomas et Frédéric Libersat dans la revue Pour La Science de mai 2010 3. 

Une expérience pratique Dans une vie antérieure, j’ai écrit des microprogrammes, des composants logiciels permettant d’accéder à un matériel. Ce logiciel peut être directement intégré dans l’appareil ou se présenter sous la forme d’un pilote (driver) qui doit être chargé en mémoire pour que le matériel puisse fonctionner. C’est l’absence de pilote vidéo qui engendre des effets désagréables sur un PC comme une résolution d’écran de 800 x 600 pixels avec 4 bits de couleur. Si les pilotes ou drivers sont généralement livrés avec le matériel, il est parfois nécessaire de les recréer pour disposer d’une fonction supplémentaire. Par exemple, pour interfacer un contrôleur de communication série, ce circuit intégré se présente comme des registres où chaque bit d’information détermine une fonctionnalité. Baud Rate Generator Internal Control Logic Data

8

Control

5

CPU Bus VO

Interrupt Control Lines

Channel A Registers

Internal Bus

Interrupt Control Logic

Transmitter Receiver

10 19 Bit Frame Status FIFO Channel A

Control Logic

Channel B Registers Channel B

2

suffisamment d’évènements entre 13 jours et 3 mois

+5 V GND PCLK

attendre 2 heures

1 5 heures

attendre 15 ou 50 minutes

0 en cas d’erreur

5 Schéma machine à état

20 flash informatique

TxDB RxDB RTxCB TRxCB DTR/REQB SYNCB W/REQB RTSB CTSB DCDB

4

Une interface logicielle permet la jonction avec le matériel. Les paramètres doivent être facilement compréhensibles par un programmeur externe (vitesse de transfert, protocole, contrôle des flux,...). Dans l’idéal, ces paramètres doivent être indépendants du matériel. Pour des pilotes, la taille du code est un critère important. Ce problème de taille devient particulièrement aigu quand la mémoire disponible est faible. À mon grand désespoir, le pilote que j’écrivais en assembleur était quatre fois plus long que le code compilé intégré dans l’ordinateur. Intrigué par cette différence, j’ai décompilé ce code binaire original. Malheureusement, cela ne fut pas d’un grand secours, car je ne comprenais pas l’algorithme sous-jacent.

www.pourlascience.fr/ewb_pages/f/fiche-article-les-parasites-manipulateurs-24931.php.

3

DTR/REQA SYNCA W/REQA RTSA CTSA DCDA

Schéma bloc de la Famille 85C30

3

après redémarrage

TxDA RxDA RTxCA TRxCA


Autopsie d’une attaque, microprogrammation en danger Quelques années plus tard, pour la création d’un pilote de communication synchrone, j’ai eu accès au code source originel et sa simplicité me stupéfiât. Le programmeur partait du même point de départ que moi, les différents paramètres étaient dans un format lisible. Une machine à état transformait ces données dans le codage interne du contrôleur de communication, comme si le concepteur de ce logiciel avait compris la structure de la logique câblée contenue dans la puce.

Nombre de transistors 1'000'000'000

100'000'000

10'000'000

1'000'000

100'000

10'000

La seule limite, l’imagination 1'000

1970

1980

1990

2000

2010

Notre civilisation nous pousse à une spécialisation de Évolution du nombre de transistors depuis le premier microprocesseur en 1974 plus en plus grande, un système se décompose dans une multitude de sous-ensembles, processus répétés pour atteindre une dimension fractale. Sur un processeur moEn conclusion, le problème de la sécurité ne se résout pas par derne, le nombre de transistors se compte en milliards, la tentation l’opacité des moyens employés et il faut se garder de faire de trop est forte de cacher des processus directement dans le silicium. grandes simplifications. Une compréhension fine des mécanismes En octobre 2010, un programmeur a découvert que l’exécution sous-jacents est toujours possible, la seule limite est l’imagination. d’un code (EDI=9C5A203A) ouvrait des fonctionnalités suppléDans ce monde de l’imaginaire, je mentaires de déverminage sur des processeurs AMD. L’exécution recommande la lecture du livre qui de ce code est cachée au commun des mortels, car il doit être exém’a poussé en 1979 à m’intéres& de l’ordinateur, blogs.mail.ru/ cuté avant le démarrage du BIOS   ser de plus près aux mécanismes de mail/czernobyl/648A41F5D75615FF.html. l’informatique (ce roman contient la Le nombre de transistors inclus dans un processeur moderne première définition d’un ver infordonne le tournis, à titre de comparaison l’Intel 8086 en possédait matique). Il s'agit de The Shockwave 29’000 et il permit l’avènement du PC, le cœur du Macintosh était Rider de John Brunner (ISBN-13: le Motorola 68’000 qui en contenait 68’000. L’ancêtre 6502 de 978-0345467171) dont la version l’Apple II avait ses 3510 transistors, en.wikipedia.org/wiki/Transisfrançaise, Sur l’onde de choc, est tor_count. malheureusement épuisée. n

GLOSSAIRE

&

actuateur: Système de commande conçu pour engendrer une force capable de produire un mouvement.

BIOS (Basic Input Output System): microprogrammation permettant l’interfaçage entre un système d’exploitation et les périphériques comme le disque, le clavier et l’écran.

PC zombie: PC sous contrôle extérieur pour exécuter des activités non prévues par le propriétaire de l’appareil.

DIT-info ../.. Suite de la page 2

Le DIT accueille Patrice Beaud, Ingénieur diplômé de l'EPFL, qui a rejoint le groupe Exploitation début janvier. Il participera avec ses collègues à l'exploitation des infrastructures de virtualisation, sauvegarde et stockage. Nous souhaitons la bienvenue à Patrice, une intégration très rapide dans le groupe et espérons qu'il trouvera entière satisfaction dans son poste. Fabien.Figueras@epfl.ch, Domaine IT n 22 FÉVRIER 2011 - N°1/2

21


Actualités

Seductive Interactions à Phoenix Natalie.Meystre@epfl.ch, EPFL – Domaine IT – KIS, architecte de l'information

User eXperience (UX), or how to highligt the experiential, affective, meaningful and valuable aspects of human-computer interaction and product ownership. L’expérience utilisateur (UX), ou comment donner le goût à l'utilisateur de revenir sur une interface numérique.

Rapport de conférence pour le 11th Architecture Information Summit, Phoenix, 2010 «L’architecture de l’information est l'art et la science de structurer, de cataloguer et d'indexer des sites Web ainsi que des Intranet pour aider les utilisateurs à trouver et gérer l’information. Elle transpose les principes du design et de l’architecture dans les univers digitaux». Le métier d’architecte de l’information traite de la qualité du design et de l’ergonomie des interfaces, des interactions sur les sites et applications Web. Sa grande messe est le rendez-vous annuel américain IA Summit’ 1. Lors de l’édition 2010, j’ai eu la chance de rencontrer des gens comme Peter Morville, auteur de la bible Information Architecture for the WWW et d’aborder un large spectre de problèmes concernant l’ergonomie et l’organisation de grands sites Web, la navigation, les tests utilisateurs, l’optimisation des processus de recherche, la gestion de ce genre de projet etc. Je vais cependant me limiter ici à un compte-rendu d’un atelier intitulé Art & Science of Seductive Interactions. Le travail consistant à apporter plus de séduction dans une interface Web vient après les postulats suivants: z Désormais, les sites Web sont si nombreux qu’il ne suffit pas de se mettre en ligne pour susciter admiration et respect universels. z La plupart des internautes sont familiers avec les concepts d’hyperliens, de navigation, de mise en page Web, et se repèrent facilement sur la toile. z De plus en plus, ils sont digitale native 2 (l’ordinateur et le Web font partie de leur paysage quotidien depuis toujours). z Certains standards se sont imposés (menu déroulant, boîte de recherche, largeur fixe d’une page..), d’autres ont même été dépassés (liens en bleu soulignés...).

z Autant il est possible, aidé par des tests utilisateurs, de fournir un site ergonomique ou une application parfaitement débuggée, autant le seuil entre un produit utilisable et un produit qu’on a du plaisir à utiliser est difficile à franchir. À partir de là, on peut appliquer à un site, qui par ailleurs fonctionne très bien, une grille d’analyse nouvelle. z Quelle est la tonalité visuelle du site ? z Quels sont les buts de mon site ? (s’inscrire, échanger des informations, acheter, apprendre, fréquenter un endroit, adhérer à des idées, draguer, écouter de la musique …). z Comment faire pour amener naturellement mon visiteur à faire ce pourquoi le site a été pensé ? z Quels sont les outils à disposition pour augmenter l’attractivité d’un site ? Dépasser le seuil quantifiable de l’usabilité pour entrer dans la sphère de l’expérience, plaisante et mémorable, est désormais le nouveau challenge des concepteurs de site du XXIème siècle.

Ambiance Un exercice amusant pour découvrir la tonalité d’un site est de flouter tous ses textes. Que nous disent les couleurs, les éléments graphiques et typographiques, les images et les symboles utilisés. Quel univers évoquent-ils ? Utiliser de manière cohérente les trois langages (graphique, sémantique et iconographique), et de manière adaptée aux goûts et aux attentes de votre public, a un grand impact sur la première impression donnée par votre site.

www.iasummit.org Don Tapscott relate cette anecdote à propos des digitale native: alors qu’il annonçait fièrement à ses enfants qu’il passait à la télévision pour expliquer des concepts d’utilisation du Web, ceux-ci, apitoyés, lui ont demandé s'il comptait aussi faire une démonstration du frigo pour les nuls.

1 2

22 flash informatique


Seductive Interactions à Phoenix

Raisons d’être Après avoir écarté les mauvaises raisons de faire un site, (à savoir il faut être sur le Web ou mon patron m’a demandé de faire le site de ma boîte), vous allez dresser une liste de cas d’utilisation qui vous sont spécifiques: basique: trouver l’adresse et le n° de téléphone de ma société; informatif: consulter un portfolio de projets, de publications; incitatif: venir manger dans mon restaurant; ludique: faire une partie de Scrabble avec des joueurs du monde entier; noble: partager mes idées. À ce stade, utiliser des verbes est important, ils sont le lien entre vos besoins et le comportement recherché auprès de votre public. Par analogie, on sait que le sport est bon pour la santé, mais quand l’objectif passe de faut faire du sport à courir 30 min par jour, une série de récompenses ou des mécanismes de valorisation peuvent se mettre en place afin d’atteindre réellement ses buts.

Comportement Pour caricaturer, le vingtième siècle fut l’époque où le temps libre des gens était employé à se caler confortablement dans un canapé pour regarder un programme télé composé par des spécialistes. Notre siècle propose maintenant la toile, où l’internaute peut choisir activement parmi des milliards de sites, pages, réseaux sociaux, jeux, applications en ligne, voire de contribuer en personne à l’augmentation de cette masse d’information. La gamme des interactions possibles avec ces sites s’est d’autant élargie, et le défi d’un architecte de l’information est d’analyser le comportement des personnes pour les fidéliser, ou du moins les retenir sur un site précis. C’est là que l’étude de la psychologie, la connaissance de la théorie des jeux par exemple, s’avère essentielle. Quels sont les mécanismes de motivation des gens, et par quelles actions les déclencher ? La liste est longue: plaisir, reconnaissance sociale, satisfaction de la tâche accomplie, valorisation de l’égo, économie d’argent, identification avec une communauté 3

prisée, défi à relever, statut personnel, sentiment d’être écouté, curiosité etc. Lesquels de ces leviers sont-il pertinents sur notre site, et par quel biais peut-on les activer ? Pour reprendre l’analogie avec le sport, je peux décider de choisir un itinéraire plaisant, m’offrir une pâtisserie chaque 5 jours, constater une meilleure qualité de sommeil … Afin d’augmenter l’attrait d’un site, va-t-on proposer des coupons de réductions sur les biens vendus, ou installer une fonctionnalité publication plus populaire pour inciter à la lecture de nos textes. Ce qui apporte du plaisir dans la vie réelle lors de l'accomplissement d'une tâche doit être reporté dans le monde virtuel.

Outil Stephen P. Andersen 3 propose un jeu de cartes fort utile pour susciter des réactions et réveiller des idées. Sous cet aspect ludique si apprécié de nos amis d’outre-Atlantique, la pratique de sa méthode s’avère particulièrement intéressant lorsqu’on coince dans l’évolution ou l’amélioration d’un produit: il s’agit d’associer des cartes comportementales à nos cas d'utilisation, elles vont fournir des indices et des suggestions pour faciliter l’exécution ou la compréhension des tâches. Un jeu est à disposition auprès de l’auteur de cet article. En conclusion, la fréquentation annuelle de personnes dont le but est d’améliorer la qualité, l’efficacité et la rentabilité des sites Web est toujours une riche expérience. La prochaine étape sera d’y faire une présentation de Web2010. n

www.poetpainter.com/seductive-interactions/

Brèves

Nom de la nouvelle revue HPC Vittoria.Rezzonico@epfl.ch, EPFL – SB-IT, spécialiste HPC

Dans le dernier Flash Informatique de 2010 (Spécial HPC), nous annoncions la création d'une nouvelle revue consacrée au calcul scientifique à l'EPFL. Le nom de la future revue avait été mis au concours, et nous sommes heureux de révéler ici le gagnant:

Zetta qui a permis à Jacqueline Dousson de recevoir la Logitech Squeezebox™. Zetta signifie 10 21, c’est après Peta (10 15) et Exa (10 18). Dans l'été 2008, le PetaFLOPS a été atteint par Roadrunner, un superordinateur basé sur la technologie CELL/B.E. L'ExaFLOPS est prévu aux alentours de 2020. En étant optimiste, on peut prédire le ZettaFLOPS pour 2030. Le nom de notre future revue, Zetta, ne risque donc pas d'être dépassé de sitôt. n 22 FÉVRIER 2011 - N°1/2

23


À votre service

Recherche de documents dans my.epfl Predrag.Viceic@epfl.ch, EPFL – Domaine IT - KIS, concepteur de my.epfl

Fulltext search in my.epfl La recherche full-text dans my.epfl Avec la migration effectuée en fin de l’année passée, la partie documents du projet my.epfl s’est vue offrir la fonctionnalité de recherche full-text. En effet, à moins de connaître l’emplacement exact d’un document, il était impossible de le retrouver. Ceci peut être handicapant dans un système contenant bientôt un demi-million de documents, chose désormais corrigée. et Comment ça fonctionne? C’est simple: cliquez sur l’icône rentrez la clé de recherche dans le champ texte en n’oubliant pas de cliquer sur Chercher. My.epfl vous retourne la liste de documents, en précisant la date de la dernière modification, l’auteur du document, ainsi que le lien vers le dossier où le document se trouve.

Recherche My.epfl indexe le contenu texte de la grande majorité des types

de fichiers, les PDF, les documents MS Office ainsi que les documents OASIS (OpenOffice, etc..). Vos termes de recherche sont pris en compte en considérant les espaces comme des OU logiques. Vous pouvez forcer la recherche des expressions en entourant vos termes de recherche par des guillemets. En plus de ces recherches intuitives, vous pouvez également utiliser la syntaxe Lucene (OR, AND, NOT, ...) en veillant à écrire les opérateurs en caractères majuscules. Ainsi, la recherche my AND NOT epfl retournera les documents qui contiennent le mot my, mais pas le mot epfl. Les documents qui vous sont retournés sont bien entendu uniquement ceux pour lesquels vous avez au moins les droits d’accès en lecture.

Indexation L’indexation est le processus qui commence par transformer un document, par exemple PDF, en texte simple en supprimant toutes les spécificités dues à la manière dont les données du texte sont sauvegardées. L’indexeur utilise ensuite ce qu’on appelle un toke& pour extraire les mots significatifs (les termes), c'estniseur   à-dire ceux qui contiennent le plus d’information. Ceci exclut typiquement les déterminants ainsi que les verbes et les noms très courants. Ces termes, devenant ainsi les clés de recherche, sont ensuite stockés de manière optimale dans un fichier qu’on appelle l’index.

Sur la plupart des systèmes, la réindexation se fait périodiquement, en ne prenant en compte que les fichiers modifiés, ajoutés ou supprimés. Ainsi, search.epfl.ch réindexe toutes les nuits les pages Web du domaine epfl.ch. À la différence des autres systèmes, my.epfl réindexe les documents à la volée. Dès qu’un fichier est déposé, supprimé ou modifié, l’indexeur est notifié de l’opération et procède à la réindexation. Ainsi, l’index est en permanence à jour et de plus, un document peut être recherché dès qu’il est déposé sur my.epfl.

Droits d’accès Comme dit précédemment, les documents retournés respectent les droits d’accès. Ainsi, les résultats de recherche diffèrent en fonction de l’utilisateur. Il va de soi que, lors de la modification de ces droits, le document est réindexé. Ainsi, lors des recherches subséquentes les nouveaux droits d’accès sont pris en compte immédiatement. Pour les curieux, ce tour de passe-passe est réalisé grâce à une astuce: lors de la réindexation, les droits d’accès (utilisateurs et groupes ayant droit) sont appondus aux mots-clés extraits par le tokeniseur et sont ajoutés à l’index. Ces droits deviennent ainsi les mots clés supplémentaires ajoutés au document. Lors de la recherche, le système appond à vos clés de requête votre identifiant de l’utilisateur, ainsi que les identifiants des groupes dont vous faites partie en les combinant à l’aide des opérateurs logiques. Ces informations deviennent donc partie intégrante de la requête, ce qui permet de ne rechercher que les documents auxquels vous, ou les groupes dont vous faites partie, avez droit. Bien entendu, les droits sont vérifiés une dernière fois avant de fournir le document à l’utilisateur. Cette astuce permet ainsi non seulement d’accélérer les recherches en les limitant aux documents auxquels vous avez droit, mais permet aussi l’utilisation d'un moteur de recherche standard et bien supporté, Lucene, sans trop modifier celui-ci.

Liens z lucene.apache.org/java/2_3_2/queryparsersyntax.html n

GLOSSAIRE

&

tokeniseur: Il s'agit du processus permettant de démarquer les différentes sections d'une chaîne de caractères. En effet, un ordinateur n'est pas capable seul de déterminer quels sont les mots d'une phrase; il n'y voit qu'une chaîne de caractères. Un processus de tokenization consisterait donc à séparer ces mots, selon les espaces. W W = tiré de Wikipédia

ISSN 1420-7192


Flash informatique 2011 - no 1/2