Хмарна платформа для розгортання застосунків Railway оприлюднила детальний звіт про жовтневий злам своєї інфраструктури. За даними компанії, атакувальники дісталися внутрішнього вихідного коду, розшифрували частину змінних середовища клієнтів і використали викрадені ключі доступу до ШІ-сервісів, згенерувавши приблизно $740 тисяч несанкціонованих витрат. Звіт з'явився 10 листопада, про нього також повідомило видання BleepingComputer.
Як розгорталася атака
Railway описує інцидент як майже добове протистояння між власними інженерами та нападниками, які, за оцінкою компанії, діяли за допомогою ШІ-агентів і паралельно випробовували різні шляхи проникнення. Основні етапи, за звітом Railway (час — UTC):
- 18 жовтня — зловмисник почав створювати фіктивні акаунти, перші спроби були невдалими;
- 20 жовтня, 07:28 — використано раніше невідому вразливість у системі збирання (build), що дало змогу частково вийти за межі ізоляції файлової системи та отримати внутрішні облікові дані;
- того ж дня атакувальник прочитав історію 353 збірок і скопіював внутрішній код платформи;
- 21 жовтня — через неправильно налаштований зв'язок довіри (OIDC) отримано короткочасні хмарні облікові дані, після чого почалися запити до бази змінних із пріоритетом на ключі ШІ-провайдерів і їх розшифрування;
- 21 жовтня, близько 09:25 — доступ нападника повністю перекрито.
«Це не був один злам, за яким іде одне виправлення», — йдеться у звіті Railway, де зазначено, що атакувальник досліджував багато маршрутів паралельно.
Масштаб наслідків
Компанія називає верхню межу: розшифрування змінних могло зачепити до 1,85% робочих просторів — це близько 100 тисяч. Railway підкреслює, що це максимальна оцінка, а не підтверджена кількість постраждалих, оскільки журнали фіксують середовища, а не окремі змінні. Також скинуто токени пов'язаних акаунтів (зокрема GitHub OAuth) для 1852 користувачів. Ознак того, що нападники завантажили Git-репозиторії клієнтів чи отримали доступ до їхніх баз даних, компанія не знайшла.
Відновлення роботи відбувалося поетапно: 22 жовтня збирання проєктів спершу повернули корпоративним клієнтам, потім тарифу Pro, а ввечері — тарифу Hobby, безплатним і пробним акаунтам. Компанія також замінила облікові дані й сертифікати, перебудувала внутрішні інструменти та перевела всіх користувачів на нову інфраструктуру збирання.
Ще 22 жовтня Railway закликала клієнтів змінити всі секрети. Реєстрацію нових користувачів призупиняли до 2 листопада, а про інцидент повідомили до центру IC3 ФБР.
Хто платитиме за чужі запити до ШІ
Railway вважає, що головною метою були саме ключі до ШІ-сервісів — імовірно, для перепродажу або так званої дистиляції моделей. Компанія домовляється з провайдерами про відшкодування: AWS Bedrock і Google Gemini застосовують власні антифродові політики, частину випадків розглядають індивідуально, а витрати, які провайдери не повернуть, Railway обіцяє покрити сама.
Серед змін в інфраструктурі платформа називає окрему тимчасову віртуальну машину для кожної збірки, двофакторну й біометричну авторизацію критичних дій у CI, журналювання всіх операцій шифрування та перехід на короткочасні облікові дані з мінімальними правами.
Чому це важливо
Інцидент показує, як змінилася цінність викрадених даних. Ключ до популярної ШІ-моделі тепер — це фактично готівка: кожен запит оплачує власник ключа, а рахунок може за лічені години сягнути тисяч доларів. За даними BleepingComputer, компанія Wiz пов'язує подібні атаки на платформи для розробників із ширшою хвилею, яку вона назвала «Black October».
Показово й те, що, як видно з хронології Railway, критичне розшифрування відбулося майже через 15 годин після того, як команда реагування вже почала діяти. Тобто саме лише виявлення атаки не врятувало секрети клієнтів — вирішальною була швидкість, з якою вдалося закрити всі шляхи проникнення.
Для розробників висновок практичний: зберігати ключі ШІ-сервісів варто з обмеженнями на витрати, регулярно їх ротувати й не тримати в змінних середовища більше прав, ніж потрібно застосунку.





Коментарі (0)