miércoles, 21 de abril de 1999

Grave vulnerabilidad en servidores ColdFusion

ColdFusion es un popular software de servidor de aplicaciones web,
ampliamente utilizado en entornos empresariales, para ofrecer
soluciones Internet e Intranet. En la instalación de este producto
se configuran por defecto una serie de archivos de ejemplo y
documentación en el servidor. Como ya ocurría con otros productos
similares, es posible realizar ataques a la máquina empleando dichas
páginas de demostración.
Por defecto, al instalar la aplicación de servidor web ColdFusion se
realiza la instalación de código de ejemplo, así como de documentación
on-line. Como parte de esta colección se incluye una utilidad conocida
como "Expression Evaluator", cuyo propósito es permitir a los
desarrolladores experimentar fácilmente con las expresiones de
ColdFusion. Esta utilidad permite incluso crear un fichero de texto
en la máquina local, y subirlo al servidor para evaluarlo, aunque se
supone que está limitada al servidor.

Básicamente existen tres archivos afectados por esta vulnerabilidad a
los cuales puede acceder cualquier usuario del web por defecto,
"/cfdocs/expeval/openfile.cfm", "/cfdocs/expeval/displayopenedfile.cfm"
y "/cfdocs/expeval/exprcalc.cfm". El primero de ellos permite subir un
archivo al servidor a través de un formulario, el segundo graba el
archivo en la máquina, mientras que el último lee el archivo enviado,
muestra su contenido en una página web y después borra el fichero.

Con todo esto cualquier usuario puede ver y borrar cualquier archivo
con total libertad. Por ejemplo, para ver y borrar un archivo como
"c:\winnt\repair\setup.log" basta con introducir en el navegador
una URL como:
"http://www.servidor.com/cfdocs/expeval/ExprCalc.cfm?
OpenFilePath=c:\winnt\repair\setup.log".

Incluso se puede llegar más lejos, primero se introduce la URL
"http://www.server.com/cfdocs/expeval/openfile.cfm", que permite
seleccionar un archivo de la máquina local para enviarlo al servidor.
Tras subir un fichero, este se mostrará en la página. La URL se verá
como
"http://www.server.com/cfdocs/expeval/ExprCalc.cfm?
RequestTimeout=2000&OpenFilePath=C:\Inetpub\wwwroot\
cfdocs\expeval\.\archivo_enviado.txt".
Basta sustituir el ".\archivo_enviado.txt" por "ExprCalc.cfm", para que
se borre este último archivo del servidor web. A partir de este momento
se podrá usar "openfile.cfm" para subir ficheros al servidor sin que
estos sean borrados posteriormente. Despues de esto, un usuario con
ciertos conocimientos de programación en ColdFusion puede subir una
página que permita navegar por los directorios del servidor web y
enviar, recibir o borrar archivos. Incluso un ejecutable puede ser
situado en cualquier lugar al que el servicio ColdFusion tenga
acceso, con la posibilidad de instalar troyanos en el servidor.
Hay que destacar que los usuarios tienen acceso a todo el disco duro.

Muchos desarrolladores de ColdFusion emplean bases de datos en Access
para almacenar información para sus aplicaciones web. Si el sistema
está afectado por esta vulnerabilidad, un atacante puede recibir
dichas bases de datos, e incluso sobreescribirlas con copias
modificadas.

Lo peor de esta vulnerabilidad es la facilidad con que se puede llevar
a cabo. Basta un editor de texto y un navegador para que cualquier
usuario tenga acceso a todo el disco duro, archivos de passwords,
información confidencial, incluir troyanos en el servidor, etc.

Allaire, empresa fabricante de ColdFusion, distribuye un parche para
esta vulnerabilidad, que se encuentra disponible en
http://www.allaire.com/handlers/index.cfm?ID=8727&
Method=Full. De forma adicional es recomendable no almacenar ningún código de ejemplo
ni documentación en los servidores.

Más información:
Información en Allaire
Aviso en L0pht


Antonio Ropero



No hay comentarios:

Publicar un comentario en la entrada