Перейти к содержанию

OpenAI

OpenAI выложила проверку сайтов на уязвимость php2shell

2 мин чтения

Текст написан ИИ-моделью по источникам, на которые ведут ссылки, и сверен с ними второй моделью. Как мы работаем

Всё о теме: OpenAI: модели и продукты →
Изображение: blockchain.news

Два навыка для Codex из репозитория php2shell-checker от OpenAI, опубликованного 21 октября, определяют, работает ли сайт или сервер на версии PHP, уязвимой к php2shell. Код распространяется под лицензией Apache 2.0.

Под названием php2shell объединены две уязвимости. CVE-2026-109618 вызывает повреждение памяти, когда во время очистки запроса её не хватает. В CVE-2026-109619 глобальное состояние, оставшееся от одного запроса, подхватывает следующий запрос на том же воркере. PHP описывает обе как удалённое выполнение кода. Нашли их участники инициативы Patch the Planet с помощью моделей OpenAI, а исправление готовили два месяца. Исправленные релизы: 8.5.12, 8.4.27, 8.3.36 и 8.2.35.

Оба навыка ставятся в Codex одной командой: $skill-installer install both skills from https://github.com/openai/php2shell-checker. Если у вас есть только адрес сайта, нужен phpcheck-url, а при доступе к серверу подходит phpcheck-server. Без Codex скрипт запускается напрямую: node phpcheck.js "https://example.com" для сайта и node phpcheck.js --local для локального PHP. Правки кода со стороны OpenAI не принимает, баг-репорты и отзывы можно оставлять в issues.

Результат возвращается кодом выхода, поэтому проверку легко встроить в скрипт:

  • OK, код 0: стабильная патч-версия выше порога для своей ветки;
  • VULNERABLE, код 1: версия на пороге или ниже;
  • UNKNOWN, код 3: версию не удалось получить, ветка незнакомая или сборка предрелизная;
  • код 2: неверные аргументы.

С флагом --json вывод становится машиночитаемым, статус лежит в поле patch_status.

Под капотом проверка всего лишь сравнивает номера версий. Скрипт отправляет HEAD-запрос и читает заголовки X-Powered-By и Server. GET он шлёт, только если HEAD вернул 405 или 501, по редиректам не ходит и тело ответа не разбирает. Ответ OK опирается на допущение, что все следующие стабильные патчи ветки содержат исправление, а само исправление скрипт не проверяет. Заголовки можно скрыть или подменить, а бэкпорты из дистрибутивов могут не менять номер версии. Сами версии авторы предлагают сверять с официальным релизом безопасности PHP.

С номером версии непросто и у старых веток. PHP 8.1 и более ранние версии проект больше не поддерживает, но для 7.4, 8.0 и 8.1 опубликованы минимальные бэкпорты в исходниках, а дистрибутивы и LTS-поставщики могут собирать свои пакеты. В качестве временных мер PHP предлагает отключить session.upload_progress и перезапустить воркеры, но полноценным исправлением их не считает.

Отдельно OpenAI предупреждает, что результат UNKNOWN не означает, что сайт пропатчен.

OpenAI

Агенты GPT-Rosalind сделали за 32 минуты работу на месяцы

За 32 минуты тысячи агентов GPT-Rosalind разобрали данные по миллионам клеток мозга мыши, на что у людей ушло бы от нескольких месяцев до года. И нашли в них возможную связь холестерина с гибелью нейронов. Вам доводилось находить в старых данных то, что при первом разборе пропустили?

Пока никто не написал. Будьте первым.

Присоединяйтесь к разговору

Войдите, чтобы оставить комментарий. Он появится после модерации.