Script:
header("Content-type: text/css; charset: UTF-8");
$var = $_GET['var'];
$var = str_replace(array('/', '../'), array('', ''), $var);
echo file_get_contents($var);
¿Es posible explotar Path Traversal sin usar barra diagonal?
En otras palabras, ¿este código sería suficiente para evitar el paso de ruta?
$var = str_replace(array('/', '../'), array('', ''), $var);
-
En caso afirmativo:
- ¿Qué pasa con la barra inclinada hacia atrás? ¿Es seguro?
- ¿La doble codificación y la codificación hexadecimal afectarán eso?
-
Si no:
- ¿Cómo calificaría su impacto?
- ¿Cuál es su sugerencia para una mejor solución?
PS: Sistema operativo: Linux