Критическая 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-битных стоит незамедлительно установить патчи.

Правда ли MAX нельзя отвязать от Госуслуг: что показала проверка

В соцсетях разошлась тревожная информация о том, что если привязать мессенджер MAX к аккаунту на «Госуслугах», то потом вернуть обычное подтверждение входа по СМС уже не получится. Но, судя по доступным данным, это не так.

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

При этом сам автор не утверждал, что смена способа входа невозможна для всех. Более того, основной смысл его публикации вообще был в другом: он советовал установить дополнительный пароль в мессенджере. Но в соцсетях из этого текста выдернули одну фразу и превратили её в громкое утверждение.

Соответствующая инструкция показывает, что сменить способ подтверждения входа всё же можно. Для этого нужно зайти в профиль, открыть раздел «Вход в систему» и выбрать другой удобный вариант верификации.

Если MAX уже подключён, в настройках это отображается отдельно: система показывает, что вход осуществляется по паролю и одноразовому коду из мессенджера. После этого пользователь может выбрать другой способ подтверждения личности — например, СМС, одноразовый код TOTP или биометрию.

Дальше всё стандартно: нужно нажать кнопку продолжения, подтвердить решение о смене способа входа, получить код в СМС на привязанный номер телефона и ввести его в соответствующее поле. После этого вход снова будет работать по привычной схеме.

Иначе говоря, история о том, что после привязки MAX от него уже нельзя отказаться, пока не подтверждается. Похоже, в этот раз речь идёт скорее о типичном преувеличении, чем о реальной проблеме сервиса.

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