broncowdd / BoZoN

Minimalist Drag & drop file sharing app (version 2.4 build 15)
Other
283 stars 47 forks source link

Très grosses failles de sécurités #92

Closed ghost closed 8 years ago

ghost commented 8 years ago

N'importe quel utilisateur peut créer des comptes, les supprimer ou voir la liste simplement en modifiant l'URL et les infos GET !!!!!!!

broncowdd commented 8 years ago

je vérifie

broncowdd commented 8 years ago

Quelle manipulation as-tu réalisé ?

ghost commented 8 years ago

avec un utilisateur j'ai mis p=login&newuser à la place de p=admin puis j'ai créé un compte.

ghost commented 8 years ago

Sur la page login j'ai résolut ça avec,

function showPage(){ if(isset($_GET['newuser']) && is_user_admin()) return true; if(!isset($_GET['newuser'])) return true; return false; }

if(showPage()):

//le code

else: echo '

'.e('You do not have permission to access this page!',false).'

'; endif; ?>

broncowdd commented 8 years ago

ok, du coup ça ne vient pas des fonctions (elles sont toutes verrouillées) je regarde de suite

ghost commented 8 years ago

le mdp doit être possible a changer mais pour moi un utilisateur doit pouvoir changer sont mdp.

pas encore touché à l'userlist....

broncowdd commented 8 years ago

pour la solution, je gère (j'ai une fonction pour ça)

ghost commented 8 years ago

Tu peux poster la modif stp que je look ça car franchement je la trouve pas dans les gros fichiers core et auto_restrict

ghost commented 8 years ago

Pour infos récupère mon fichier auto_thumb il corrige des bugs aussi et comme il est compatible ;) Celui sur mon github plutot que celui du pull.

broncowdd commented 8 years ago

oui, il faut check si l'admin est connecté avec la fonction is_admin() d'autorestrict Pour ma part, pour le moment, j'ai fait des tests sur toutes les parties accessibles uniquement à l'admin et en cas de souci, j'include directement le footer puis exit... if (!is_admin()){include(THEME_PATH.'footer.php');exit;}

broncowdd commented 8 years ago

du coup ça marche bien...

ghost commented 8 years ago

dans l'index tu as rajouté juste cette ligne ?

dans les pages du thème ?

broncowdd commented 8 years ago

Pour être certain que personne à part l'admin ne peut accéder aux parties permettant des modifs, il suffit d'ajouter cette ligne: c'est déjà le cas dans les fonctions de génération de listes de users etc... et il faut aussi l'ajouter dans l'index... je modifie.

broncowdd commented 8 years ago

dans index.php

users list request

if (isset($_GET['users_list'])&&is_admin()){...
broncowdd commented 8 years ago

stats.php $button_previous=$button_next=$paginate=$message=$log_list='';$from=0; if (!function_exists('newToken')){require_once('core/auto_restrict.php');} # Admin only! if (!is_admin()){include(THEME_PATH.'footer.php');exit;}

broncowdd commented 8 years ago

users.php if (!function_exists('newToken')){require_once('core/auto_restrict.php');} # Admin only! if (!is_admin()){include(THEME_PATH.'footer.php');exit;}

broncowdd commented 8 years ago

login.php $f=file_exists('private/auto_restrict_users.php'); $n=isset($_GET['newuser']); if ($n&&!is_admin()){include(THEME_PATH.'footer.php');exit;}

broncowdd commented 8 years ago

Là, même en accédant aux fichiers hors contexte, ça bloque...

broncowdd commented 8 years ago

ensuite, pour le lien de changement de mdp pour les users: dans core.php: on retire le test admin de la fonction // creates the secured link to new password form function generate_new_password_link($text='Change password'){ echo ' '; }

et dans header.php, on sort l'appel à cette fonction du test d'admin: generate_new_password_link(e('Change password',false));

ghost commented 8 years ago

Ok dans stats j'ai viré le lien du header aussi pour les utilisateurs sur user_list je croyais qu'il y avait le bug mais non.

Bon je suis moins radical je préfère laisser un petit mot.

broncowdd commented 8 years ago

oui ^^ dans un premier temps, je comble la faille à la va-vite ^^ (je pourrais bosser chez microsoft: je suis prêt, je pense)

ghost commented 8 years ago

Je vais regarder tout ça. Merci.

broncowdd commented 8 years ago

je t'en prie ;-) merci pour le signalement. Du coup, je pense qu'il faudra que je sorte la 2.3 plus tôt...

ghost commented 8 years ago

Tu veux un autre bug sans mon auto_thumb ? Télécharge une image qui existe pas depuis bozon par exemple http://unelio.xyz/faichier.png ;)

broncowdd commented 8 years ago

oui, la fonction exif fait des siennes, c'est ça ?

ghost commented 8 years ago

ouep mais c'est fixé :)

broncowdd commented 8 years ago

pareil de mon côté ^^ je m'en suis aperçu en ajoutant la possibilité de préciser un nom local pour les fichiers téléchargés via url ^^

ghost commented 8 years ago

ah et aussi j'ai remplacé ta fonctions qui change le nom de mes fichiers par no_special_char($string){return preg_replace('/[\"*\/\:<>\?|]/','',$string);

Bref j'ai tous les caractères de mon bon Win ttuuttt censuré

broncowdd commented 8 years ago

oui, c'est sans doute plus simple, je le note... merci

broncowdd commented 8 years ago

hop, j'ai modifié chez moi ^^

broncowdd commented 8 years ago

je vais essayer de commit la 2.3 demain.

broncowdd commented 8 years ago

A+ et merci encore

ghost commented 8 years ago

Merci j’attends de voir tes modifs pour savoir comment mélanger les deux versions (ou intégrer certaines chose de la mienne et garder l'autre pour du perso). Apparemment on a du faire du taff en doublon.

ghost commented 8 years ago

je fais une annonce, planet-libre tout ça pour dire aux gens de mettre en stand by ?

Le 23/02/2016 23:33, Philippe a écrit :

Tu peux poster la modif stp que je look ça car franchement je la trouve pas dans les gros fichiers core et auto_restrict

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-187944958.

broncowdd commented 8 years ago

non, je vais essayer de commit ce matin: la faille n'est pas critique dans le sens où il faut un compte utilisateur pour l'exploiter...

Le 24/02/2016 08:45, Cyrille BORNE a écrit :

je fais une annonce, planet-libre tout ça pour dire aux gens de mettre en stand by ?

Le 23/02/2016 23:33, Philippe a écrit :

Tu peux poster la modif stp que je look ça car franchement je la trouve pas dans les gros fichiers core et auto_restrict

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-187944958.

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-188128766.

ghost commented 8 years ago

ah ça va parce que moi j'avais déjà fait sauter hier

Le 24/02/2016 08:51, Bronco a écrit :

non, je vais essayer de commit ce matin: la faille n'est pas critique dans le sens où il faut un compte utilisateur pour l'exploiter...

Le 24/02/2016 08:45, Cyrille BORNE a écrit :

je fais une annonce, planet-libre tout ça pour dire aux gens de mettre en stand by ?

Le 23/02/2016 23:33, Philippe a écrit :

Tu peux poster la modif stp que je look ça car franchement je la trouve pas dans les gros fichiers core et auto_restrict

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-187944958.

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-188128766.

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-188129957.

broncowdd commented 8 years ago

Bon, j'ai commit la 2.3 en beta parce que je n'ai pas encore tout testé à fond (normalement, ça fonctionne mais il peut rester des petits bugs. Je bosse dessus ce matin

ghost commented 8 years ago

79ko compressé, l'archive me parait légère

Le 24/02/2016 09:31, Bronco a écrit :

Bon, j'ai commit la 2.3 en beta parce que je n'ai pas encore tout testé à fond (normalement, ça fonctionne mais il peut rester des petits bugs. Je bosse dessus ce matin

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-188138612.

broncowdd commented 8 years ago

oui, c'est bizarre ...

broncowdd commented 8 years ago

les images semblent manquer, je corrige ça

ghost commented 8 years ago

Vas y respire un coup. Tu te mets trop la pression, on a l'impression d'être en fin d'année scolaire. :D

Le 24/02/2016 09:45, Bronco a écrit :

les images semblent manquer, je corrige ça

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-188141655.

broncowdd commented 8 years ago

Carrément ! XD J'aime bien coder sur BoZoN (même si les autres projets en prennent un vieux coup ^^)

ghost commented 8 years ago

oui puis quand tu apprendras que ton prochain projet est la reprise de kriss feed, ça va te stresser encore plus

Le 24/02/2016 09:49, Bronco a écrit :

Carrément ! XD J'aime bien coder sur BoZoN (même si les autres projets en prennent un vieux coup ^^)

— Reply to this email directly or view it on GitHub https://github.com/broncowdd/BoZoN/issues/92#issuecomment-188143328.

broncowdd commented 8 years ago

^^ non, ça j'ai déjà donné et on a fait mieux que moi :D

broncowdd commented 8 years ago

C'est un pote qui a repris le projet de lecteur rss à la netvibes

broncowdd commented 8 years ago

C'est bon, c'est corrigé

broncowdd commented 8 years ago

J'ai supprimé le mode "déplacer" et j'ai ajouté une icône dans le mode fichiers: c'est mieux !

broncowdd commented 8 years ago

Je viens de commit ^^ Le commit précédent avait foiré des fichiers sans faire d'erreur, ce devrait être corrigé

ghost commented 8 years ago

Plutôt sympa, les listes avec le hover pour le boutons je trouvais ça plus pratique, ok c'est non compatible mobile mais je comptais finir ça. Le noir/gris ça rend un peu mieux, j'vais regrouper les couleurs pour pouvoir changer celle du thème dans le config.php. Le bouton upload qui s'affiche même quand personne n'est pas connecté j'aime pas trop, où sinon qu'il redirige sur login. Pour le reste j'ai pas regardé, mais c'est mieux que la 1.7.4.

Quelques idées, un peu de code et un coup de gueule ça a marché ptdr. Sans rancune ;). Je continue dans ma rolling release pour chercher les ajouts et corriger ce que j'aime pas. Bonne journée.

broncowdd commented 8 years ago

^^ jamais de rancune ;-) J'ai en effet oublié la suppression du bouton upload en non connecté facepalm je corrige C'est vrai que la version mobile méritera un effort particulier, pas juste un truc vaguement responsive comme là...