Уязвимость в web-фреймворке Django, которая может привести к подстановке SQL-кода

in #ru2 years ago

Опубликованы корректирующие выпуски web-фреймворка Django 4.0.6 и 3.2.14, в которых устранена уязвимость (CVE-2022-34265), потенциально позволяющая выполнить подстановку своего SQL-кода. Проблема затрагивает приложения, использующие непроверенные внешние данные в параметрах kind и lookup_name, передаваемых в функции Trunc(kind) и Extract(lookup_name). Программы, которые допускают в значениях lookup_name и kind только проверенные данные уязвимость не затрагивает.

Проблема блокирована через запрет использования в аргументах функций Extract и Trunc символов отличных от букв, цифр, "-", "_", "(" и ")". Ранее в передаваемых значениях не вырезалась одинарная кавычка, что позволяло выполнить свои SQL-конструкции через передачу значений вида "day' FROM start_datetime)) OR 1=1;--" и "year', start_datetime)) OR 1=1;--". В следующем выпуске 4.1 планируется дополнительно усилить защиту методов извлечения и усечения дат, но внесённые в API изменения приведут к нарушению совместимости со сторонними бэкендами для работы с БД.

Источник: https://www.opennet.ru/opennews/art.shtml?num=57452

Coin Marketplace

STEEM 0.19
TRX 0.15
JST 0.029
BTC 63252.26
ETH 2662.75
USDT 1.00
SBD 2.79