Script:
header("Content-type: text/css; charset: UTF-8");
$var = $_GET['var'];
$var = str_replace(array('/', '../'), array('', ''), $var);
echo file_get_contents($var);
È possibile sfruttare Path Traversal senza usare la barra in avanti?
In altre parole, questo codice sarebbe sufficiente per impedire il Path Traversal?
$var = str_replace(array('/', '../'), array('', ''), $var);
-
Se Sì:
- Che mi dici di un backward slash? è sicuro?
- La doppia codifica e la codifica esadecimale avranno alcun effetto su questo?
-
Se No:
- Come valuteresti l'impatto?
- Qual è il tuo suggerimento per una soluzione migliore?
PS: Operation System: Linux