
Cloudflare повідомляє про витік KV-кешу моделі GLM-5.3 у Workers AI та виправлення SGLang
Cloudflare каже, що проблема ізоляції тенантів торкнулася моделі GLM-5.3 Workers AI від 27 серпня до 9 вересня 2026 року, було розкрито 155 відповідей. Модель відновили після виправлення конфігурації та патча рушія SGLang.
Cloudflare повідомила про проблему ізоляції тенантів, що торкнулася її моделі GLM-5.3 Workers AI, зазначеної як @cf/zai-org/glm-5.3, після того як дослідник безпеки повідомив компанію про витік KV-кешу між запитами. Cloudflare повідомила, що проблема почалася 27 серпня 2026 року, її усунули, а модель відновили 9 вересня. Компанія підтвердила, що жодна інша модель, розміщена на Workers AI, не була торкнута.
Що сталося
Cloudflare повідомила, що витік стався через дві взаємопов'язані проблеми. Вона розгорнула GLM 5.3 із контекстним вікном на 1,048,576 токенів, але пул KV-кешу на її префіл-GPU вміщував лише 681,280 токенів. Друга проблема була в тому, як SGLang, відкритий рушій інференсу, що його використовує Cloudflare, обробляв запити надмірної довжини в режимі розділеного префілу та декодування. Промпт, який не вміщався в пул, позначали як відхилений і замінювали заповнювачем на один токен, але префіл генерував KV-кеш для заповнювача і передавав його на вузол декодування. Вузол декодування припускав, що префіл перезаписав KV-кеш повним промптом, тоді як більша частина попереднього стану залишалася недоторканою, тому він генерував відповідь, звертаючись до застарілих сторінок кешу. Загалом постраждали 155 відповідей, усі на промпти довші за 681,280 токенів. Cloudflare повідомила, що не знайшла доказів навмисної експлуатації.
Реагування та усунення
За даними Cloudflare, вона отримала 8 вересня 2026 року звіт від Gadi Evron із Knostic. Cloudflare відтворила проблему наступного ранку і вивела модель з мережі протягом 40 хвилин після оголошення інциденту. Щоб виправити конфігурацію, Cloudflare налаштувала GLM 5.3 так само, як GLM 5.2, вивільнивши достатньо пам'яті GPU, щоб пул префіл KV міг утримувати близько 2.04 мільйона токенів, приблизно вдвічі більше за довжину контексту 1,048,576 токенів. Вона також виправила рушій так, щоб запит із відкладеним відхиленням знімався з черги допуску розділення разом зі своєю оригінальною помилкою до будь-якого bootstrap, виділення пам'яті або передавання KV. Cloudflare перевірила зміни за скриптом відтворення дослідника та власними тестами з canary-маркерами перед відновленням моделі.
Виправлення у вихідному проєкті та посилення захисту
Cloudflare опублікувала звіт разом із дописом SGLang як узгоджене розкриття. Вона повідомила, що патч для проблеми випущено в SGLang v0.5.20, з подальшими виправленнями у v0.5.21 і v0.5.22, і наполегливо рекомендує всім операторам оновити залежності SGLang до v0.5.22 або новішої версії. Супровідники також прийняли зміну, яка відхиляє такі запити раніше, за підходом Cloudflare. Cloudflare повідомила, що GLM 5.3 була єдиною моделлю, торкнутою цією помилкою, і застосувала виправлення рушія та посилення захисту до кожної моделі, яку обслуговує через SGLang. Її перевірки розгортання тепер вимагають цих змін для кожного нового розгортання. Cloudflare рекомендує операторам вимірювати розмір пулу KV відносно довжини контексту на кожному вузлі префілу та декодування, оновитися до v0.5.22 або новішої версії, працювати з відкладеним звільненням KV на обох ролях, обмежувати партії передавання Mooncake і вмикати виявлення пошкоджень там, де це підтримується.
Джерела: Cloudflare
SiTech — веброзробка з підтримкою AI
Створюємо швидкі та сучасні сайти й інтегруємо AI у бізнес-процеси. Маєте проєкт чи запитання? Із задоволенням допоможемо.