
CVE-2022-33171: Vulnerabilidad de inyección SQL en TypeORM
ID CVE: CVE-2022-33171
Producto: TypeORM
Versiones Afectadas: < 0.3.0
Tipo de Vulnerabilidad: Inyección SQL
Fecha de Divulgación: 28 de junio de 2022
Las funciones findOne(id) y findOneOrFail(id) en TypeORM anteriores a la versión 0.3.0 pueden recibir tanto una cadena como un objeto FindOneOptions. Cuando la entrada a esta función es un objeto JSON analizado controlado por el usuario, suministrar un manipulado en lugar de una cadena de id conduce a una inyección SQL.
FindOneOptionsLa vulnerabilidad existe porque:
findOne() acepta tipos de entrada flexibles (cadena u objeto FindOneOptions)Los mantenedores de TypeORM declararon que la causa raíz es una validación de entrada insuficiente en el lado de la aplicación, no en la propia biblioteca. Sin embargo, esta función está diseñada explícitamente para aceptar entrada del usuario, lo que hace defendible el argumento de que la biblioteca debería manejar esto de manera segura.
Actualice a TypeORM 0.3.0 o posterior, que incluye correcciones para esta vulnerabilidad.