El nombre de la carpeta figuraba en el Explorador de archivos con solo cuatro puntos ....
.
Cuando intenté abrirlo, llegué a una especie de bucle sin fin de conejo donde abrí exactamente la misma carpeta una y otra vez; podía hacer esto sin cesar. Mostrando el camino como C:\ExamplePath\....\....\....\....\....
, etc.
Estaba colgando mi compilación de TypeScript en un proyecto específico. Me tomó más de un año antes de encontrar esta carpeta y sus problemas relacionados, porque estaba profundamente enraizada en carpetas anidadas. Nunca esperé un problema como este, así que nunca lo busqué.
No pude eliminar la carpeta de la manera normal debido al nombre especial. Al final, podría eliminarlo usando la línea de comando y eliminando la carpeta principal con rd /s /q path
.
Después, intenté crear la carpeta nuevamente pero no pude hacerlo con el Explorador de archivos y la línea de comandos.
En mis más de 20 años de uso de Windows, nunca antes había visto este error, así que puedo imaginar que realmente sería un problema molesto y confuso para los usuarios aficionados.
¿Alguien sabe cómo pudo haber sucedido esto y cómo reproducir este problema?
Actualizar
Para las personas interesadas: esta ruta se encuentra en una carpeta TFS. Entonces, probablemente TFS utiliza el método de derivación @grawity explicado ( "Varios administradores de archivos, archivadores, etc." )
¿Me topé con un raro error de TFS?
GET /....\\....\\....\\....\\....\\....\\....\\....\\....\\winnt\\win.ini
. Claramente, hay / hubo alguna vulnerabilidad en algún lugar que esto intenta explotar.
..
no ....
. Es simplemente una forma de atravesar \winnt
independientemente de la profundidad del punto de partida (la raíz web), siempre que el punto de partida tenga menos de 9 niveles de profundidad. Se basa en el hecho de que ir ..
desde el directorio raíz te deja en el directorio raíz.
..
por eso me pareció bastante extraño.
..
se puede usar en una ruta para indicar 'subir una carpeta', me arriesgaría a suponer que en algún lugar a lo largo de la línea, algún programa o script concatena dos cadenas para crear una ruta, una terminó con..
, y la siguiente comenzó con..
, y Como utilizó una de las técnicas mencionadas a continuación, logró crear la ruta, aunque le faltaba el separador de carpetas entre ellas.