Vulnerabilidad de deserialización insegura de Java en Apache MINA SSHD (CVE-2022-45047)
INTRODUCCIÓN
Recientemente, Apache MINA ha corregido una vulnerabilidad de deserialización insegura. Zhang Zewei informó de esta vulnerabilidad.
ANÁLISIS
Apache MINA SSHD es una librería 100% java para soportar los protocolos SSH tanto del lado del cliente como del servidor. No pretende ser un sustituto del cliente SSH o del servidor SSH de los sistemas operativos Unix, sino que proporciona soporte para aplicaciones basadas en Java que requieran soporte SSH.
La clase org.apache.sshd.server.keyprovider.SimpleGeneratorHostKeyProvider en Apache MINA SSHD <= 2.9.1 utiliza la deserialización de Java para cargar una java.security.PrivateKey serializada. La clase es una de las varias implementaciones que un implementador que utilice Apache MINA SSHD puede elegir para cargar las claves de host de un servidor SSH.
La deserialización insegura es cuando los datos controlados por el usuario son deserializados por un sitio web. Esto permite potencialmente a un atacante manipular objetos serializados para pasar datos dañinos al código de la aplicación. Permite a un atacante reutilizar el código de la aplicación existente de forma dañina, dando lugar a otras numerosas vulnerabilidades, a menudo la ejecución remota de código.
Versiones afectadas:
- Apache MINA SSHD <= 2.9.1
RECOMENDACIONES
Para Apache MINA SSHD <= 2.9.1, no utilice org.apache.sshd.server.keyprovider.SimpleGeneratorHostKeyProvider para generar
y posteriormente cargar la clave de host de su servidor. Utilice archivos de clave de host generados por separado, por ejemplo en formato OpenSSH, y cárguelos a través de org.apache.sshd.common.keyprovider.FileKeyPairProvider en su lugar. O utilice una implementación personalizada en lugar de SimpleGeneratorHostKeyProvider que utilice el formato OpenSSH para almacenar y cargar la clave del host (mediante las clases OpenSSHKeyPairResourceWriter y OpenSSHKeyPairResourceParser).
Actualice a Apache MINA SSHD 2.9.2.
REFERENCIAS
https://securityonline.info/cve-2022-45047-apache-mina-sshd-unsafe-deserialization-vulnerability/
https://seclists.org/oss-sec/2022/q4/148