X-Git-Url: http://git.cyclocoop.org/?p=ptitvelo%2Fweb%2Fwww.git;a=blobdiff_plain;f=www%2Fprive%2Finformer_auteur_fonctions.php;h=d752b70ae57ec2933097d25b529939cf9a6c0a3c;hp=ffeabc5348c2d2fd0ab2ffe825f9def33d8d46c4;hb=f489d45ae677afde12ba9c9f70f463ea34787b45;hpb=0dda6af18a04031b1ca8e217187966077e752fe3 diff --git a/www/prive/informer_auteur_fonctions.php b/www/prive/informer_auteur_fonctions.php index ffeabc5..d752b70 100644 --- a/www/prive/informer_auteur_fonctions.php +++ b/www/prive/informer_auteur_fonctions.php @@ -22,25 +22,28 @@ function informer_auteur($bof) include_spip('inc/auth'); $login = strval(_request('var_login')); $row = auth_informer_login($login); - if ($row AND is_array($row)) + if ($row AND is_array($row)) { unset($row['id_auteur']); + } + // permettre d'autoriser l'envoi de password non crypte lorsque + // l'auteur n'est pas (encore) declare dans SPIP, par exemple pour les cas + // de premiere authentification via SPIP a une autre application. + else if (defined('_AUTORISER_AUTH_FAIBLE') and _AUTORISER_AUTH_FAIBLE) { + $row = array(); + } + // generer de fausses infos, mais credibles, pour eviter une attaque + // http://core.spip.org/issues/1758 else { - // permettre d'autoriser l'envoi de password non crypte lorsque - // l'auteur n'est pas (encore) declare dans SPIP, par exemple pour les cas - // de premiere authentification via SPIP a une autre application. - if (defined('_AUTORISER_AUTH_FAIBLE') and _AUTORISER_AUTH_FAIBLE) { - $row = array(); - } - // piocher les infos sur un autre login - elseif ($n = sql_countsel('spip_auteurs',"login<>''")){ - $n = (abs(crc32($login))%$n); - $row = auth_informer_login(sql_getfetsel('login','spip_auteurs',"login<>''",'','',"$n,1")); - if ($row AND is_array($row)){ - unset($row['id_auteur']); - $row['login'] = $login; - } - } - else $row = array(); + include_spip('inc/securiser_action'); + $fauxalea1 = md5('fauxalea'.secret_du_site().$login.floor(date('U')/86400)); + $fauxalea2 = md5('fauxalea'.secret_du_site().$login.ceil(date('U')/86400)); + + $row = array('login' => $login, + 'cnx' => 0, + 'logo' => "", + 'alea_actuel' => substr_replace($fauxalea1,'.',24,0), + 'alea_futur' => substr_replace($fauxalea2,'.',24,0) + ); } return json_export($row);