Новые уязвимости в PHP грозят веб-приложениям DoS и утечкой данных

Новые уязвимости в PHP грозят веб-приложениям DoS и утечкой данных

Новые уязвимости в PHP грозят веб-приложениям DoS и утечкой данных

В PHP пропатчены пять уязвимостей, повышающих риск атаки на веб-приложения. Последствия эксплойта могут быть различными, от утечки конфиденциальной информации до отказа в обслуживании (DoS).

Все уязвимости связаны с функционированием встроенной обертки HTTP — дополнительного кода, расширяющего возможности работы с потоками.

Уязвимость CVE-2025-1861 возникла из-за сокращения заголовков перенаправления Location. Предельный размер буфера, выделяемого под значения местоположения, был задан как 1024 байт вместо 8000, рекомендованного по RFC 9110.

Из-за этого в URI могла выпасть критически важная информация. Более того, проблема грозила перенаправлением на другой ресурс, а возврат ошибки мог привести к DoS на удаленном сайте.

Причиной CVE-2025-1734 является некорректная обработка недопустимых заголовков. Отсутствие двоеточия либо знак пробела перед ним не маркировались как ошибка; в результате при парсинге массива в приложении возникала возможность request smuggling — вмешательства в обработку HTTP-запросов с целью получения доступа к конфиденциальным данным в обход защиты.

В появлении CVE-2025-1217 повинен парсер, который неправильно обрабатывал свернутые заголовки. Он воспринимал пробел в начале строки как разделитель, а не продолжение заголовка, что грозило ошибками в определении MIME-типа и некорректной интерпретацией ответа на запрос в приложении, в особенности после редиректа.

Из-за наличия проблемы CVE-2025-1219 потоки libxml возвращали неправильное значение в заголовке Content-Type в ответ на запрос ресурса-редиректора. При перенаправлении не происходила очистка списка сохраненных заголовков, и php_libxml_input_buffer_create_filename(), сканируя блок, могла ошибиться с выбором, что влекло некорректный парсинг документа и обход проверки подлинности.

Уязвимость CVE-2025-1736 возникла из-за ошибки в реализации функции check_has_header, которая не проверяла наличие управляющего символа \r в комбинации, сигнализирующей перенос строки (\r\n).

В тех случаях, когда в заголовке используется значение из пользовательского ввода, отсутствие \r могло, к примеру, воспрепятствовать отправке HTTP-заголовка Authorization. Подобная оплошность способна повлиять на результат и повлечь DoS либо другие неожиданные проблемы.

Патчи включены в состав выпусков PHP 8.1.32, 8.2.28, 8.3.19 и 8.4.5. Разработчикам настоятельно рекомендуется произвести обновление: уязвимости в PHP пользуются популярностью у злоумышленников.

OOXML — фикция: LibreOffice обвинила Microsoft в манипуляциях

Проблемы совместимости остаются одной из главных причин, по которым пользователи не спешат переходить с Microsoft Office на LibreOffice. Формально всё работает, но на практике время от времени всплывают странности с вёрсткой, форматированием и отображением данных. И, как считают в The Document Foundation (TDF), дело тут вовсе не в LibreOffice.

Фонд, стоящий за LibreOffice, снова выступил с жёсткой критикой Microsoft. В блоге Итало Виньоли — одного из основателей TDF — корпорация из Редмонда обвиняется в том, что она игнорирует интересы отрасли ради собственных коммерческих целей.

По его словам, утверждение «OOXML — это стандарт, и его просто нужно принять» выглядит, мягко говоря, странно.

Виньоли настаивает: Office Open XML (OOXML) не может считаться полноценным стандартом, пока Microsoft не готова радикально переработать сами приложения Office. В качестве примера он напомнил о давней проблеме Excel с автопреобразованием данных — истории, которая напрямую затронула научное сообщество.

Excel годами автоматически превращал текстовые значения в даты. Для обычных таблиц это удобно, но для генетиков — катастрофа. Названия генов вроде MARCH1, SEPT1 или DEC1 Excel воспринимал как даты и превращал их в «1-Mar», «1-Sep» и «1-Dec».

В 2016 году журнал Genome Biology проанализировал почти 3,6 тысячи научных работ с Excel-файлами и выяснил, что примерно в каждой пятой были ошибки, вызванные именно автозаменой форматов.

Долгое время Microsoft считала проблему нишевой и не давала возможность отключить такое поведение. Лишь в 2023 году компания добавила соответствующую настройку; уже после того, как Комитет по номенклатуре генов человека (HGNC) был вынужден переименовать около 27 генов, чтобы избежать ошибок. К тому моменту ущерб для исследований уже был нанесён.

По словам Виньоли, OOXML «открыт» лишь формально. Спецификация формата занимает около 7 000 страниц, что делает полноценную и корректную реализацию сторонними разработчиками почти невозможной.

Кроме того, Microsoft Office сам не использует строгую версию стандарта (Strict OOXML), предпочитая так называемый Transitional-вариант. В нём до сих пор есть зависимости от старых, проприетарных форматов и поведения древних версий Word — вплоть до элементов с названиями вроде autoSpaceLikeWord95 или shapeLayoutLikeWW8.

Отдельно Виньоли критикует рекомендации использовать Windows Metafile для графики вместо открытых и кросс-платформенных форматов вроде SVG.

Для пользователей всё это выливается в знакомую проблему: документы между Office и LibreOffice открываются, но не всегда так, как ожидалось. Для TDF же это очередное подтверждение того, что формат Office по-прежнему работает как инструмент удержания пользователей внутри экосистемы Microsoft.

Спор вокруг OOXML длится уже много лет, и новый выпад со стороны LibreOffice ясно показывает: вопрос совместимости и «открытых стандартов» по-прежнему далёк от закрытия.

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