Revue de Presse Xebia

Revue de Presse Xebia
La revue de presse hebdomadaire des écosystèmes Java/JEE proposée par Xebia.

Actualité éditeurs / SSII

Le coin de la technique

Evénements de notre communauté en France et à l’étranger

Actualité éditeurs / SSII

Une faille de sécurité dans Ruby on Rails affecte Github

Egor Homakov a (re)-découvert une faille de sécurité importante dans la façon dont ruby on rails gère les affectations de masses. Homakov a d’abord tenté d’ouvrir un bug sur le projet github de rails. Confronté à une réaction négative des développeurs rails qui estiment que la sécurité est de la reponsabilité des développeurs applicatifs, il a mis en oeuvre la vulnérabilité contre github pour créer un second bug. Ce second bug intitulé « I’m Bender from the future » est daté de l’an 3012 chose normalement impossible. Rapidement fermé par les developpeurs de rails, homakov utilise une fois de plus la faille pour réouvrir le bug.
Son insistance est compréhensible, cette faille affecterait un grand nombre de sites, certains très visibles sur internet. Si même des sites aussi prestigieux et serieux que github,scribd, speakerdeck sont exposés, une modification de la configuration par défaut de rails semble clairement indiquée. Malgré ses démonstrations les développeurs de rails ont continué de soutenir leur position.
Homakov a alors fini par céder à la tentation de faire quelque chose de vraiment visible, et a ajouté sa clé privée au projet github ce qui lui a permis de créer un commit sur le master du projet!
Bien qu’ils désapprouvent l’utilisation de la faille pour « attaquer » le projet et même si il existe bien un paramètre de configuration à modifier pour que les applications soient protégées en standard, le fait que 90% des applications soit vulnérables par défaut déchaine la passion des utilisateurs.
Alerté, par Homakov, github a tout d’abord corrigé une première série de failles. Mais lorsqu’il a utilisé la faille dans le formulaire des clés privés sans en avoir averti github, ces derniers ont bloqué temporairement son compte, corrigé la faille des plus critiques et fait un premier communiqué à ce sujet. Faisant face à des critiques assez sévères sur plusieurs sites communautaires, ils ont fait un second communiqué expliquant les raisons du blocage.
La discussion autour du problème continue de faire rage sur le bug initial et il semble que d’autres frameworks de persistance, qui permettent eux aussi l’affectation de masse depuis les paramètres, soient affectés. Sont cités plus spécifiquement DataMapper, Sequel, MongoMapper, et Mongoid.

Si vous avez une application Rails, vous pouvez positionner:

  • config.active_record.whitelist_attributes à true
  • attr_accessible à nil sur ActiveRecord::Base
  • … et corriger les problèmes soulevés. Vous pouvez également vous assurer que tous vos modèles précisent explicitement les champs attr_accessible.

Yehuda Katz (@wycats) a fait une proposition de code pour corriger le problème, le reste de l’équipe ne s’est pas encore prononcé.

Le coin de la technique

Les bases de la conception logicielle

Olivier Azeau (aka L’agilitateur) entame sur son blog une série d’articles sur la conception logicielle en commençant par les bases. Le premier article propose des définitions des mots conceptions, concept, architecture, et propose une approche pour l’organisation des packages contenant nos classes. Cette organisation se base sur la classification en tant que concept d’architecture, concept d’implémentation et détails d’implémentation. Olivier Azeau associe à ces trois types de classes des objectifs en termes de dépendances de niveau d’abstraction et de niveau de stabiltié.

Un article facile à lire qui présente des points importants pour tout développeur, en attendant la suite.

Evénements de notre communauté en France et à l’étranger

Devoxx France 2012 : le comité a statué

Oyez ! Oyez ! Amis de Java et de la JVM. Le comité de sélection a rendu son jugement sur les différentes présentations que vous pourrez voir et entendre au cours de Devoxx France 2012. Il y avait au départ 467 présentations tout format confondu. Rien que le format Conference représentait à lui seul 270 propositions dont seul 49 ont été conservées (sans parler des backups). On ne peut que remercier le comité de sélection pour l’ampleur du travail qui a été fourni. Ceci étant fait, si l’agenda de la première journée a été arrêté (http://devoxx.fr/display/FR12/Agenda), il ne reste pour les organisateurs plus qu’à statuer pour l’agenda des deux jours suivants.

Hackergarten paris

La prochaine session du Hackergarten Paris aura lieu demain, mercredi 05 mars. Un Hackergarten, c’est une sorte de réunion où les participants sont invités à devenir contributeurs à des projets Open Source. Des contributeurs déjà actifs sont présents et les accompagnent pour la prise en main du code source. L’expérience dure 3h, les projets sont majoritairement annoncés à l’avance ce qui permet à tout le monde de préparer un environnement de développement pour pouvoir se mettre dans le bain au plus vite.

Les inscriptions au Hackergarten Paris ont lieu sur eventbrite et vous pouvez trouver des explications sur l’évènement de mercredi et sur la façon de procéder au setup des projets sur le blog de Brice Dutheil.

Les projets à l’honneur cette semaine sont :

  • Hibernate OGM / Hibernate Search ⇐ mentoré par Emmanuel Bernard
  • Maven / Jenkins ⇐ mentoré par Arnaud Héritier
  • Infinitest ⇐ mentoré par David Gageot
  • Mockito ⇐ mentoré par Brice Dutheil
  • FluentLenium ⇐ mentoré par Mathilde Lemée

Billets sur le même thème :

Laisser un commentaire