КИБЕРБЕЗОПАСНОСТЬ

В Squid нашли 29-летнюю утечку памяти Squidbleed

29-летняя уязвимость Squidbleed в прокси Squid утекала HTTP-запросы и токены. Баг исправили только в июне 2026 года в версии 7.6.

✍️ Редакция iTech News | 24.06.2026 | ⏱ 4 мин | Источник: The Register
💀

29-летняя уязвимость Squidbleed в прокси-сервере Squid десятилетиями могла сливать в сеть чужие HTTP-запросы, логины, пароли и токены сессий. Ошибку, появившуюся еще в 1997 году, закрыли только 8 июня 2026 года в версии Squid 7.6, и для многих администраторов это неприятное напоминание: старый код, который «просто работает», иногда работает против вас.

О находке сообщает The Register. Исследователь Lam Jun Rong из Calif.io рассказал, что наткнулся на проблему почти бытовым способом: пытался выйти в интернет на борту самолета и увидел старую установку Squid, выпущенную почти десять лет назад. Дальше в дело подключился Claude Mythos Preview от Anthropic, а уже в апреле баг-репорт ушел мейнтейнерам Squid под идентификатором CVE-2026-47729. Исправление вошло в релиз Squid 7.6 от 8 июня.

Технически история особенно неприятна тем, что речь не о падении сервиса и не о редком corner case, а о классической утечке памяти на чтение, напоминающей Heartbleed по эффекту. По словам Rong, уязвимость Squidbleed затрагивала все версии Squid в конфигурации по умолчанию при двух условиях. Первое: прокси должен видеть содержимое трафика, то есть работать с открытым HTTP или стоять в схеме с TLS-терминацией. Второе: у него должна быть возможность сходить на FTP-сервер, контролируемый атакующим, по TCP-порту 21. Для 2026 года сама эта связка звучит как музейная экспозиция, но именно на таких музейных экспонатах до сих пор держится часть корпоративной и провайдерской инфраструктуры.

Корень проблемы оказался в парсере листинга FTP-каталогов. Ошибка пришла в код вместе с коммитом bb97dd37a от 1997 года, который добавлял поддержку старых серверов NetWare. Эти FTP-серверы, в отличие от большинства остальных, ставили лишние пробелы между временной меткой изменения файла и его именем. Чтобы пропускать этот хвост из пробелов, код крутил цикл по символам whitespace. На бумаге все выглядело безобидно. На практике, если вредоносный FTP-сервер не передавал имя файла после timestamp, указатель упирался в завершающий нулевой байт строки. Функция strchr считала этот байт допустимой частью строки поиска, цикл не останавливался, чтение уходило за пределы буфера, а затем xstrdup копировал посторонние данные обратно атакующему как будто это имя файла. Итог — heap overread и выдача кусков памяти наружу.

Самое важное здесь не красота бага, а его полезная нагрузка. В вытекшей памяти могли оказаться именно HTTP-запросы в открытом виде. А это уже не теоретическая неприятность, а вполне прикладные вещи: пароли, API-ключи, cookie, токены авторизации, внутренние URL и другие фрагменты, которые любят жить в заголовках и параметрах запроса. Если Squid стоит у крупной компании, провайдера, школы или университета — а The Register отдельно напоминает, что такие установки там обычны, — один уязвимый прокси превращается в точку утечки для заметного объема пользовательского и служебного трафика. Отдельный дискомфорт в том, что многие организации могли бы годами не замечать проблему просто потому, что ничего не падало и мониторинг был «зеленым».

Есть и более широкий контекст. Это уже не первая история, где генеративные модели и агентные инструменты выступают не как маркетинговая наклейка, а как реальный ускоритель security-исследований. Calif.io ранее фигурировала в публикациях о HTTP/2 Bomb, а сама The Register напоминает и о свежей инициативе OpenAI Patch the Planet. При этом важно не впадать в техно-мистику: баг нашел не «искусственный интеллект сам по себе», а исследователь, который использовал модель как усилитель разбора старого кода и гипотез. Для индустрии это, пожалуй, самый трезвый вывод: ИИ все чаще полезен там, где человеку нужно быстро раскопать забытый легаси-слой, особенно если в нем живут протоколы вроде FTP и артефакты эпохи NetWare.

Для разработчиков и ИТ-руководителей вывод максимально приземленный. Если у вас есть Squid, нужно проверить версию и обновиться до 7.6 или новее. Если FTP в инфраструктуре включен «потому что когда-то был нужен», его стоит отключить без лишней ностальгии: Rong прямо пишет, что для большинства организаций легитимный FTP-трафик сегодня близок к нулю, а значит, эта поверхность атаки убирается почти бесплатно. История с уязвимостью Squidbleed хорошо показывает, какой именно технический долг опаснее всего: не тот, что громко ломается, а тот, который десятилетиями тихо живет в production, пока кто-то не задаст коду один неприятный вопрос. Подробнее об исходной находке и деталях разбора пишет The Register.

Поделиться: Telegram X LinkedIn