
🔐 WordPress зламали? Покроковий план відновлення сайту
Сайт перестав відкриватися, браузер кричить про вірус, а Google викинув сторінки з видачі. Перша думка, паніка. Друга, «що робити прямо зараз?»
Щодня WordPress-сайти зламують тисячами. Хакерам не потрібен конкретно ваш сайт, боти сканують інтернет у пошуках відомих уразливостей і атакують усе підряд. Неоновлений плагін, слабкий пароль або діра в темі, і сайт уже роздає шкідливий код відвідувачам.
Нижче, покроковий план відновлення: від першої реакції до повного очищення та захисту від повторного зламу. Усі інструменти безплатні, інструкції перевірені на практиці.
💡 Швидкий огляд:
- Зробіть бекап і вимкніть сайт
- Перевірте комп’ютер антивірусом і завантажувальним сканером
- Змініть усі паролі: WordPress, FTP, база даних, панель хостера
- Налаштуйте SFTP замість FTP для шифрування передавання даних
- Відновіть WordPress із чистого бекапу або перезалийте ядро вручну
- Проскануйте сайт плагіном Wordfence
- Перевірте файли вручну через SFTP на base64 та eval
- Перезалийте wp-admin, wp-includes і кореневі файли
- Перевірте тему на сторонній код і налаштуйте firewall та 2FA
Чому WordPress-сайти зламують

Хакери та скрипт-кідді не обирають жертву вручну. Автоматизовані сканери цілодобово шукають сайти з незакритими вразливостями: застарілий плагін, тему без оновлень, версію WordPress із відомою дірою.
Знайшли, заливають шел, впроваджують шкідливий код в index.php або header.php і використовують сайт як платформу для спаму, фішингу або роздавання троянів відвідувачам. Google помічає зараження за лічені години й викидає сайт із пошуку.
Перевірити, чи зламаний сайт, можна через Sucuri SiteCheck, безплатний онлайн-сканер, який показує malware, чорні списки та підозрілі редіректи. Працює миттєво й не потребує доступу до адмінки.
Перші дії: бекап, перевірка ПК і зміна паролів
1. Бекап і вимкнення сайту
Першим ділом скачайте поточний стан сайту через файловий менеджер хостера або FTP. Так, сайт заражений, але бекап знадобиться для аналізу і як страховка на випадок, якщо щось піде не так під час очищення. Заодно переведіть сайт у режим обслуговування або тимчасово закрийте через.htaccess, щоб відвідувачі не підхоплювали malware, поки ви працюєте.
2. Перевірка комп’ютера
Джерелом витоку паролів може бути ваш власний ПК. Троян, що перехоплює FTP-паролі,, класика.
- Проскануйте комп’ютер антивірусом (Avast, AVG або вбудований Windows Defender).
- Скачайте c't Notfall Windows і перевірте систему із завантажувальної флешки: завантажувальний сканер бачить те, що приховує запущена ОС.
- Якщо технічно підковані, встановіть Sandboxie і запускайте браузер у пісочниці до повного очищення.
3. Зміна всіх паролів

Не знаєте, які паролі скомпрометовано,, міняйте все:
- Паролі всіх користувачів WordPress.
- FTP-доступи.
- Паролі баз даних MySQL.
- Майстер-пароль від панелі хостера.
Генеруйте довгі випадкові паролі та зберігайте в менеджері паролів. Поки паролі не змінено, зловмисник зберігає доступ, і будь-яке очищення марне.
Очищення сайту: сканування та відновлення файлів
4. Налаштування SFTP
Звичайний FTP передає паролі відкритим текстом. Підключіть SFTP або SSH-доступ, налаштування є в панелі хостера. Не зберігайте паролі у FTP-клієнті: якщо ПК усе ж заражений, троян витягне збережені обліковки.
5. Відновлення WordPress із бекапу
Якщо є чистий бекап до зламу, відкотіть сайт на нього. Це швидше за ручне очищення. Втратили частину контенту між бекапом і атакою? Експортуйте потрібні записи із зараженої бази окремо. Більшість атак змінює файли, а не базу даних, тому можна відновити лише файлову частину.
6. Сканування через Wordfence

Wordfence, безплатний плагін із firewall і сканером malware. Встановіть і запустіть повне сканування: він порівнює файли ядра, плагінів і тем з оригіналом із репозиторію та показує змінені рядки.
Wordfence знаходить: впроваджений base64-код, eval-конструкції, приховані iframe та підозрілі PHP-файли. Позначайте хибні спрацювання, щоб під час наступного скану вони не спливали повторно.
7. Ручна перевірка через SFTP
Сканер не бачить усього. Підключіться через SFTP і пройдіться папками очима:
- index.php у корені, header.php і functions.php у темі, улюблені місця атак.
- Шукайте рядки з
base64таeval, конструкціїgzinflateіstr_rot13— це обфускація шкідливого коду. - Звертайте увагу на файли з незвичними іменами та датами зміни посеред ночі.
8. Перезаливка ядра та плагінів
Скачайте свіжий WordPress із wordpress.org і перезалийте папки wp-admin та wp-includes, а також усі кореневі файли, крім wp-config.php і.htaccess (їх перевірте окремо). Усі плагіни й теми перевстановіть заново з офіційних джерел. Не відновлюйте плагіни з бекапу, беріть чисті версії.
Оновіть усе до останніх версій. Плагін, який не оновлювався рік, — це майбутня діра, навіть якщо зараз він чистий.
9. Перевірка теми на шкідливий код
Після перезаливки ядра, черга теми. Перевірте functions.php і header.php на сторонній код. Звірте дати зміни файлів: активність у неробочий час підозріла. Wordfence знайде більшість проблем, але ручний огляд не завадить.
За найменших сумнівів перевстановіть тему з нуля з офіційного джерела.
Фінальні кроки та зв’язок із хостером
10. Заходи безпеки після очищення
Скиньте WordPress Security Keys (Salt) у wp-config.php, згенеруйте нові через офіційний генератор. Це примусово завершить усі активні сесії, включно із сесіями зловмисника.
Налаштуйте двофакторну автентифікацію для всіх користувачів-адміністраторів. Wordfence вміє 2FA з коробки, увімкніть у налаштуваннях плагіна.
11. Зв’яжіться з хостером
Повідомте хостеру про злам. Хороший хостер допоможе з аналізом логів, підкаже вектор атаки та запропонує додаткові заходи захисту на рівні сервера. Деякі хостинги надають безплатну допомогу в очищенні, запитайте.
12. Перевірте інші сайти на хостингу
Тримаєте кілька сайтів в одному вебпросторі? Перевірте кожен. Інфекція перестрибує між сайтами, якщо хостинг не ізолює їх один від одного. Відпрацюйте ту саму процедуру на сусідніх сайтах. Правильно налаштований хостинг використовує open_basedir для ізоляції, уточніть у хостера.
Інструменти захисту: Wordfence і Sucuri

Для самостійного захисту достатньо зв’язки: Wordfence (безплатний firewall + сканер) і регулярні бекапи. Wordfence ловить брутфорс, сканує файли та блокує підозрілий трафік на рівні сайту.
Якщо сайт критичний для бізнесу, розгляньте Sucuri. Це хмарний firewall, який фільтрує атаки до того, як вони досягають сервера. Sucuri також включає моніторинг, видалення malware і захист від DDoS. Тарифи стартують від $199 на рік. На практиці для комерційних проєктів це виправдано: година простою магазину коштує дорожче за річну підписку.
Англомовний туторіал із повного циклу відновлення, з демонстрацією кожного кроку в реальному часі:
Як не допустити повторного зламу
Зламаний одного разу сайт, ціль для повторної атаки. Хакери залишають бекдори, і якщо не закрити всі діри, інфекція повернеться через тиждень.
- Автооновлення: WordPress 6.7+ вміє автоматично оновлювати плагіни й теми. Увімкніть у налаштуваннях.
- Мінімум плагінів: Кожен зайвий плагін, потенційна точка входу. Видаліть усе, чим не користуєтеся.
- 2FA: Двофакторна автентифікація для всіх облікових записів адміністратора. Wordfence, Solid Security або Google Authenticator.
- Бекапи: Автоматичні щоденні бекапи зі зберіганням щонайменше за 30 днів. UpdraftPlus (безплатно) або Jetpack Backup.
- Моніторинг: Wordfence надсилає email у разі виявлення змінених файлів. Не ігноруйте.
- Хостинг: Обирайте хостера з ізоляцією акаунтів, WAF на рівні сервера та підтримкою актуальних версій PHP.
⁉️🤔 Часті запитання
Чи можна відновити сайт без бекапу?
Так, але складніше. Перезалийте свіжий WordPress, перевстановіть плагіни й теми з офіційних джерел, а контент експортуйте з бази даних. Медіафайли перевірте поштучно: у завантаженнях можуть лежати шкідливі PHP-файли під виглядом зображень.
Wordfence безплатної версії достатньо для очищення?
Для сканування та виявлення, так. Безплатна версія порівнює файли з оригіналом, знаходить malware і блокує брутфорс. Платні тарифи додають real-time оновлення сигнатур, для разового очищення це надлишково.
Що робити, якщо хостер заблокував сайт?
Зв’яжіться з підтримкою, поясніть ситуацію та запитайте тимчасовий доступ для очищення. Хостинги зазвичай ідуть назустріч. Після очищення попросіть повторну перевірку, сайт розблокують.
Як довго триває очищення зламаного сайту?
Типовий випадок: 2-4 години на повний цикл (бекап, перевірка ПК, зміна паролів, сканування, перезаливка, налаштування захисту). Важкі випадки з множинними бекдорами, до робочого дня. Якщо сайт на хостингу з автовстановлювачем WordPress, перезаливка ядра займає 10 хвилин.
Чи потрібно платити Sucuri, чи вистачить Wordfence?
Для особистого блогу або невеликого сайту Wordfence закриває більшість типових загроз безплатно. Sucuri має сенс для інтернет-магазинів, сайтів із прийманням платежів і проєктів, де година простою коштує грошей. Хмарний firewall знижує навантаження на сервер і ловить атаки ще на підльоті.
Що робити прямо зараз: підсумковий чекліст
Відновлення зламаного WordPress-сайту зводиться до трьох етапів: зупинити зараження, вичистити код, закрити діри. Бекап, страховка. Wordfence, основний інструмент очищення. Зміна паролів і 2FA, захист від повторного проникнення.
- Якщо сайт ще працює і є доступ до адмінки, почніть із Wordfence. Запустіть сканування та дійте за результатами.
- Якщо адмінка впала, підключайтеся через SFTP, робіть бекап файлів і бази, перезаливайте чисте ядро WordPress.
- Якщо сайт під блокуванням хостера, спочатку зв’яжіться з підтримкою. Без їхньої участі блокування не зняти.
Не відкладайте. Кожна година заражений сайт втрачає позиції в пошуку, а відвідувачі отримують шкідливий код. Почніть із безплатної перевірки на Sucuri, 30 секунд, і масштаб проблеми зрозумілий.
А який інструмент допоміг вам після зламу: Wordfence, Sucuri чи ручне очищення? Розкажіть у коментарях.


