SPIP Blog

Du logiciel libre et de la tendresse

Accueil > Développement > Alerte sécurité SPIP + nouvelle version SPIP 2.0.9

Alerte sécurité SPIP + nouvelle version SPIP 2.0.9

jeudi 6 août 2009, par Ben.

Bonjour,

un grave problème de sécurité vient de nous être signalé ; ce problème
affecte toutes les versions de SPIP 2.0.x jusqu’à SPIP 2.0.8, ainsi
que la branche 1.9. Il permet à un attaquant ne disposant d’aucun mot
de passe de prendre le contrôle de votre site SPIP et de votre serveur
web.

L’alerte est d’autant plus sérieuse que le "trou" n’a pas cette fois
été découvert par un "gentil", mais par un véritable "méchant" qui a
pris le contrôle d’un site existant pour y insérer des malware.

Correctifs

Nous publions donc aujourd’hui deux versions de maintenance de SPIP,
qui corrigent ce bug :
- SPIP 2.0.9, dernière version stable et officielle, qui contient,
outre la correction de ce problème de sécurité, quelques
améliorations, listées ci-dessous.
- SPIP 1.9.2i, version de maintenance de la branche 1.9.2

à télécharger sur
=> http://files.spip.org/spip/stable/

ou, si vous utilisez spip_loader, en vous rendant à l’adresse
=> http://xxx.example.tld/spip_loader.php

Pour les spécialistes, le patch de sécurité stricto sensu pour la
branche 2.0.x, qui ne corrige aucun autre bug et n’apporte aucune
autre fonctionnalité, peut se trouver ici :
http://fil.rezo.net/secu-14346-14350+14354.patch
Il s’agit des révisions [14347] [14348] [14349] [14350] et [14354].

Pour la branche 1.9.2x le patch est ici :
http://trac.rezo.net/trac/spip/changeset/14354/branches/spip-1.9.2

Ecran de sécurité

Si vous n’avez pas la possibilité de procéder à la mise à jour
complète tout de suite, nous vous invitons à colmater sans attendre le
problème en installant sur votre site l’« écran de sécurité », que
vous pouvez découvrir à l’adresse :
http://www.spip.net/fr_article4200.html
Cet écran permet de bloquer une éventuelle attaque sans pour autant
devoir mettre à jour les fichiers de SPIP.

Crédits

L’attaque a été détectée et analysée par Thomas Sutton et Pierre Rousset.

Nous vous rappelons que le meilleur moyen pour nous signaler un problème
de sécurité est d’envoyer un mail à la liste spip-team arobize rezo.net

Quelques modifications notables entre 2.0.8 et 2.0.9

- integration de l’ecran de securite si présent dans config/
- regexp plus strictes dans inc/syndic.php (évite un warning)
- le formulaire de login peut rediriger vers la page de l’auteur connecte
- affichage des revisions des champs extras2 et des mots-cles : …
- #FORMULAIRE_ECRIRE_AUTEUR : quand le mail ne part pas, le signaler
- filtres explode et implode
- ne plus changer l’id_auteur des forums quand on les edite
- bug #1757 : quand on - renseigne automatiquement un site - puis coche la …
- amélioration #1770 : ne pas vider les stats quand on importe un dump
- bug #1777 : ne pas publier une rubrique dont l’article est postdate…
- corriger l’ordre des éléments dans les flux RSS des forums
- afficher en clair les liens dans les forums a moderer
- caracteres supplementaires en arabe
- certains plugins refusaient de s’activer sur certains site

Log de la version 2.0.9

cf. http://trac.rezo.net/trac/spip/log/branches/spip-2.0 depuis 2.0.8

[14354] correction du nom de fichier de sauvegarde
- [14352] correction des autorisations sur les sauvegardes
- [14351] correction de l’icone ’tous vos articles" pour les rédacteurs qui avait disparu
- [14349]-[14350] correction de l’utilisation du validateur XML
- [14347]-[14348] correction des autorisations sur le chmod et les bases externes
- [14345] correction de la gestion du Content-Lenght sur requête Head+gz
- [14024]-[14326] correction de #INCLURE qui ne propage plus connect, comme <INCLURE
- [14295]-[14296] correction d’un appel par référence obsolète
- [14285] correction de la requête SQL avec Multi
- [14283] correction d’un warning sur fichier inexistant
- [14274]-[14276] correction de Regexp obsolètes dans la syndication
- [14273] correction de public_phraser_html, qui n’était pas surchargeable
- [14272] introduction de types de document : dv m4a m4b m4p m4u et m4v
- [14270] amélioration de la lutte contre les robots : ajout d’un rel=’nofollow’ sur le calendrier
- [14265] correction de l’autorisation de bases externes dans les cas de mutualisation (ok en multi-bases, toujours pas en base unique)
- [14259] introduction de l’argument "@page_auteur" dans le formulaire de login pour rediriger vers la page de l’auteur
- [14255] introduction de la classe "puce"
- [14253]-[14279] introduction des révisions des mots-clés et du champ extra2
- [14252] amélioration du #FORMULAIRE_ECRIRE_AUTEUR : quand le mail ne part pas, le dire
- [14226] introduction des squelettes en sous-répertoire pour les webmestres (spip.php ?page=chemin/vers/monsquelette acceptés)
- [14211] correction des dates nulles dans la version PostGres
- [14174]-[14203]-[14206] amélioration de la gestion de l’id_auteur dans les forums
- [14193] amélioration des forums : utilisation du tableau des traitements pour leur texte
- [14191] correction des sauts de ligne dans les forums
- [14190] correction de post_autobr
- [14187] introduction des filtres implode et explode
- [14181] correction du pré-remplissage dans la déclaration des bases externes
- [14176] correction du portage PostGres pour la fonction listdbs
- [14169] amélioration de la présentation de auteur_infos
- [14158] amélioration du code produit par le compilateur
- [14156]-[14157] correction du squelette de CSS en cas d’arguments fautifs
- [14155] correction d’un appel parfois manquant au pipeline "styliser"
- [14154] introduction de la constante _DEBUG_ANONYME
- [14150]-[14151] correction du / final dans les URL arborescentes
- [14149] correction du préfixe de table dans les requêtes SQL imbriquées
- [14147] correction d’erreur de type SQL par révision des spécifications de sql_quote
- [14146] correction de la gestion des ancres dans les URL absolues
- [14145] amélioration du cache des meta
- [14139]-[14141] correction de la propagation des ancres en Ajax/CVT par changement de spécification de redirige_formulaire
- [14137] amélioration des spécifications des fonctions d’installation de plugins
- [14133] correction de la fonction suivre_liens
- [14132] correction de la déclaration d’une syndication : le descriptif n’était pas toujours enregistré
- [14131] correction de la gestion des majuscules dans les extensions de fichier (#1762)
- [14130] correction des caches avec session
- [14129] amélioration de la reprise d’une restauration : sans cookie peut être ok
- [14128] amélioration des restaurations : conserver les statistiques présentes
- [14127] amélioration de la fonction retire_cache
- [14125] correction de la largeur dans le style des listes
- [14124] correction du statut de la traduction d’un article : pas d’héritage
- [14123] correction du cache de trouver_table
- [14119] correction des valeurs par défaut dans le phraseur
- [14118] correction des statuts et dates des articles post-datés et leur rubrique
- [14117] correction de la version PostGres : des apostrophes, pas des guillemets
- [14116] correction du script de rotation d’image
- [14166]-[14114] correction des appels de notes
- [13987]-[13993]-[13998]-[14000]-[14010]-[14029]-[14105] correction de #INCLURE et #MODELE qui n’acceptaient pas certains arguments
- [14102] correction de l’ordre des éléments dans les flux RSS de forums
- [14101] correction du critère par qui refusait certains arguments
- [14100] amélioration de la recherche des types d’URL disponibles
- [14093] correction des auto-liens (confusion avec le "<" d’un raccourci de tableau)
- [14089] introduction de la prise en compte du moteur Bing
- [14077]-[14079] correction de la recherche SQL, qui ne se faisait pas dans tous les forums
- [14078] correction du pluriel des tables SQL, pas toujours bien géré
- [14076] correction de l’attente Ajax, qui avait trop d’images
- [14075] introduction de nouveaux arguments dans la balise #LOGO_DOCUMENT
- [14069] introduction de la fonction surchargeable documenter_objet
- [14068] correction de la gestion des ancres en Ajax
- [14062] correction de l’appel ctype_xdigit, pas toujours disponible ; le simuler.
- [14060]-[14061]-[14064] correction du filtre "form_hidden", pas toujours compatible avec certains type d’URL
- [14057] correction du filtre "couper".
- [14055] correction du surlignement
- [14050] amélioration de présentation des forums à modérer
- [14047] correction de la création de vignettes automatiques dans l’espace privé
- [14046] correction du critère "par" inclus identique à un autre dans l’incluant
- [14043] correction des squelettes ICS qui ne spécifiaient pas le Charset
- [14042] correction du #LOGIN_PUBLIC n’acceptait pas une URL avec "&"
- [14040] amélioration de contenu_document, qui devine le Charset d’un document joint (.csv ou .html en particulier)
- [14039] correction du Title de l’agenda qui indiquait toujours la date courante.
- [14036]-[14038] amélioration de recuperer_page : gestion de user:pass dans l’URL, et réduction de la consommation de mémoire
- [14028] correction de la traduction iso-8859-1 en utf8
- [14025] amélioration des statistiques : ne pas compter les spams
- [14021] amélioration du pipe-line des articles : communiquer id_secteur
- [14020] correction des dates et des séparateurs dans le CSV des statistiques
- [13999]-[14018] introduction d’un pipeline afficher_hierarchie
- [14017] correction du formulaire d’édiion des rubriques
- [14013] correction de l’affichage normalisé de .csv joints qui ne le sont pas toujours
- [14008] amélioration de la recherche des fichiers de balises dynamiques par restriction
- [14004] correction de cas de bouclage dans une erreur en AJAX
- [14001]-[14003] correction de ligatures arabes
- [14002] introduction du pipeline "affiche_enfants"
- [13997] correction d’une erreur dans un message d’erreur
- [13984]-[13989]-[13994] correction du flux RSS de suivi du forum d’un article qui était lacunaire
- [13983] correction de la gestion de caractères non encodés dans la table des metas, qui tronquaient celle-ci d’où des incohérences notamment pour l’activation des plugins.

— l’équipe de SPIP

Messages

  • Salut,

    Il y a un problème dans le message un lien est mort !

    ou, si vous utilisez spip_loader, en vous rendant à l’adresse => http://xxx.example.tld/spip_loader.php

    squirrel :D

  • bonjour

    Le lien vers la version spip 1.9.2i n y etait pas : le voici

    http://files.spip.org/spip/archives/SPIP-v1-9-2i.zip

    MERCI pour toutes ces infos !

    mp

  • Après installation de la version SPIP 2.0.9 par transfert FTP (Filezilla), j’ai le message suivant lorsque j’essai de me connecter à l’espace privé :

    Préliminaire : Régler les droits d’accès
    afin de commencer réellement l’installation.

    Les répertoires suivants n’ont pas été trouvés :

    tmp/
    local/
    config/
    Il est probable que cela soit dû à un problème de mauvaise mise en majuscules ou minuscules. Vérifiez que les minuscules et majuscules de ces répertoires concordent bien avec ce qui est affiché ci-dessus ; si ce n’est pas le cas, renommez les répertoires avec votre logiciel FTP de façon à corriger l’erreur.

    Une fois cette manipulation effectuée, vous pourrez recharger cette page. ”

    Il n’y a pas de problème de majuscule ou de minuscule dans les noms des répertoires.
    Lorsque je tente de changer les droits des 3 répertoires en question, j’ai les messages suivants :
    Commande : SITE CHMOD 777 config
    Réponse : 500 ’SITE’ : command unrecognized.
    L’hébergeur de mon site est free.

    Merci de votre aide

  • Comment tester que l’écran de sécurité fonctionne bien ?

    Autre question : comment vérifier si une installation de SPIP n’a pas été compromise par la faille de sécurité en question ?

  • Pour tester l’écran de sécurité tu peux appeler l’url ./?page=test_cfg ca doit donner un acces interdit 503 en anglais.

  • Bonjour,

    Je viens de corriger la faille sur deux sites qui étaient en 1.9.2 et j’ai fait une vérification/test comme ils le préconisent sur le site de spip (http://www.spip.net/fr_article4200.html). J’ai ce message :

    “Error 403

    You are not authorized to view this page (test 0.9.2)”

    Est-ce "bon signe" ? L’écran de sécurité est-il bien installé selon vous ?
    Merci d’avance pour vos réponses.

  • Bonjour

    Je viens de me faire pirater un site sous spip 2.1.2 malgré l’écran de sécurité.
    Je peux donner par émail, les fichiers utilisés par le pirate qui étaient stockés dans /plugins/auto, pour analyse.

    Cordialement.

Un message, un commentaire ?

Qui êtes-vous ?
Se connecter
Votre message

Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.