Зламали сайт на Joomla: що робити
Влітку 2026 року сайтами на Joomla прокотилася хвиля масових автоматичних зламів. Атакують не вручну і не обираючи жертв: боти обходять інтернет, знаходять вразливе розширення і завантажують веб-шел за лічені секунди. Якщо ваш сайт раптом почав перекидати відвідувачів на чужі сторінки, розсилати спам чи показувати напис «Hacked by...», нижче розберемо покроково, що робити просто зараз і як повернути контроль.
- Як зрозуміти, що сайт справді зламали
- Чому влітку 2026 масово ламають Joomla
- Перша година: що зробити одразу
- Як вичистити сайт правильно
- Відновлення з бекапу: коли це працює
- Як закрити дірку, щоб не повторилося
- Коли варто покликати фахівця
Як зрозуміти, що сайт справді зламали
Іноді злам видно одразу: замість головної сторінки чужий напис. Але частіше він тихий і працює тижнями, а ви дізнаєтеся про нього останнім. Ось ознаки, за якими зараження виказує себе:
- Сайт перекидає відвідувачів на сторонні сторінки (казино, аптеки, сумнівні завантаження), особливо під час переходу з пошуку або з телефону.
- У пошуку під вашим сайтом з'явилися чужі сторінки чи ієрогліфи, а Google показує «Цей сайт може бути зламано».
- В адмінці завелися користувачі з правами Super User, яких ви не створювали.
- Хостинг надіслав повідомлення про шкідливий код чи незвичне навантаження, іноді з призупиненням акаунта.
- Сервер розсилає спам без вашого відома, а IP пошти потрапив у чорні списки RBL.
- У папках media, images, tmp з'явилися незнайомі PHP-файли, файли з подвійним розширенням (.xml.php) чи дивним регістром (.pHp).
- Органічний трафік різко впав: сторінки вилетіли з індексу або позначені як небезпечні.
Навіть один пункт зі списку це привід для повної перевірки. Часто злам працює вибірково: звичайному відвідувачу сайт здається нормальним, а редирект спрацьовує лише для тих, хто прийшов із Google, або тільки один раз з одного пристрою. Тому «у мене все відкривається» ще не означає «все чисто».
Чому влітку 2026 масово ламають Joomla
Річ майже ніколи не в самому ядрі Joomla, воно якраз захищене непогано, а в популярних сторонніх розширеннях. За короткий час розкрили одразу кілька критичних вразливостей (CVSS до 10.0), які дозволяють неавтентифіковане завантаження і виконання PHP-коду. Тобто повне захоплення сайту без жодного пароля:
- JCE (Joomla Content Editor): CVE-2026-48907, закрито у версії 2.9.99.5.
- SP Page Builder: CVE-2026-48908, закрито у 6.6.2.
- iCagenda: CVE-2026-48939, закрито у 4.0.8 та 3.9.15.
- Page Builder CK: CVE-2026-56290, закрито у 3.6.0.
Частину з них експлуатували як 0-day, ще до виходу патча, і всі внесені до каталогу активно експлуатованих вразливостей CISA (KEV). Експлойти публічні, а атаки йдуть ботами по всьому інтернету. Тому аргумент «у мене маленький сайт, кому він потрібен» не працює: ботам байдуже, який у вас трафік, вони б'ють за ознакою «встановлено вразливе розширення».
Масштаб підтверджують і національні центри кібербезпеки. 9 липня 2026 року Австралійський центр кібербезпеки (ACSC) попередив про велику тривалу глобальну кампанію: зловмисники масово сканують сайти на CMS і встановлюють веб-шели, і Joomla JCE прямо названо в списку вразливого софту. ACSC зазначає, що кампанію, ймовірно, пришвидшує ШІ, скорочуючи час від розкриття вразливості до атаки до лічених годин.
Окрема помітна хвиля це дефейси головної сторінки з підписом «Hacked by AntonKill». Профільні джерела по Joomla пов'язують її передусім із вразливістю фреймворку шаблонів Helix3 від JoomShaper (CVE-2026-49049): шкідливий код впроваджується прямо в параметри шаблона в базі даних, тому чищення самих лише файлів буває недостатньо.
Перша година: що зробити одразу
Завдання першої години не «вилікувати», а зупинити збитки і зберегти можливість спокійно розібратися. По порядку:
- Змініть паролі. Адміністратор Joomla, доступи до хостингу і панелі, FTP/SFTP та база даних. Якщо один пароль використовувався в кількох місцях, змінюйте всюди.
- Закрийте сайт від відвідувачів. Переведіть його в режим обслуговування (офлайн у Joomla) або тимчасово віддавайте заглушку. Це захистить відвідувачів від редиректів і шкідника та зупинить розсилку спаму.
- Збережіть докази. Завантажте свіжі логи сервера (access та error) і зробіть повний архів сайту та дамп бази «як є», до чищення. За логами знаходять і час, і спосіб проникнення.
- Перевірте адміністраторів. Заблокуйте чи видаліть акаунти з правами Super User, які ви не створювали. Заразом подивіться, чи не підмінили пошту у вашому власному акаунті.
- Попередьте хостинг. Багато хостерів допомагають з первинною діагностикою, дають доступ до своїх сканерів і, що важливо, не блокують акаунт, якщо бачать, що ви вже займаєтеся проблемою.
- Знайдіть останній чистий бекап. Перевірте, чи є резервна копія за період до зараження. Від цього залежить, яким шляхом піде відновлення.
Як вичистити сайт правильно
Головна помилка звучить так: «знайшов один дивний файл, видалив, заспокоївся». Веб-шел майже завжди не один: поруч лежать копії-закладки, а в базі й у легітимних файлах сидять вставки, які відновлюють доступ. Чищення це система, а не одна дія.
1. Знайти й прибрати веб-шели
Шукайте свіжі та підозрілі PHP-файли там, де їх бути не повинно: в images, media, tmp, cache. Ознаки: подвійне розширення (.xml.php), нестандартний регістр (.pHp), нещодавня дата зміни, а також PHP з функціями eval, base64_decode, gzinflate, assert і preg_replace з модифікатором /e. Такі вставки майже завжди шкідливі.
2. Звірити файли з чистою копією
Найнадійніше порівняти файли сайту з еталоном: завантажте чисту Joomla вашої версії й ті самі розширення з офіційних джерел і звірте. Усе, що відрізняється в ядрі й у файлах розширень, кандидат на заміну. Свої правки (шаблон, конфігурацію) при цьому тримайте окремо.
3. Почистити базу даних
Перевірте базу на ін'єкції: у параметрах шаблонів (особливо Helix3), у статтях, у модулях і в системних плагінах. Шукайте теги script та iframe, вставки з document.write і підключення зовнішніх доменів. Заразом перевірте таблицю користувачів і таблицю розширень: там ховають і прихованих адмінів, і шкідливі плагіни, які заново створюють шели.
4. Перевірити точки закріплення
Загляньте в .htaccess (правила редиректу і підключення PHP), у заплановані завдання (cron) і в системні плагіни Joomla, які спрацьовують на кожному завантаженні. Саме тут найчастіше залишають «другий ключ», щоб повернутися після чищення.
Відновлення з бекапу: коли це працює
Бекап це найшвидший шлях, але лише за двох умов: копія зроблена завідомо до зараження і ви точно знаєте, через що зайшли. Якщо відновити сайт і не оновити вразливе розширення, повторне зараження це питання годин.
Складність у тому, що злам часто помічають за тижні, і всі свіжі бекапи вже містять шел. Тоді чиста копія є, але вона надто стара: відтоді з'явилися нові статті, замовлення, налаштування. У цьому випадку оптимально комбінувати: розгорнути стару чисту копію як основу, акуратно перенести на неї свіжий контент із бази (попередньо перевіривши його) й обов'язково оновити все, через що могли зайти.
І окремо про майбутнє: бекап корисний рівно настільки, наскільки він існує і перевірений. Резервні копії мають створюватися автоматично, зберігатися окремо від сайту (щоб шифрувальник чи дефейс їх не зачепили) і хоча б іноді розгортатися на тест, щоб переконатися, що вони робочі.
Як закрити дірку, щоб не повторилося
Вичистити сайт це половина роботи. Якщо не прибрати причину, все повториться. Базовий набір захисту:
- Оновлюйте Joomla і всі розширення вчасно. Більшість зламів 2026 року це не «хитра атака», а вхід через розширення, для якого патч уже вийшов. Видаліть те, чим не користуєтеся: кожне зайве розширення це зайві двері.
- Увімкніть двофакторну автентифікацію для адмін-акаунтів і приберіть очевидні логіни на кшталт admin.
- Налаштуйте права на файли й папки правильно (зазвичай 644 на файли, 755 на папки) і забороніть виконання PHP у папках завантажень (media, images), де його бути не повинно.
- Поставте сайт за Cloudflare чи інший WAF: він відсікає частину автоматичних атак і сканерів ще до того, як вони дійдуть до Joomla.
- Робіть автоматичні бекапи зі зберіганням окремо від сайту і перевіряйте їх.
- Приберіть із сервера сліди розробки: старі копії, тестові скрипти, забуті phpMyAdmin і архіви. Часто саме вони і стають входом.
Коли варто покликати фахівця
Багато з переліченого реально зробити самому, особливо якщо злам помітили рано і є свіжий чистий бекап. Але є ситуації, де зволікання і напівзаходи обходяться дорожче, ніж допомога:
- Шкідник повертається після кожного чищення: значить, пропущено закладку або не закрито первісну дірку.
- Немає чистого бекапу, а на сайті живий контент і замовлення, які не можна втратити.
- Хостинг заблокував акаунт або сайт позначено в Google як «небезпечний», і треба швидко пройти повторну перевірку.
- Дефейс сидить у базі (той самий Helix3 і «AntonKill»), де чищення файлів недостатньо.
- Сайт комерційний, і кожен день простою це втрачені заявки й позиції.
Якщо це ваш випадок, я відновлюю сайти на Joomla після злому під ключ: знаходжу і прибираю шели та редиректи, чищу базу, закриваю вразливість, повертаю сайт у пошук і налаштовую захист, щоб не повторилося. Докладніше про послугу і ціни на сторінці відновлення сайту після злому. Діагностику роблю безкоштовно, ще до початку робіт.
Часті запитання
Як зрозуміти, що сайт на Joomla зламали?
Головні ознаки: редиректи на чужі сайти (особливо з пошуку і з телефону), незнайомі PHP-файли в папках media та images, нові користувачі з правами Super User, скарги хостингу на шкідник, спам-розсилка з сервера і позначка «Цей сайт може бути зламано» в Google. Навіть одна така ознака це привід для повної перевірки.
Що робити насамперед, якщо сайт заражений?
Змініть усі паролі (адмін, хостинг, FTP, база), закрийте сайт у режим обслуговування, збережіть логи і повний бекап «як є» для розбору, видаліть незнайомих адміністраторів і попередьте хостинг. Не відновлюйтеся з бекапу одразу: спочатку треба зрозуміти, через що зайшли, інакше заразять знову.
Чому влітку 2026 року масово ламають сайти на Joomla?
Через серію критичних вразливостей у популярних розширеннях (JCE, SP Page Builder, iCagenda, Page Builder CK) і у фреймворку шаблонів Helix3. Вони дозволяють завантажити і виконати PHP-код без пароля. Експлойти публічні, атаки ведуть боти автоматично, тому під удар потрапляють навіть маленькі сайти.
Чи можна просто видалити вірусний файл, і все?
Майже ніколи. Веб-шел рідко буває один, а доступ часто закріплюють у базі, в .htaccess, у cron і в системних плагінах. Якщо видалити один файл і не закрити вразливість, сайт заразять повторно. Потрібне системне чищення плюс усунення причини.
Чи допоможе відновлення з резервної копії?
Так, якщо копія зроблена до зараження і ви закрили вразливість. Проблема в тому, що злам часто помічають пізно, і свіжі бекапи вже заражені. Тоді беруть стару чисту копію як основу і переносять на неї перевірений свіжий контент, обов'язково оновивши вразливі розширення.
Що таке «Hacked by AntonKill» і чим це небезпечно?
Це масова хвиля дефейсів головної сторінки Joomla-сайтів у 2026 році, яку пов'язують із вразливістю шаблонів Helix3 (CVE-2026-49049). Особливість у тому, що шкідливий код сидить у параметрах шаблона в базі даних, тому чищення самих файлів недостатньо: треба чистити і базу.
Як захистити сайт на Joomla від повторного злому?
Вчасно оновлюйте ядро і розширення, видаляйте невикористовувані, увімкніть двофакторну автентифікацію, налаштуйте права файлів і заборону PHP у папках завантажень, поставте сайт за Cloudflare чи інший WAF і робіть автоматичні бекапи зі зберіганням окремо від сайту.
Скільки коштує відновити сайт після злому?
Залежить від масштабу: іноді достатньо вичистити шели й оновити пару розширень, іноді потрібна повна перезбірка з чистої копії з перенесенням контенту. Я оцінюю після безкоштовної діагностики, коли видно реальний обсяг. Написати можна в Telegram, відповідаю впродовж робочого дня.
Не виходить вичистити сайт самостійно?
Допоможу відновити Joomla після злому: приберу шели та редиректи, закрию дірку, поверну сайт у пошук. Діагностика безкоштовна, відповім упродовж робочого дня.