¿Los nombres de directorio usando extensiones son un riesgo de seguridad?

1

En nuestra aplicación (PHP, MySQL) permitimos a los usuarios crear plantillas que se almacenan en su propio subdirectorio (que lleva el nombre de la plantilla).

Alguien sugirió usar un saneamiento de nombre de archivo estándar, pero no estoy demasiado cómodo para permitir que el usuario nombre su plantilla 'mytemplate.php'

¿Está permitiendo las extensiones en los nombres de directorio un riesgo de seguridad?

    
pregunta Carsten Schmitz 26.05.2014 - 15:39
fuente

2 respuestas

1

Bueno, cambiar el nombre de solo la carpeta es más una cuestión de buena práctica. En el caso de que desee que el usuario acceda a su carpeta de plantillas como: site.com/templates/mytemplate.php ; Te recomendaría que implementes "URL amigable" (URL semántica), por lo que en este caso pasarás el 'mytemplate.php 'como una variable y no como un nombre de carpeta.

    
respondido por el G4spr 20.01.2015 - 16:57
fuente
0

Si es así, debido al carácter de punto, puedes codificar ese carácter de alguna manera, por ejemplo. urlencoding. El otro carácter que necesitaría codificar de todos modos, porque no está permitido en los nombres de directorio, es la barra diagonal. Y, si es urlencoding, no olvide el signo de porcentaje en sí mismo.

Urlencoding:

  1. %%25
  2. .%2E
  3. /%2F

Secuencias de escape:

  1. \\
  2. .\.
  3. %\%
respondido por el user2394284 28.01.2017 - 10:15
fuente

Lea otras preguntas en las etiquetas