TGViewer
Голландский Rust-ист Голландский Rust-ист @zh_rust · 204 subscribers
Post #21 411
Как я нашел два CVE в Cube

Для контекста, я работаю разработчиком в Cube Dev в core команде над продуктом в OSS, итак начинаем:

В декабре, когда гремело CVE вокруг React, я неожиданно в вечер воскресенья со своим Кермитом (мой любимый пес породы вельш-корги, мы работаем с ним методом утёнка) решил попробовать найти вектор атаки в Кубе и попробовать его развить.

Рецепт для поиска уязвимости строиться на поиске вектора атаки и ее развитии. Так как мы говорим про сервер, вектор практически всегда начинается с отправки специально подготовленного запроса. Достаточно быстро нашел отсутствие валидации + санитизации входящих данных и получил хороший вектор для атаки, но оставалось придумать как ее развить.

Обычно развить атаку намного сложнее, чем найти сам вектор. Нужно обойти весь код и составить цепочку вызовов + найти все кусочки пазла, чтобы собрать это все воедино. Для OSS проектов, люди даже иногда подкидывают PR, чтобы уже имея вектор атаки, развить его.

По понятным причинам, я не могу делиться конкретными деталями где CVE, в связи с тем, что прошло достаточно мало времени, но я могу подсветить пару важных вещей:

• Валидируйте все что можете.
• Санитизируйте, запретите лишние поля (нельзя разрешать неизвестные ключи, так-как в JS все любят spread операторы).
• Защищайтесь от прототипов (используйте Map или Object.create(null), или hasOwnProperty, а не my_obj[req.key]), иначе обязательно кто-то подкинет вам такой ключик.
• Не пишете на JS 😂

CVE-2026-25958 | Исправление

Со второй уязвимость вышло попроще, просто удалось найти где пропущенный await позволяет уронить express сервер.

CVE-2026-25957 | Исправление

Голландский Rust-ист - канал о веб разработке
  • 🔥 8
  • 💅 2
  • ❤ 1
  • 🌚 1
  • 🙈 1
More from @zh_rust
  1. Sep 28, 2026Post #34
  2. Jul 1, 2026Как и обещал, выкатываю фулл лист моего ПК под телек в сравнении со Steam Machine Для нача…
  3. Jul 1, 2026Post #32
  4. Jul 1, 2026Post #31
  5. Jul 1, 2026Post #30
  6. Jul 1, 2026Post #29
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →