Skip to content

Sécuriser le cache meta

Suite à https://git.spip.net/spip/spip/pulls/5064#issuecomment-33588

@g0uZ proposait

Une autre proposition pour protéger globalement tmp/meta_cache.php (ce fichier contient beaucoup d'information qui mériterait d'être protégé) d'un attaquant qui peut lire des fichiers serait de le stocker avec un nom non prédictible (et qui n'implique pas une requête en DB pour le reconstituer).

Est ce qu'on peut trouver une valeure sécrète et constante (qui change rarement) uniquement récupérable via PHP, très rapidement, qu'on pourrait utiliser pour stocker tmp/meta_cache_[md5(mavaleure)].php ?

gouz@T530 /home/gouz $ time php -r 'for ($i=0; $i< 1000;$i++) { 
$r=md5(serialize(ini_get_all())); }'

real    0m0,119s

C'est peut être une très mauvaise idée, je ne sais pas bien :)

Si bonne idée, l'implémentation peut être assez rapide si on conserve tmp/meta_cache.php qui contiendrait uniquement le code suivant :

<?php

$token=md5(serialize(ini_get_all()));
include("meta_cache_".$token.".php");
Modification effectuée par JamesRezo