Критическая PHP-уязвимость открывает сайты для SQL-инъекции

Критическая PHP-уязвимость открывает сайты для SQL-инъекции

Критическая PHP-уязвимость открывает сайты для SQL-инъекции

Критическая уязвимость, затрагивающая ряд версий PHP 8, угрожает веб-приложениям и сайтам, позволяя провести SQL-инъекцию. Патчи уже готовы, поэтому настоятельно рекомендуется установить их как можно скорее.

Проблема получила идентификатор CVE-2022-31631 и 9,1 балла по шкале CVSS. Брешь актуальна для PHP 8.0.x до версии 8.0.27, 8.1.x до версии 8.1.15 и 8.2.x до версии 8.2.2.

Баг кроется в функции PDO::quote() при использовании баз данных SQLite. Эта функция часто применяется для очистки вводимых пользователем данных перед их использованием в запросах к БД.

По типу CVE-2022-31631 представляет собой классическую проблему целочисленного переполнения буфера. Если PDO::quote() обрабатывает слишком длинную строку, функция не может корректно экранировать входные данные.

Этот изъян может привести с созданию опасных SQL-запросов, которые могут позволить киберпреступникам внедрить вредоносный код и получить контроль над базой данных.

Таким образом, корень уязвимости находится в механизме обработки длинных строк в PHP: например, базовая функция SQLite sqlite3_snprintf() использует 32-битное целое число для параметров длины, а PHP PDO::quote() — zend_long (64-битное). Именно это несоответствие приводит к целочисленному переполнению буфера.

При этом 32-битные системы менее уязвимы к CVE-2022-31631, а вот пользователям 64-битных стоит незамедлительно установить патчи.

В Microsoft Edge пропала настройка для Chrome-расширений

Microsoft незаметно упростила установку расширений из Chrome Web Store в браузере Edge — и при этом убрала знакомый многим переключатель в настройках. Речь идёт о пункте «Разрешить расширения из других магазинов», который существовал в Edge с момента перехода браузера на Chromium.

Раньше пользователю нужно было явно включить этот тумблер в настройках, прежде чем ставить расширения из магазина Google.

Это было понятное и прозрачное действие: Edge прямо показывал, что вы разрешаете установку расширений не из Microsoft Store. Теперь этот переключатель просто исчез.

Сначала изменение заметили в тестовой версии Edge Canary, а теперь оно дошло и до стабильного релиза. Причём одинаково — и для аутентифицированных аккаунтов Microsoft, и для локальных профилей.

При этом важно, что расширения из Chrome Web Store по-прежнему устанавливаются и работают без ограничений. Они отображаются в списке расширений как установленные «из других источников», но никакого запроса, предупреждения или отдельного разрешения Edge больше не показывает.

Ссылка на Chrome Web Store внизу страницы расширений тоже никуда не делась — пользовательский путь остался прежним, изменился только контроль.

Microsoft официально никак не комментировала это нововведение и не упоминала его в списках изменений Edge. Для внимательных пользователей исчезновение настройки выглядит неожиданно: элемент, который годами считался частью управления безопасностью, пропал без объяснений.

Фактически Edge теперь воспринимает совместимость с Chrome Web Store как встроенную и само собой разумеющуюся функцию, а не как опцию, которую нужно осознанно включать. С одной стороны, это упрощает жизнь тем, кто активно пользуется Chrome-расширениями. С другой — меняет саму логику согласия и контроля внутри браузера.

Заметят это не все. Скорее всего, большинство пользователей обнаружат перемены только тогда, когда в очередной раз зайдут в настройки и не найдут привычный пункт.

На данный момент Microsoft ситуацию не поясняла — ни публичных заявлений, ни документации по изменению поведения Edge пока нет.

RSS: Новости на портале Anti-Malware.ru