ldleman / yana-server

Interface PHP de domotique Y.A.N.A (You Are Not Alone)
http://projet.idleman.fr/yana
107 stars 59 forks source link

faille de sécurité : base de donnée téléchargeable #100

Closed thib3113 closed 8 years ago

thib3113 commented 9 years ago

Bonjour, la base de donnée est téléchargeable depuis le serveur web ! En vous rendant à l'adresse http://your-raspberry/yana-server/db/.database.db, le fichier database.db se lance au téléchargement, et est lisible

ldleman commented 9 years ago

C'est un problème qui à déjà été remonté.

En fait celui ci n'interviens que dans certaines conditions

En effet il y a une double sécurité (protection .htaccess + nommage avec un ".") qui interdit l'accès a ce dossier et a ses fichiers sur apache.

Malheureusement lighttpd ne reconnais ni els fichier .htaccess, ni les nommages en "." et n'offre aucune solutions alternative directement configurable depuis l'arbo fichier, il faut aller modifier le fichier de conf sois même.

Bref pour les utilisateurs utilisant lighttpd, ayant débloqué leurs ports 80 vers l’extérieur et n'ayant fait aucune manip pour sécuriser le tout il y a effectivement un risque, bien que le mdp (qui est l'info la plus sensible) soit crypté.

J'ai ajouté la clause dans le README principal.

thib3113 commented 9 years ago

Dans ce cas il faudrait indiquer qu'il serait préférable de mettre le fichier hors de la partie où pointé lighttpd, ou de faire pointer lighttpd sur un fichier "public" dans le www mais je ne sais pas si c'est configurable a l'installation de lighttpd

thib3113 commented 9 years ago

Sur un dossier "public"*

ldleman commented 9 years ago

Le soucis étant que si on commence à demander aux utilisateurs de faire de la manip avancée sur lighttpd on est mal barrés ^^, déjà que sans manip particulière on en perd la moitié :D.

La seule solution que je vois c'est de changer de sgbd pour une qui soit verrouillable mais c'est déjà un peu plus velu comme modif étant donné le nombres d'impact que ça a sur le code.

thib3113 commented 9 years ago

et puis on perdrais en portabilité, le gros plus de sqlite, c'est qu'il n'as pas besoin de logiciel à coté, et il se stocke dans un simple fichier.

Peut être qu'en créant un utilisateur système linux du nom de Yana et de mettre la config dans son dossier racine ? Cet utilisateur aurais donc tout les droits necessaires pour l'éxécution des soft

ldleman commented 9 years ago

le soucis c'est que www-data doit avoir les droits sur ce fichier pour que php puisse le consulter, hors si www-data a l'accès, le serveur http donnera luis aussi cet accès au fichier

Freeflod commented 8 years ago

Je lance yana-server avec NGINX qui gère le .htaccess Quand je vérifie dans le rep. je ne vois pas de .htaccess. Que puis-je mettre dedans ?