La librería estándar python «SimpleXMLRPCServer.py» contiene un grave
problema de seguridad que permite que un atacante remoto acceda a datos
y ejecute métodos arbitrarios en el servidor.
Python es un lenguaje de programación sencillo pero extremadamente
potente y versátil, cuya popularidad crece día a día.
Las implementaciones no actualizadas de «SimpleXMLRPCServer.py»,
librería estándar en las versiones recientes de Python, permiten que un
atacante remoto acceda a las interioridades de los objetos registrados,
sus módulos y, posiblemente, otros módulos.
La vulnerabilidad afecta exclusivamente a los servidores XMLRPC que
utilicen el método «register_instance()» para registrar un objeto sin
método «_dispatch()». Los servidores XMLRPC que utilicen
«register_function()» no están afectados.
Esta vulnerabilidad no afecta al servidor de aplicaciones ZOPE, ya que
dispone de su propia implementación XMLRPC. Tampoco afecta a otros
sistema RPC Python, como Pyro o las diversas implementaciones CORBA
disponibles.
El equipo Python ha publicado la versión 2.3.5 de este intérprete,
solucionando la vulnerabilidad en cuestión y unos cincuenta problemas
menores adicionales.
La publicación de la versión 2.4.1 de Python es inminente también.
Hispasec recomienda a todos los usuarios de Python que actualicen a
dicha versión en cuanto sea oficial. Quien no pueda esperar, por
exportar servicios XMLRPC a clientes potencialmente maliciosos, disponen
de un parche público a tal efecto.
Los usuarios de Python 2.2, descatalogada, disponen también de un parche
para su sistema.
jcea@hispasec.com
Más información:
PSF-2005-001 – SimpleXMLRPCServer.py allows unrestricted traversal
http://www.python.org/security/PSF-2005-001/
Python 2.3.5
http://www.python.org/2.3.5/
Parche para Python 2.3 y 2.4
http://www.python.org/security/PSF-2005-001/patch.txt
Parche para Python 2.2
http://www.python.org/security/PSF-2005-001/patch-2.2.txt
11.23 SimpleXMLRPCServer — Basic XML-RPC server
http://docs.python.org/lib/module-SimpleXMLRPCServer.html
Python
http://www.python.org/
Deja una respuesta