1C-Бітрікс · Security · Legacy support
Sprayer24
Відновлення legacy-інтернет-магазину на застарілій версії 1C-Бітрікс після компрометації: очищення файлів і БД від шкідливого коду, аналіз логів, перевірка доступів, точкове закриття виявлених уразливостей та подальша підтримка проєкту.
Переглянути сайт ↗Зона відповідальності
безпечне відновлення застарілої системи без можливості повного оновлення платформи.
Завдання
Проблема
Сайт працював нестабільно та мав явні ознаки компрометації:
- випадкові редиректи на adult- та gambling-ресурси;
- пошукові боти отримували сторінки зі spam-посиланнями та сторонньою рекламою;
- антивірус хостинг-провайдера фіксував шкідливу активність;
- у файловій системі з’явилися сторонні PHP-файли та каталоги;
- у коді була велика кількість обфускації та підозрілого inline JavaScript;
- були знайдені статичні spam/doorway HTML-сторінки;
- виявлено PHP file manager із правами доступу 777;
- частина шкідливого JavaScript та обфусцованого коду зберігалася безпосередньо в БД;
- у логах було видно велику кількість запитів до заражених і сторонніх файлів.
Обмеження
Стандартний сценарій із повним оновленням системи був практично непридатний.
Активної ліцензії 1C-Бітрікс не було, а проєкт містив багато старого кастомного коду. Повне оновлення платформи могло призвести до втрати сумісності та фактичної зупинки магазину.
Тому завдання полягало не в повній модернізації системи, а в безпечному відновленні працездатності існуючого legacy-проєкту.
Що було зроблено
Оскільки середовище вважалося скомпрометованим, роботи виконувалися через окрему ізольовану віртуальну машину.
У межах відновлення:
- проведено перевірку файлової структури, БД та серверних логів;
- видалено сторонні та шкідливі файли;
- очищено БД від injected JavaScript та обфусцованого коду;
- перевірено каталоги uploads, temp та cache;
- перевірено підозрілі include-підключення;
- контролювалися файли, які змінювалися повторно після очищення;
- перевірено SSH users/keys, FTP/SFTP-доступи та адміністраторів 1C-Бітрікс;
- виконано rotation доступів;
- проаналізовано відомі exploits для застарілої версії 1C-Бітрікс;
- виявлені уразливі ділянки були закриті точковими змінами без глобального оновлення платформи;
- додатково обмежено частину джерел явно шкідливих запитів.
Точну початкову точку компрометації достовірно встановити не вдалося, тому робота будувалася навколо пошуку та нейтралізації фактично виявлених векторів зараження.
Повторний інцидент
Перша очистка та відновлення зайняли приблизно 2–3 дні.
Приблизно через місяць частина зараження проявилася повторно, але вже в значно меншому масштабі.
Була проведена додаткова діагностика, знайдені нові уразливі місця та виконана друга очистка, яка зайняла близько 1–2 днів.
Результат
Результат
Після повторного відновлення:
- зникли шкідливі редиректи та сторонній контент;
- зменшилася паразитна серверна активність;
- антивірус хостинг-провайдера перестав фіксувати зараження;
- основний функціонал магазину був повністю збережений;
- близько року не спостерігалося помітних повторних інцидентів.
Після завершення робіт проєкт залишився на подальшій підтримці, а для магазину регулярно виконувалися додаткові доопрацювання.