Перейти до вмісту
🚫 WordPress-сайт зламали та відключили: покроковий план відновлення

🚫 WordPress-сайт зламали та відключили: покроковий план відновлення

Хостер заблокував сайт за розсилання спаму, а адмінка не відкривається. Паніка знайома кожному, хто адмініструє WordPress не перший рік. Далі, покроковий план: від переговорів із техпідтримкою до ручного очищення на локальному сервері.

Ситуація ускладнюється тим, що сайт фізично відімкнено від мережі. Ви не можете зайти в панель керування WordPress, запустити звичний сканер на кшталт Wordfence і натиснути «очистити». Тому порядок дій тут зворотний: спочатку повертаємо доступ, потім розбираємо заразу.

💡 Швидкий огляд:

  • Зв’яжіться з хостером: попросіть відкрити сайт за HTTP-паролем і вимкнути надсилання пошти — це дасть вам доступ для діагностики без ризику повторного розсилання спаму.
  • Якщо хостер відмовляється вмикати сайт назад, підніміть копію локально через XAMPP або аналогічний стек, проскануйте плагінами безпеки та замініть заражені файли чистими версіями.
  • Після очищення змініть УСІ паролі: FTP, базу даних, панель хостингу, облікові записи адміністраторів WordPress. Оновіть ядро, теми та плагіни до актуальних версій.
  • Налаштуйте базовий захист: файрвол, обмеження спроб входу, двофакторну автентифікацію. Перевірте власний комп’ютер на віруси, часте джерело витоку паролів.

Чому хостер вимикає зламані сайти

Звучить жорстко: ви клієнт, платите за хостинг, а сайт взяли й вимкнули. Але логіка хостера проста і, якщо розібратися, розумна.

Зламаний WordPress-сайт робить дві небезпечні речі. Перше, розсилає спам через поштовий сервер хостингу. Тисячі листів ідуть на випадкові адреси, і поштова IP потрапляє до чорних списків. Після цього ВСІ клієнти цього сервера перестають доставляти листи, хостер отримує лавину тікетів від безневинних користувачів.

Друге, сайт перетворюється на розповсюджувача шкідливого коду. Відвідувачам підсовують трояни, фішингові форми або прихований майнінг. Google помічає це протягом кількох годин і вішає попередження «Цей сайт може загрожувати вашій безпеці». Після такого трафік падає до нуля, а вигрібати сайт із чорних списків пошуковика, окрема епопея.

Хостер вимикає заражений сайт не для того, щоб вас покарати. Він захищає свою інфраструктуру та решту клієнтів. Домовитися з ним можна, і це перший крок.

Крок 1: переговори з хостером

Ряди штабелерованих комп'ютерних серверів та мережевого обладнання, видимі всередині професійного центру обробки даних

Одразу після отримання сповіщення про блокування пишіть у техпідтримку й пропонуйте компроміс. Не вимагайте «увімкнути назад і все». Запропонуйте конкретний план:

  • Увімкнути сайт за HTTP-паролем. Це стандартна функція Apache/Nginx, коли при заході на сайт браузер запитує логін і пароль. Відвідувачі та пошуковики сайт не бачать, а ви, бачите й можете працювати з адмінкою.
  • Вимкнути поштову функцію хостингу. Якщо спам ішов через PHP mail(), хостер може тимчасово заблокувати надсилання для вашого акаунта. Ризик повторного розсилання зникає, хостеру спокійніше.

У більшості випадків техпідтримка йде назустріч. Хостеру вигідніше, щоб ви почистили сайт і залишилися клієнтом, ніж втрачати клієнта й мати мертвий акаунт на сервері.

Отримали доступ під паролем, переходьте до очищення (крок 3). Не домовилися, дивіться крок 2.

Крок 2: відновлення без доступу до сайту

Хостер відмовляється вмикати сайт навіть під паролем. Таке буває з дешевими shared-тарифами або якщо збитки від спаму вже занадто великі. У вас три шляхи.

2.1. Локальна копія через XAMPP

Завантажте архів сайту через файловий менеджер хостингу (або запитайте у техпідтримки бекап) та експортуйте базу даних через phpMyAdmin. Розгорніть копію на локальному комп’ютері через XAMPP, LocalWP або Laragon.

Далі стандартна процедура: встановіть Wordfence — це найпопулярніший безкоштовний сканер із сигнатурами малварі та файрволом. Запустіть повне сканування, видаліть знайдені заражені файли або замініть їх оригіналами зі свіжого дистрибутива WordPress. Проженіть Sucuri Scanner для перевірки цілісності ядра. Очищений сайт залийте назад на хостинг.

Спосіб робочий, але потребує базового розуміння, як влаштований WordPress зсередини.

2.2. Список заражених файлів від хостера

Попросіть техпідтримку надіслати список файлів, які детектуються як шкідливі. Часто хостери використовують ClamAV або аналог на стороні сервера й бачать конкретні файли. Отримавши список, завантажте ці файли через FTP, відкрийте в редакторі та видаліть підозрілі вставки, зазвичай це обфускований PHP-код на початку або в кінці файлу.

Для файлів ядра WordPress і популярних плагінів простіше не чистити вручну, а перезаписати оригінальними версіями з офіційного репозиторію. Після заміни попросіть хостера повторно перевірити сайт і, якщо загроз немає, відкрити доступ.

2.3. Фахівець із безпеки

Якщо обсяг зараження великий, а часу розбиратися немає, найміть профільного фахівця. Вартість разового очищення залежить від складності: базове сканування та видалення малварі коштує в діапазоні від півтори до п’яти сотень доларів. Сервіси на кшталт Sucuri пропонують пакет «Cleanup & Protect» із гарантією та річним моніторингом.

Порада: перед зверненням до фахівця все одно запитайте у хостера бекап файлів і бази. Це ваші дані, хостер зобов’язаний їх віддати.

Крок 3: очищення сайту після отримання доступу

Доступ до адмінки є. Тепер методично проходимо контрольний список.

Повний бекап. Навіть заражений. Скопіюйте всі файли через FTP і зробіть дамп бази даних. У процесі очищення можна випадково зламати те, що ще працювало, бекап страхує від фатальних помилок.

Сканування. Встановіть Wordfence, безкоштовна версія знаходить малварь за сигнатурами, перевіряє файли теми та плагінів на відповідність оригіналу з репозиторію. Паралельно запустіть Sucuri Scanner, він спеціалізується на перевірці цілісності ядра. Два сканери знаходять більше, ніж один.

Зміна паролів. Усіх і одразу: облікові записи адміністраторів WordPress, FTP-доступ, користувач бази даних MySQL, пароль від панелі хостингу. Генеруйте довгі випадкові паролі. Увімкніть двофакторну автентифікацію для адмінки, Wordfence вміє це з коробки.

Оновлення. Поставте останню версію WordPress, оновіть усі плагіни та теми. Видаліть невикористовувані плагіни, кожен із них — це потенційна точка входу.

Крок 4: захист від повторного зламу

Очистили, тепер фіксуємо, щоб не повторилося через тиждень.

  • Файрвол на рівні сайту. Wordfence включає Web Application Firewall, який блокує відомі вектори атак ще до того, як вони досягнуть WordPress. Безкоштовної версії достатньо для нетипових проєктів.
  • Обмеження спроб входу. Брутфорс, наймасовіший спосіб зламу. Плагін на кшталт Limit Login Attempts Reloaded блокує IP після 3-5 невдалих спроб.
  • Регулярні оновлення. Автооновлення мінорних версій WordPress увімкнено за замовчуванням, а для плагінів і тем налаштуйте сповіщення або використовуйте керований хостинг з автооновленням.
  • Перевірка ПК. Якщо пароль адміністратора витік через троян на вашому комп’ютері, зміна пароля на сервері не допоможе. Проженіть антивірус (Malwarebytes, безкоштовна версія справляється з більшістю загроз) і перевірте браузерні розширення.

Окремий момент: бекапи. Налаштуйте автоматичне резервне копіювання, щонайменше раз на добу. Плагін UpdraftPlus безкоштовно ллє бекапи на Google Drive, Dropbox або окремий FTP. При наступному інциденті відновите сайт за 10 хвилин, а не за вечір.

⁉️🤔 Часті запитання

Чи зобов’язаний хостер віддавати бекап зламаного сайту?

Файли та база даних — це ваш контент, хостер не має права їх утримувати. Техпідтримка зобов’язана надати архів навіть із заблокованого акаунта. На практиці запит через тікет-систему вирішує питання протягом доби.

Чи можна просто перевстановити WordPress і залити бекап?

Ні, тому що зараження часто живе в базі даних або в папці uploads, а не тільки у файлах ядра. Проста перевстановка та підстановка старої бази з високою ймовірністю поверне інфекцію назад. Потрібне саме сканування та чистка запущеного сайту.

Що робити, якщо Google позначив сайт як небезпечний?

Після повного очищення зайдіть у Google Search Console, знайдіть розділ «Безпека та ручні заходи» та запитайте перевірку. Google повторно просканує сайт протягом 24-72 годин і зніме попередження. Аналогічна процедура є в Bing Webmaster Tools.

Які плагіни безпеки ставити обов’язково?

Мінімальний набір на кожен сайт: Wordfence (файрвол + сканер) і Limit Login Attempts Reloaded (захист від брутфорсу). Цього достатньо для захисту від масових автоматичних атак. Якщо сайт комерційний, додайте двофакторну автентифікацію та моніторинг цілісності файлів.

Чи допоможе перехід на керований хостинг?

Так, керовані WordPress-хостинги (Kinsta, WP Engine, SiteGround) беруть на себе значну частину безпеки: серверний файрвол, автооновлення, ізольовані контейнери. Це не скасовує базові заходи на рівні сайту, але знижує ймовірність зламу та спрощує відновлення.

Сайт зламали й вимкнули: підсумковий чек-лист

Порядок дій вкладається в чотири пункти. Домовтеся з хостером про доступ під паролем. Ні, піднімайте копію локально й скануйте там. Після очищення змініть паролі та оновіть усе до актуальних версій. Налаштуйте файрвол, захист від брутфорсу та щоденні бекапи.

Якщо сайт комерційний і простій дорогий, розгляньте перехід на керований WordPress-хостинг або найміть фахівця для налаштування ешелонованого захисту.

А як ви відновлювали сайт після блокування хостером? Поділіться досвідом у коментарях.