Vulnerabilidad en el framework web Django que puede llevar a la inyección de código SQL

Se han publicado actualizaciones de corrección para el marco web Django 4.0.6 y 3.2.14, en las que se ha eliminado una vulnerabilidad (CVE-2022-34265) que podría permitir la inyección de código SQL. El problema afecta a las aplicaciones que utilizan datos externos no verificados en los parámetros kind y lookup_name, que se pasan a las funciones Trunc(kind) y Extract(lookup_name). Los programas que solo permiten datos verificados en los valores lookup_name y kind no están afectados por esta vulnerabilidad.

El problema se ha bloqueado mediante la prohibición de usar caracteres diferentes de letras, números, «-«, «_», «(» y «)» en los argumentos de las funciones Extract y Trunc. Anteriormente, las comillas simples no se eliminaban de los valores transmitidos, lo que permitía la ejecución de sus propias construcciones SQL al pasar valores como «day’ FROM start_datetime)) OR 1=1;—» y «year’, start_datetime)) OR 1=1;—». En la próxima versión 4.1, se planea fortalecer aún más la protección de los métodos de extracción y truncado de fechas, pero los cambios realizados en la API llevarán a la incompatibilidad con backend de terceros para trabajar con bases de datos.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster