Vous êtes ici : Accueil Zope Zone Zope La sécurité dans Zope, pas si invulnérable que ça
Actions sur le document

La sécurité dans Zope, pas si invulnérable que ça

Par bluetouff - Dernière modification 25/07/2007 14:57

Le modèle de sécurité de Zope est réputé comme étant relativement solide, peu de "gros" incidents sont venus entacher la robustesse de ce serveur d'application utilisé sur de nombreux projets tant du secteur public que du secteur privé. Suite à un surf hasardeux, nous nous sommes questionnés sur la robustesse de produits tiers, en particulier les produits Plone . Comme c'est Noël, Toonux partage avec vous ses petits secrets :)


Un peu d'histoire


Versions antérieures à Zope 2.6 - Exploitable à distance


Zope a connu avant sa version 2.6 des soucis de path disclosure (accès à des répertoires non authorisés) dans son installation : nous pouvions accéder à certains repertoires en envoyant des requètes xml rpc non valides. Ce problème est normalement fixé depuis la version 2.6.1b. On trouve cependant de nombreux sites encore vulnérables.


Versions antérieures à Zope 2.8.2 - Exploitable à distance


Docutils présente une vulnérabilité dans Restructuredtext, un format d'édition intégré à Zope qui est venu améliorer le Structuredtext.

Un hotfix est disponible


Plone toutes versions


Accès en ZMI


Les permissions par défaut de nombreux produits sont testées pour Plone et non pour Zope, ainsi il devient possible à un simple utilisateur enregistré d'accéder à la zmi car un utilisateur se retrouve sur de nombreux sites avec un rôle local situé dans /Members/utilisateur et d'ajouter des contenus normalement non autorisés depuis Plone.
Ainsi, il devient aisé à un utilisateur de se créer une newsletter par exemple afin d'inonder de mails tous les membres d'un portail. Les spammeurs qui ne reculent devant rien devraient apprécier ce concept.
L'accès en ZMI peut être interdit via Apache, il est recommandé de le faire.
La communauté a été avertie à plusieurs reprises et ne semble pas se préoccuper de ce qui pourtant nous semble inadmissible : un accès en zmi pour un simple membre dans sa configuration par défaut. Si vous n'êtes vous même pas convaincus de la véracité de ces propos je vous invite à regarder avec attention le screenshot ci dessous.

zmi-access.jpg


Denis de service par threads d'écriture simultanés.


Par défaut, un Zope est capable d'encaisser 4 threads simultanés en écriture, ainsi un utilisateur mal intentionné peu aisément provoquer des dénis de services répétés sur un Zope en lançant des créations d'objets simultanées dans la ZODB. D'une manière générale, on peu dire que la ZODB est la plus grande qualité de Zope mais aussi son plus gros défaut.

Le plus inquiétant est vraisemblablement l'apparition de bots capables de créer automatiquement des contenus dans le dossier membre. Quand les exploitants s'apercevront que des objets intéressants peuvent être créés avec un simple petit /manage. Ce bot existe mais ne semble pas inquiéter la communauté Plone le moins du monde. Peu importe, nous verrons si Plone et Zope sont jugés comme des proies suffisamment intéressantes pas les hackeurs.


Ignorance et stupidité


La bêtise des administrateurs est sans aucun doute la première cause des catastrophes sous Zope. Une petite recherche bien choisie dans Google vous permettra de tomber sur un véritable musée des horreurs, voici 2 grands classiques qui sont uniquement le fait d'erreur de configuration d'Apache (il ne s'agit ici en aucun cas de vulnérabilités de Zope, en dehors du fait que les passwords soient stockés en clair, mais c'est un autre débat), le résultat est pas beau à voir puisque c'est le meilleur moyen de récupérer TOUTES les données d'un site, identifiants et mots de passes compris.


Le Data.fs

Le Data.fs est le gros fichier situé dans /emplacement_de_votre_instance/var , ce fichier contient tous les objets créés dans la base de données ojet de Zope (la ZODB).

"index of" Data.fs

Tapée dans Google cette requête ira chercher tous les Data.fs indexés dans un système de fichiers, présentant un défaut de configuration Apache.

Voici un petit exemple


L'acl_users

Comme son nom l'indique, c'est dans l'acl_users que sont contenus les objets un peu spéciaux que sont les identifiants et les mots de passe. Une fois ce fichier récupéré, il suffit de l'ouvrir avec un éditeur texte pour découvrir des passwords stockés en clair (90% des cas), vous pouvez aussi l'exporter en xml, c'est beaucoup plus lisible.

"index of" acl_users

Tapée dans Google cette requête ira chercher tous les acl_users indexés dans un système de fichiers, présentant un défaut de configuration Apache.

Voici un petit exemple

Vous serez peut être étonnés de voir que certains administrateurs (sites gouvernementaux compris) stockent des backups de Data.fs sur des FTP publics !

del.icio.us tags: zope sécurité exploit plone
Se connecter


Mot de passe oublié ?
Nouvel utilisateur ?
Tag Cloud Navigator
Blogroll & friends
Social Network

Digg!

 


Toonux is powered By FreeBSD, Zope & Plone and owned by Bluetouff ]-- Pilot Systems ring website

Toonux contents are copyleft under the WTFPL licence