Pentest d'une instance Yunohost #1 - Préparation

PUBLISHED ON JUL 3, 2016 — SECURITY, SYSADMIN

Yunohost, vous connaissez ? C’est un truc assez cool qui permet à tout le monde d’avoir son serveur personnel avec ses propres services comme un serveur web ou un serveur mail.

En gros, c’est une plate-forme web qui permet de gérer ses services. Le but de cette série d’article sera de faire un peu de pentest sur cette plate-forme et de présenter les résultats. Ce ne sera pas exhaustif, le but étant principalement de m’amuser.

Le contexte

Je ferai deux audits, l’un en boite noire où je me mettrai dans la peau d’un attaquant, l’autre en boite grise où je ne posséderai qu’un couple d’identifiants utilisateur.

Le cadre

Yunohost n’est pas un simple logiciel. C’est un ensemble de services qui sont reliés via des programmes développé par l’équipe de Yunohost, le tout basé sur un OS très répandu. Le but n’est pas de trouver des vulnérabilités dans cet OS ni dans les services qui ne sont pas spécifiques au projet. Je m’attaquerai au système d’interconnexion des services. Évidemment, si l’on peut découvrir une faille dans Nginx, ce sera très bien mais l’objectif n’est pas là car divers audits bien plus poussés que celui ci ont été réalisé.

L’instance cible

En guise d’instance, je vais installer Yunohost dans une machine virtuelle VirtualBox en suivant à la lettre les étapes recommandées par l’équipe du projet (https://yunohost.org/#/install_on_debian).

J’utilise la version 2.4 de Yunohost sur une Debian 8 avec une architecture 64 bits. Un accès SSH sera ouvert pour me rapprocher des conditions réelles d’utilisation.

Les services suivants ont été installés :

  • Un site web WordPress
  • Une instance Baikal
  • Un DokuWiki

Comme expliqué plus haut, les services ne seront pas spécifiquement attaqués car leur développement n’est pas lié à Yunohost.