Los equipos de seguridad de SQLite anunciaron el lanzamiento de un parche de seguridad para mitigar una vulnerabilidad que habría permitido la ejecución arbitraria de código o el despliegue de ataques de denegación de servicio (DoS). La alerta de seguridad de los desarrolladores menciona que esta falla afecta principalmente a los sistemas que usan una biblioteca en lenguaje C que implementa un motor de base de datos SQL debido a la disponibilidad del sistema.
A pesar de la aparente severidad, el reporte menciona que esta es una falla de severidad media debido a que su explotación depende de que los actores de amenazas cuenten con acceso a consultas en las bases de datos atacadas. Por otra parte Richard Hipp, el principal ingeniero responsable de SQLite considera que la falla no es una amenaza seria, aunque no por ello ignoró el reporte.
En caso de existir una falla de inyección SQL en el sistema objetivo, esta condición podría llevar a que SQLite lea una escritura de datos liberada previamente con la posibilidad de causar un bloqueo: “Lo más probable es que SQLite devuelva una respuesta poco usual. Este problema permite a los actores de amenazas escalar vulnerabilidades y desplegar ataques DoS”, agrega Hipp.
La comunidad de la ciberseguridad menciona que, ya que los desarrolladores consideran que esta falla tiene un impacto moderado, es posible que otras aplicaciones también se vean afectadas. Considerando que SQLite es un desarrollo de código abierto, es probable que se use más que cualquier otro motor de base de datos, millones de sitios web podrían verse expuestos. Por otra parte, el sistema de administración de bases de datos está integrado en más de 3 mil 500 millones de smartphones, así como en todos los dispositivos macOS y Windows 10, navegadores Firefox, Chrome y Safari, además de servicios como Skype y Dropbox.
Inti De Ceukelaire, especialista de la firma de seguridad Intigriti, cree que afirmar que esta es una vulnerabilidad de severidad moderada podría representar una falsa sensación de seguridad para algunos administradores de sistemas: “Lo preocupante sobre esta clase de fallas es que los proveedores deciden no actualizar ya que el impacto real es mínimo; si bien esta falla solo puede ser explotada en condiciones muy específicas, los proveedores deben tomar en cuenta los posibles riesgos de dejar las fallas sin corregir.”
Los desarrolladores de SQLite resolvieron esta falla agregando “ExprAlwaysFalse (pExpr)==0 a la declaración if antes de la lógica de negocios en havingToWhereExprCb() en el archivo src/select.c, por lo que se recomienda a los administradores de implementaciones vulnerables actualizar a la brevedad.
Para conocer más sobre riesgos de seguridad informática, malware, vulnerabilidades y tecnologías de la información, no dude en ingresar al sitio web del Instituto Internacional de Seguridad Cibernética (IICS).