arbitrarios en WebSVN a través de una petición POST con un valor de
«path» especialmente diseñado.
WebSVN es un proyecto Open Source que permite visualizar de forma cómoda
uno o varios repositorios SVN. Está implementado bajo PHP y licenciado
bajo GPL v2. A su vez, SVN es un sistema de control de versiones Open
Source, inspirado en el popular pero prehistórico CVS. Subversion es un
diseño y desarrollo nuevo, 100% desde cero, supliendo la mayoría de las
carencias y defectos del vetusto CVS y proporcionando un entorno
eficiente y muy flexible.
El fallo se da al no validar correctamente el valor recibido como nombre
del fichero. Esto podría ser aprovechado por un atacante remoto sin
autenticar, para ejecutar comandos arbitrarios si inyecta a través de
POST una variable «path» especialmente manipulada, que ejecutaría
comandos en el sistema. Para poder explotar esta vulnerabilidad es
necesario encontrar un recurso que pueda ser descargado, puesto que el
fallo se encuentra en la función «exportRepositoryPath()», que solo es
accesible cuando nos descargamos un elemento.
Este fallo no está solucionado por el momento.
Una posible solución sería comprobar en la función
«exportRepositoryPath» que el fichero existe en el sistema.