Jump to content

Message Log serveur 1.6.1.20 : RIJNDAEL_IV_


JEAN PIERRE

Recommended Posts

Bonjour,

 

Depuis le passage à la version 1.6.1.20, les messages suivants sont présent dans les logs de notre serveur, pratiquement pour tous les accès  :

[Thu Jul 19 13:58:56.734315 2018] [fcgid:warn] [pid 10027] [client 90.28.157.243:57133] mod_fcgid: stderr: PHP Notice:  Use of undefined constant _RIJNDAEL_IV_ - assumed '_RIJNDAEL_IV_' in /var/www/vhosts/notreserveur.fr/httpdocs/classes/Cookies.php on line 79, 

 et 

[Thu Jul 19 12:25:46.304260 2018] [fcgid:warn] [pid 10025] [client 92.143.217.53:63227] mod_fcgid: stderr: PHP Warning:  openssl_decrypt(): IV passed is only 7 bytes long, cipher expects an IV of precisely 16 bytes, padding with \\0 in /var/www/vhosts/notreserveur.fr/httpdocs/classes/Rijndael.php on line 91, referer: https://notreserveur.fr/backoffice/index.php?controller=AdminOrders&token=43ee0aa269aa5ad25d03f3b46782e0cd

 

--> Pour le 1 er message cela semblerait être dû à une erreur de syntaxe dans le code du fichier Cookies.php à la ligne 79, pour le deuxième ?

 

Quelqu'un à -t-il une idée sur ces messages d'erreurs et sur les actions à mener ?

 

Merci par avance.

Jean Pierre

Link to comment
Share on other sites

Bonjour et merci de vos précisions.

 

Mon serveur (VPS) est sous debian / Plesk 12.5 :  Je viens de verifier l'extension mcrypt est bien active.

 

Par contre dans mon Prestashop 1.6.1.20  : Backoffice/Performance  (Voir copie écran ci-jointe) -->  Je n'ai pas d'option me permettant de choisir un mode d'encrypatge pour le cookies ( avec un chiffrement Rijndael ou autres ) ?

 

Vous en remerciant.

 

Jean Pierre

PERFORMANCE.docx

Link to comment
Share on other sites

Ok, ils ont encore fait n'importe quoi...

Commencez par aller ici: https://shop.devcustom.net/gen.php

Générez et copiez (remplacer si elles existent) ces 2 lignes dans votre fichier /config/settings.inc.php:

define('_RIJNDAEL_KEY_', 'KKs8jBneDJKVwQo0bFHow5tpqUXdLWYE');
define('_RIJNDAEL_IV_', 'w2/az2xpUEMUKrgcb1oF+g==');

Dans la base de données, table configuration, rechercher la clé PS_CIPHER_ALGORITHM et donnez lui la valeur de 1( si ce n'est pas le cas).

Edited by Eolia (see edit history)
  • Like 1
Link to comment
Share on other sites

Bonjour EOLIA,

 

Merci de votre aide.

 

Ci-dessous le contenu actuel du fichier  settings.inc.php :

 

<?php
define('_DB_SERVER_', 'localhost');
define('_DB_NAME_', '--');
define('_DB_USER_', '--);
define('_DB_PASSWD_', '--');
define('_DB_PREFIX_', 'ps_');
define('_MYSQL_ENGINE_', 'MYISAM');
define('_PS_CACHING_SYSTEM_', 'CacheFs');
define('_PS_CACHE_ENABLED_', '0');
define('_COOKIE_KEY_', 'mewixY3wVg813y9Ps9qZbtwAgIZUO2bbXERT2yCfDWFy9gVOSyJr2j8mNMteeEUEW');
define('_COOKIE_IV_', 'LtuCm2EY');

define('_PS_CREATION_DATE_', '2013-04-02');
define('_PS_VERSION_', '1.6.1.20');
define('_PS_DIRECTORY_', '/');
 

--> Faut-il supprimer les lignes liés au Cookies avant de rajouter les 2 lignes suivantes :

define('_RIJNDAEL_KEY_', 'KKs8jBneDJKVwQo0bFHow5tpqUXdLWYE');
define('_RIJNDAEL_IV_', 'w2/az2xpUEMUKrgcb1oF+g==');

 

Merci de votre réponse.

 

Jean Pierre

Link to comment
Share on other sites

Bonjour,

 

J'ai exactement la même erreur.

Apparemment la clé est à 7 bytes alors que sur la 1.6.1.19/20 celle ci est encodé sur 16 ? Comment donc transformer ou générer ce nouveau code ? (Car je n'ai aucune clé d'origine RIJNDAEL).

Auriez-vous la solution ? J'ai commencé votre explication mais j'ai toujours le problème concernant le "can't open file".
Merci bien.

 

Edited by EmmalucAnthony (see edit history)
Link to comment
Share on other sites

Non le problème c'est que vous n'étiez pas en Rijndael avant mais en blowfish donc effectivement cette clé n'existe pas et Prestashop ne contrôle pas ce point lors de la mise à jour (encore un truc testé, tiens^^)

Générez vos clés de manière aléatoire (comme dans mon exemple ci-dessus et enregistrez-les dans le fichier settings.inc.php

Link to comment
Share on other sites

Merci de votre retour rapide !

Décidément, passer en 1.6.1.20 n'était pas une bonne idée...

Pour générer les clés de manière aléatoire, vous faites comment ?
Car je ne sais pas si c'est bien sur 128 ou 16 vu les erreurs :


Notice: Use of undefined constant MCRYPT_RIJNDAEL_128 - assumed 'MCRYPT_RIJNDAEL_128' in /home/www/vhosts/mondomaine.fr/www/classes/Rijndael.php on line 124

Warning: openssl_decrypt(): IV passed is only 7 bytes long, cipher expects an IV of precisely 16 bytes, padding with \0 in /home/www/vhosts/mondomaine.fr/www/classes/Rijndael.php on line 91

 

Merci

 

Link to comment
Share on other sites

Merci !
J'ai généré des nouvelles, mais apparemment le problème reste identique j'ai quand même le "can't open file" sur un module... Cela ne doit donc pas être lié à ceci.

En tout cas, un problème en moins, des clés sont générées !

(Je vais créer un autre fil de sujet pour éviter de polluer celui-ci, merci encore !)

Link to comment
Share on other sites

En effet, voici les messages :

Notice: Use of undefined constant _RIJNDAEL_KEY_ - assumed '_RIJNDAEL_KEY_' in /home/www/vhosts/mondomaine.fr/www/classes/Cookie.php on line 79

Notice: Use of undefined constant _RIJNDAEL_IV_ - assumed '_RIJNDAEL_IV_' in /home/www/vhosts/mondomaine.fr/www/classes/Cookie.php on line 79

Notice: Use of undefined constant MCRYPT_RIJNDAEL_128 - assumed 'MCRYPT_RIJNDAEL_128' in /home/www/vhosts/mondomaine.fr/www/classes/Rijndael.php on line 124

Warning: openssl_decrypt(): IV passed is only 7 bytes long, cipher expects an IV of precisely 16 bytes, padding with \0 in /home/www/vhosts/mondomaine.fr/www/classes/Rijndael.php on line 91

 

Je confirme que Mcrypt est bien installé (Plesk - Version 7.0.30 sur mon site)

Link to comment
Share on other sites

En fait j'ai ces messages qui apparaissent quand je sauvegarde une action sur le module, ceci dit, ils apparaissent depuis la mise à jour en 1.6.1.20 avec un beau "Can't open file".

Mais je viens de voir que cela est problématique en mode "Toutes les boutiques" (Je suis en multiboutique), alors que quand je cible une seule boutique, il n'y a plus le problème !

En tout cas c'est certainement grâce aux clés, merci encore du coup !

Link to comment
Share on other sites

Alors il y a 2 souci chez vous parce que:

- MCRYPT_RIJNDAEL_128 est une constante définie par mycrypt, donc si vous ne l'avez pas c'est un souci

- Si vous avez bien copié les clés, _RIJNDAEL_KEY_ est définie à présent

 

Pour info, j'utilise cette constante pour générer les clé dans le lien ci-dessus:

mcrypt_get_key_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC);

 

Link to comment
Share on other sites

Je rejoint ce post.. Je récupère également cette erreur com suite:

Use of undefined constant MCRYPT_RIJNDAEL_128 - assumed 'MCRYPT_RIJNDAEL_128'

et aussi:

openssl_decrypt(): IV passed is only 7 bytes long, cipher expects an IV of precisely 16 bytes

alors je suis en version 1.6.1.20 et avec php 7.1

Je penche plutôt du coté du certificat ssl.. Mais je suis en local(127.0.0.1) sur ma machine..
j'ai essayé de créer un certificat ssl pour le localhost, mais j'ai pas encore testé..

Edited by sinzen (see edit history)
Link to comment
Share on other sites

Certificat ssl ???? Mais de quoi parlez-vous ? La fonction openssl_decrypt() n'a rien à voir avec un quelconque certificat, c'est une fonction de cryptage basée sur le chiffrage ssl.

Avez-vous ces 2 lignes concernant RIJNDAEL dans votre fichier /config/settings.inc.php ?

Link to comment
Share on other sites

http://php.net/manual/fr/migration71.deprecated.php

Ceci explique peut-être pourquoi vous n'avez pas de constante

MCRYPT_RIJNDAEL_128

MCRYPT_RIJNDAEL_128 (libmcrypt > 2.4.x uniquement)

 

Un jour peut-être les codeurs de presta prendront le temps de lire la doc, faire des tests au lieu de faire des truc mi-oiseau, mi-pingouin

openssl_cipher_iv_length('AES-128-CBC');

 

 

Link to comment
Share on other sites

  • 6 months later...
On 7/20/2018 at 7:58 AM, Eolia said:

Ok, ils ont encore fait n'importe quoi...

 

Copier (remplacer si elles existent) ces 2 lignes dans votre fichier /config/settings.inc.php:


define('_RIJNDAEL_KEY_', 'KKs8jBneDJKVwQo0bFHow5tpqUXdLWYE');
define('_RIJNDAEL_IV_', 'w2/az2xpUEMUKrgcb1oF+g==');

Dans la base de données, table configuration, rechercher la clé PS_CIPHER_ALGORITHM et donnez lui la valeur de 1

Bonjour, je n'ai pas cette entrée dans ma base de données "PS_CIPHER_ALGORITHM" ..

Link to comment
Share on other sites

  • 11 months later...

Bonsoir,

Suite à de trop nombreux problèmes avec la V1.7 j'ai décidé d'installer prestashop 1.6.1.24.

j'ai eu le problème décrit dans ce topic, j'ai suivi les recommandations et j'ai quasiment tout résolu sauf cette erreur :

Warning: openssl_decrypt(): IV passed is only 7 bytes long, cipher expects an IV of precisely 16 bytes, padding with \0 in /home/auda3074/test.arcadia-retrogaming.fr/classes/Rijndael.php on line 91

Je n'arrive pas à me connecter au Back Office....

 

Merci pour votre aide

Link to comment
Share on other sites

Même pas !

j'ai édité avec l'éditeur de fichier en ligne de mon hébergeur qui fonctionne surper bien et çà donne çà :

<?php
define('_DB_SERVER_', 'localhost');
define('_DB_NAME_', 'test');
define('_DB_USER_', 'test');
define('_DB_PASSWD_', '*************');
define('_DB_PREFIX_', 'pszn_');
define('_MYSQL_ENGINE_', 'InnoDB');
define('_PS_CACHING_SYSTEM_', 'CacheMemcache');
define('_PS_CACHE_ENABLED_', '0');
define('_RIJNDAEL_KEY_', 'yY6OvpDwxnHtX9z2kgroIVK0ZGMR5a0C');
define('_RIJNDAEL_IV_', 'R17+JlAsavXXJVxOZVi24A==');
define('_PS_CREATION_DATE_', '2020-01-29');
if (!defined('_PS_VERSION_'))
    define('_PS_VERSION_', '1.6.1.24');

 

Vois-tu quelque chose d'étrange  ?

Link to comment
Share on other sites

J'ai refait une fresh install et le problème survient après la mise à jour du module prestashop experience.

Là j'ai généré les clés, ajoutés au fichier de conf SANS virer les cookie_key

et là çà roule !

après 3 jours de bugs en tout genres j'ai les yeux qui saignent....j'avais pas fait gaffe à "Non, je n'ai pas parlé des lignes COOKIE_KEY, copiez uniquement les 2 clés fournies"

@Eolia ne change rien 😊

 

Un grand merci à tous les 2 pour m'avoir ouvert les yeux !

Link to comment
Share on other sites

  • 2 years later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...