El servidor WebLogic contiene un grave fallo de seguridad que ofrece a
cualquier atacante la posibilidad de conseguir el código fuente de las
páginas alojadas en él.
WebLogic es un servidor web comúnmente empleado junto con un servidor
de transacciones en entornos de altas prestaciones basados en java.
Este servidor se ve afectado por una vulnerabilidad por la que un
atacante puede conseguir la visualización del código fuente de
cualquier página alojada en el servicio web, con los problemas de
seguridad que puede conllevar.
Por ejemplo, en un servidor afectado por la vulnerabilidad, un archivo
jsp (Java Server Pages) con url http://servidor.afectado/login.jsp
puede ver su código expuesto si se accede a ella mediante la dirección
http://servidor.afectado/file/login.jsp.
Entre las medidas recomendadas para tratar de evitar el problema se
recomienda no emplear la configuración de demostración en servidores
de explotación, ya que el problema se produce por un servlet incluido
con la distribución y que permite la posibilidad de mostrar cualquier
archivo que se le indique.
En la configuración por defecto, en el archivo weblogic.propierties
existe una entrada que registra el servlet con el nombre virtual
«file».
weblogic.httpd.register.file=weblogic.servlet.FileServlet
weblogic.httpd.initArgs.file=defaultFilename=index.html
weblogic.httpd.defaultServlet=file
Para evitarlo es conveniente editar dicho archivo y registrar el
servlet con un nombre aleatorio, que no pueda ser conocido por un
atacante. Por ejemplo, se puede registrar el servlet como «serv12ej»
de la siguiente forma:
weblogic.httpd.register.serv12ej=weblogic.servlet.FileServlet
weblogic.httpd.initArgs. serv12ej =defaultFilename=index.html
weblogic.httpd.defaultServlet= serv12ej
También se puede registrar el servlet mediante caracteres comodín para
que únicamente muestre las extensiones que se desee. Por ejemplo, de
la siguiente forma se ofrecerán los archivos de extensión html.
weblogic.httpd.register.*.html=weblogic.servlet.FileServlet
weblogic.httpd.initArgs.*.html=defaultFilename=index.html
weblogic.httpd.defaultServlet=*.html
Más información:
FoundStone:
http://www.foundstone.com/FS-062100-4-BEA.txt
Weblogic:
http://www.weblogic.com/docs51/admindocs/lockdown.html
http://www.weblogic.com/docs51/admindocs/http.html#file
NT Security:
http://www.ntsecurity.net/go/loader.asp?iD=/security/weblogic1.htm
antonior@hispasec.com
Deja una respuesta