Compression zip et mot de passe (LazyDbBackup)

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Compression zip et mot de passe (LazyDbBackup)

    Bonjour à tous,

    Ce matin, j'ai été confronté à un problème avec LazyDbBackup, soumis par un utilisateur : lorsqu'il demandait le cryptage du dump, le mail arrivait sans pièce jointe.
    Ce qui a été appelé "cryptage" est en fait une compression zip du fichier de sauvegarde (sql ou sql.gz) avec mot de passe défini dans la gestion du plugin.
    Cette fonctionnalité existe depuis la version originale de Stefan Granholm, et je ne m'y étais pas vraiment intéressé.

    Après investigations (un autre site sur le même VPS ne comportait pas d'erreur à ce niveau), il s'est avéré que la cause était la présence d'une apostrophe dans le mot de passe, provoquant une erreur lors de la compression zip.

    La ligne de code lançant cette compression est ($zipcmd est "zip" pour un serveur non Windows) :
    Code PHP:
    exec("$zipcmd -j -P $password "$backupfile.zip" "$backupfile""); 
    Je viens de tester sur mon serveur les caractères ' (apostrophe simple) et " (apostrophe double) : le premier empêche la compression, le second pas.
    Avec les slashes et antislashes, le premier empêche la compression, le second la permet, mais lorsque j'essaie de dézipper avec WinZip, l'antislash n'est pas reconnu dans le mot de passe saisi et donc le mot de passe en question refusé.
    De même, un caractère accentué est refusé à la décompression.

    Je n'ai pas trouvé dans la doc PHP d'infos sur l'usage des mots de passe et leurs restrictions avec "zip", mais peut-être ai-je mal cherché ?

    WinZip met une alerte sur la nécessité de n'utiliser que des caractères A-Z de l'alphabet latin, des chiffres et des signes de ponctuation standard. Quid avec d'autres alphabets ? Faut-il interdire ce cryptage aux grecs, russes, asiatiques... ?

    Y a-t-il d'autres solutions (traitement du mot de passe ?) que déconseiller ces caractères accentués et spéciaux et/ou de tester systématiquement la compression suivie de décompression pour s'assurer qu'on dispose bien d'une archive utilisable ?

    Merci par avance de vos conseils !
    Robert
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
    MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

Annonce

Réduire
Aucune annonce pour le moment.

Partenaire de l'association

Réduire

Hébergeur Web PlanetHoster
Travaille ...
X