GitLab випустив позачергові оновлення безпеки, які усувають кілька вразливостей, зокрема CVE-2026-85706 з максимальною оцінкою CVSS 10.0 — вразливість обходу шляху (path traversal) в API комітів репозиторію, що дає змогу неавтентифікованому зловмиснику читати довільні файли з сервера GitLab. Уразливі обидві редакції — Community Edition і Enterprise Edition — починаючи з версії 18.7. За даними компанії watchTowr, сканування вразливих екземплярів почалося протягом кількох годин після публічного розкриття. Адміністраторам самокерованих інсталяцій GitLab з доступом з інтернету необхідно негайно оновитися до версій 19.1.8, 19.2.6 або 19.3.2.
Технічні подробиці CVE-2026-85706
Вразливість CVE-2026-85706 належить до класу CWE-22 (обхід шляху) і спричинена, за описом GitLab, некоректним обмеженням шляхів і відсутністю перевірки автентифікації в API комітів репозиторію. Це означає, що за певних умов зовнішній зловмисник може без будь-яких облікових даних отримати вміст довільних файлів на сервері.
Згідно із записом у GitHub Advisory Database, вразливість зачіпає такі версії GitLab CE та EE:
- Усі версії починаючи з 18.7 до 19.1.8 (не включно)
- Усі версії починаючи з 19.2 до 19.2.6 (не включно)
- Усі версії починаючи з 19.3 до 19.3.2 (не включно)
За даними watchTowr, експлуатація дає змогу отримати доступ до журналів і конфігураційних файлів GitLab, що містять облікові дані, секрети та іншу чутливу інформацію. Єдиною необхідною умовою, як повідомляється, є наявність щонайменше одного публічного проєкту на цільовому екземплярі.
Друга критична вразливість: CVE-2026-87719
У тому ж оновленні GitLab усунув ще одну критичну вразливість — CVE-2026-87719 з оцінкою CVSS 9.9. Це помилка небезпечної десеріалізації (CWE-502), що зачіпає лише GitLab Enterprise Edition.
Згідно з описом у GitHub Advisory Database, вразливість дає змогу автентифікованому користувачу з доступом до Duo Chat отримати конфігурації Advanced Search і чутливі облікові дані через спеціально сформований аргумент підписки GraphQL, оминаючи серіалізацію та виконуючи пошук серверних об’єктів. Уразливі версії GitLab EE починаючи з 18.3 до 19.1.8, з 19.2 до 19.2.6 і з 19.3 до 19.3.2.
Принципова відмінність між двома вразливостями — у межах впливу. CVE-2026-85706 зачіпає обидві редакції (CE та EE) і не потребує автентифікації, що робить її більш небезпечною для інсталяцій з доступом з інтернету. CVE-2026-87719 обмежена Enterprise Edition і вимагає автентифікованого доступу до Duo Chat, що суттєво звужує коло потенційних зловмисників.
Контекст: серія критичних вразливостей GitLab
Це вже не перша критична вразливість GitLab за останні тижні. Раніше була розкрита CVE-2026-19478 — вразливість ін’єкції коду через GraphQL з оцінкою CVSS 9.4, яка давала змогу неавтентифікованому користувачу модифікувати або видаляти публічні проєкти та користувацькі дані через директиву GraphQL. Ми вже писали про цю вразливість. Для CVE-2026-19478 існує публічний відтворюваний стенд, який описує два вектори атаки через фільтри версій GraphQL. При цьому твердження про негайну активну експлуатацію CVE-2026-19478 в дикій природі не були незалежно підтверджені — наявність публічного PoC саме по собі не є доказом масової експлуатації.
Аналогічна обережність доречна й щодо CVE-2026-85706: заява watchTowr про початок сканування 11 вересня 2026 року о 06:00 UTC передана через новинний ресурс, і незалежного підтвердження від інших спостерігачів або CISA на момент публікації не виявлено. Водночас сам характер вразливості — неавтентифіковане читання файлів з максимальним CVSS — робить швидку появу сканування дуже ймовірною.
Оцінка впливу
Привабливість GitLab як цілі для зловмисників очевидна: несанкціонований доступ відкриває шлях до вихідного коду, секретів CI/CD-конвеєрів, облікових даних і можливості впровадження коду в збіркові пайплайни. Компрометація сервера GitLab може призвести до атак на ланцюг постачання — усе, що знаходиться «далі за потоком» від зараженого конвеєра, опиняється під загрозою.
Найбільшому ризику піддаються організації, які експлуатують самокеровані екземпляри GitLab з доступом з інтернету, особливо за наявності публічних проєктів.
Рекомендації
- Негайне оновлення: установіть версії 19.3.2, 19.2.6 або 19.1.8 залежно від використовуваної гілки. Пріоритет встановлення патчів для CVE-2026-85706 вищий, ніж для CVE-2026-87719, через відсутність вимоги автентифікації.
- Обмеження доступу: якщо негайне оновлення неможливе, обмежте публічний доступ до екземпляра GitLab.
- Перевірка журналів: за рекомендацією watchTowr, проаналізуйте журнали на наявність HTTP POST-запитів до URI вигляду
/api/v4/projects/{id}/repository/commits/, що містять параметриfile.Path, — це може вказувати на спроби експлуатації. - Ротація секретів: якщо екземпляр був доступний з інтернету в уразливій конфігурації, розгляньте ротацію облікових даних і секретів, що зберігаються в конфігураційних файлах GitLab.
Три критичні вразливості GitLab за короткий період формують сталу тенденцію, яка вимагає від адміністраторів самокерованих інсталяцій перегляду підходу до керування оновленнями. Конкретна дія зараз — оновлення до версій 19.3.2, 19.2.6 або 19.1.8 і перевірка журналів API комітів на ознаки спроб експлуатації CVE-2026-85706.