|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Membre chevronné
![]() Inscription : mai 2004 Messages : 819 ![]() |
bonsoir
je modifie des enregistrements d'une table par l'intermediaire de phpmyadmin certains champs se modifient sans problème , pour d'autre j'ai ce message Aucun enregistrement n'a été sélectionné et effectivement , je ne parviens ,ni a modifier ,ni a supprimer un champ j'ai pensé a un problème de droits , mais l'utilisateur qui possede les droits sur le dossier phpmyadmin est mysql:mysql le meme qui lance le serveur mysql dans mes logs j'ai ceci Sep 30 20:28:18 localhost suhosin[5016]: ALERT - configured request variable total name length limit exceeded - dropped variable 'rows_to_delete merci pour votre aide |
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() ![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Il faut revoir votre configuration de PHP et plus particulièrement celle de l'extension Suhosin car les limites imposées semblent trop restrictives pour phpMyAdmin au niveau de la partie query string.
__________________
Posez vos questions techniques sur le forum, pas en privé (je n'y répondrai pas). [Général] "Ça ne marche pas" n'est pas une réponse acceptable. [PHP] Développez avec error_reporting à E_ALL (minimum). |
|
|
00
|
|
|
#3 |
|
Membre chevronné
![]() Inscription : mai 2004 Messages : 819 ![]() |
merci pour votre prompte reponse
j'utilise mandriva , et ayant installé mes paquets par rpm , je n'ai pas eu connaissance de cette extension suhosin je me suis donc rendu dans mon php.ini et j'ai augmenté certaines valeurs sans trouver le mot clé suhosin il y a t'il des valeurs a augmenter , ou bien d'autres variables a modifier ? (j'ai ensuite relancé le serveur apache et mysql/Php) les voici : hphp.request.max_vars = 200 ; Limits the length of variable names (without indices) hphp.request.max_varname_length = 80 ; Limits the length of complete variable names (with indices) hphp.request.max_totalname_length = 500 ; Limits the length of array indices hphp.request.max_array_index_length = 80 ; Limits the depth of arrays hphp.request.max_array_depth = 100 ; Limits the length of variable values hphp.request.max_value_length = 65000 ; Disallow ASCII-NUL characters in input hphp.request.disallow_nul = 1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Hardening-Patch's COOKIE variable filters ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Limits the number of COOKIE variables hphp.cookie.max_vars = 100 ; Limits the length of variable names (without indices) hphp.cookie.max_name_length = 80 ; Limits the length of complete variable names (with indices) hphp.cookie.max_totalname_length = 500 ; Limits the length of array indices hphp.cookie.max_array_index_length = 80 ; Limits the depth of arrays hphp.cookie.max_array_depth = 100 ; Limits the length of variable values hphp.cookie.max_value_length = 10000 ; Disallow ASCII-NUL characters in input hphp.cookie.disallow_nul = 1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Hardening-Patch's GET variable filters ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Limits the number of COOKIE variables hphp.get.max_vars = 100 ; Limits the length of variable names (without indices) hphp.get.max_name_length = 80 ; Limits the length of complete variable names (with indices) hphp.get.max_totalname_length = 500 ; Limits the length of array indices hphp.get.max_array_index_length = 80 ; Limits the depth of arrays hphp.get.max_array_depth = 80 ; Limits the length of variable values hphp.get.max_value_length = 512 ; Disallow ASCII-NUL characters in input hphp.get.disallow_nul = 1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Hardening-Patch's POST variable filters ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Limits the number of POST variables hphp.post.max_vars = 200 ; Limits the length of variable names (without indices) hphp.post.max_name_length = 80 ; Limits the length of complete variable names (with indices) hphp.post.max_totalname_length = 500 ; Limits the length of array indices hphp.post.max_array_index_length = 80 ; Limits the depth of arrays hphp.post.max_array_depth = 100 ; Limits the length of variable values hphp.post.max_value_length = 65000 ; Disallow ASCII-NUL characters in input hphp.post.disallow_nul = 1 |
|
|
00
|
|
|
#4 |
|
Expert Confirmé Sénior
![]() ![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Il faudrait comparer par rapport à l'URL complète de phpMyAdmin lorsque l'erreur survient mais c'est visiblement de cette directive qu'elle provient :
Code :
hphp.request.max_totalname_length = 500
La valeur nulle devrait désactiver son effet. Mais vu que l'extension suhosin peut engendrer des contraintes très fortes vous devriez éventuellement la désactiver si elle est compilée sous forme dynamique (donc chargée) voir partir d'une configuration permissive.
__________________
Posez vos questions techniques sur le forum, pas en privé (je n'y répondrai pas). [Général] "Ça ne marche pas" n'est pas une réponse acceptable. [PHP] Développez avec error_reporting à E_ALL (minimum). |
|
|
00
|
|
|
#5 | |
|
Membre chevronné
![]() Inscription : mai 2004 Messages : 819 ![]() |
Citation:
hphp.request.max_totalname_length = donne le meme resultat (dans les logs et dans la table) je vais donc essayer de mettre une valeur nulle a toutes les variables suhosin mais j'ai vu dans /etc/php.d/ ceci Z99_suhosin.ini : peut être est-ce ici qu'il faut faire des modifs La valeur nulle devrait désactiver son effet. Mais vu que l'extension suhosin peut engendrer des contraintes très fortes vous devriez éventuellement la désactiver si elle est compilée sous forme dynamique (donc chargée) voir partir d'une configuration permissive. pas possible urpme php-suhosin Pour satisfaire les dépendances, les 21 paquetages suivants vont être désinstallés (7 Mo): et je perd donc php , a moins de le recompiler (ce que je ne souhaite pas) ou de desinstaller avec --force __________________ |
|
|
|
00
|
|
|
#6 | ||
|
Expert Confirmé Sénior
![]() ![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Citation:
Citation:
![]() Note : phpMyAdmin est connu pour avoir quelques dysfonctionnements suivant la configution de HP.
__________________
Posez vos questions techniques sur le forum, pas en privé (je n'y répondrai pas). [Général] "Ça ne marche pas" n'est pas une réponse acceptable. [PHP] Développez avec error_reporting à E_ALL (minimum). |
||
|
|
00
|
|
|
#7 | |
|
Membre chevronné
![]() Inscription : mai 2004 Messages : 819 ![]() |
Citation:
HP ? voulez-vous dire php ? quoiqu'il en soit dans mon phpinfo suhosin apparait clairement en tant qu'extension suhosin Suhosin logo This server is protected with the Suhosin Extension 0.9.18 Copyright (c) 2006 Hardened-PHP Project je vais donc remodifier la variable total length et verifier via phpinfo si les valeurs ont été prises en compte cela se passe dans php.ini , puisque le contenu du fichier Z99_suhosin.ini est en grisé , hormis une ligne qui n'a rien a voir avec le probleme a suivre |
|
|
|
00
|
|
|
#8 | |
|
Expert Confirmé Sénior
![]() ![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Par HP je faisais référence à Hardened(-PHP) Project.
Si l'extension suhosin est présente et compilée sous forme dynamique (ie non intégrée à PHP, sous la forme d'un fichier .so à part) alors elle peut être simplement désactivée en ne la chargeant pas, c'est à dire en commentant la ligne extension= correspondante. Citation:
__________________
Posez vos questions techniques sur le forum, pas en privé (je n'y répondrai pas). [Général] "Ça ne marche pas" n'est pas une réponse acceptable. [PHP] Développez avec error_reporting à E_ALL (minimum). |
|
|
|
00
|
|
|
#9 | ||
|
Membre chevronné
![]() Inscription : mai 2004 Messages : 819 ![]() |
Citation:
pas d'extension suhosin dans mon httpd.conf cela m'a l'air d'être un patch plutot qu'une extension d'autre part quand je modifie des directives suhosin dans php.ini comme par exemple : ; Limits the length of complete variable names (with indices) hphp.request.max_totalname_length = 5000 eh bien ce n'est pas pris en compte dans phpinfo meme apres relance du serveur apache/php/Mysql service httpd restart service mysqld restart bizarre ? ou regarder alors ? Citation:
mais l'ensemble de ses directives me semblent être incluse dans php.ini voici un extrait de ce fichier qui corrobore ces commentaires : (TOUT est grisé) ; Defines the maximum length of the total variable name when registered through ; the URL. For array variables this includes all indices. ;suhosin.get.max_totalname_length = 1256 ; Defines the maximum length of a variable that is registered through the URL. ;suhosin.get.max_value_length = 512 |
||
|
|
00
|
|
|
#10 |
|
Membre chevronné
![]() Inscription : mai 2004 Messages : 819 ![]() |
en cherchant un peu plus , il apparait qu'en decommentant les lignes
suhosin.get.max_totalname_length = 1256 suhosin.post.max_totalname_length = 1256 suhosin.request.max_value_length = 65000 dans Z99_suhosin.ini ces modifs seront prises en compte dans mon phpinfo et donc par le serveur toutefois cela ne change rien a l'affaire selon mes logs : Oct 1 15:08:44 localhost suhosin[21359]: ALERT - configured request variable total name length limit exceeded - donc il va me falloir augmenter la valeur suhosin.get.max_totalname_length et suhosin.post.max_totalname ou bien chercher une autre valeur a modifier voici ce que j'essaie alors : suhosin.cookie.max_totalname_length = 5000 suhosin.get.max_totalname_length = 5000 suhosin.post.max_totalname_length = 5000 suhosin.request.max_totalname_length = 5000 relance du serveur lamp verifs des modifs dans phpinfo :ok modifications des tables : tout baigne !!!! merci developpeur.com et surtout julp en l'occurrence reste à chipoter un peu et à savoir a partir de quelle valeur la securité du serveur est mise en cause , mais ceci est une autre histoire |
|
|
00
|
|
|
#11 | ||
|
Expert Confirmé Sénior
![]() ![]() Inscription : juin 2002 Messages : 6 164 ![]() |
J'arrive un peu après la bataille mais :
Citation:
Citation:
__________________
Posez vos questions techniques sur le forum, pas en privé (je n'y répondrai pas). [Général] "Ça ne marche pas" n'est pas une réponse acceptable. [PHP] Développez avec error_reporting à E_ALL (minimum). |
||
|
|
00
|
|
|
#12 |
|
Membre du Club
![]() Inscription : novembre 2006 Messages : 84 ![]() |
Pour résumer ce qu'a dit julp, vous pouvez désactiver suhosin en commentant l'inclusion de cette extension.
Pour ma part cette inclusion est située dans le fichier /etc/php5/conf.d/suhosin.ini Trouvez la ligne : Et commentez la : Redémarrez votre Apache, et vous ne serez plus bridé avec les restrictions du module suhosin. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com