Крок 1

Визначте взлому


1.1 Сканувати свій сайт

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


Щоб сканувати Joomla! для хаків:


Відвідайте веб-сайт SiteCheck.

Клацніть Сканувати веб-сайт.

Якщо сайт заражений, перегляньте попереджувальне повідомлення.

Зверніть увагу на будь-які корисні навантаження та місця (якщо вони доступні).

Зверніть увагу на будь-які попередження про чорний список.


1.2 - Перевірте змінені файли

Нові або нещодавно змінені файли можуть бути частиною злому. Ваша основна Joomla! Файли також слід перевірити на наявність ушкоджень зловмисного програмного забезпечення.


Найшвидший спосіб підтвердити цілісність Вашої Joomla! Основні файли використовуються командою diff у терміналі. Якщо вам не зручно користуватися командним рядком, ви можете вручну перевірити свої файли через SFTP.


Ви можете знайти всіх Joomla! версії на GitHub. За допомогою SSH-терміналу ви можете завантажити Joomla! локально. Наступні команди використовують версію 3.6.4 як приклад чистих файлів та public_html як приклад того, де ваш Joomla! установка знаходиться.


Щоб перевірити цілісність файлових файлів за допомогою команд SSH:


$ mkdir joomla-3.6.4


$ cd joomla-3.6.4


$ wget https://github.com/joomla/joomla-cms/releases/download/3.6.4/Joomla_3.6.4-Stable-Full_Package.tar.gz


$ tar -zxvf Joomla_3.6.4-Stable-Full_Package.tar.gz


$ diff -r joomla-3.6.4 ./public_html


Кінцева команда diff порівняє чисту Joomla! файли з вашою установкою.


Щоб вручну перевірити нещодавно змінені файли:


Увійдіть у свій сервер за допомогою FTP-клієнта або SSH-терміналу.

Якщо ви використовуєте SSH, ви можете перелічити всі файли, змінені за останні 15 днів за допомогою цієї команди:

$ find ./ -тип f -mtime -15

Якщо ви використовуєте SFTP, перегляньте останню змінену колонку дати для всіх файлів на сервері.

Зверніть увагу на файли, які нещодавно були змінені.


1.3 Аудит журналів користувачів

Перевірте свою Joomla! облікові записи користувачів, особливо адміністратори та супер-адміністратори.


Щоб перевірити наявність зловмисних користувачів у Joomla !:


Увійдіть у свій Joomla! Область адміністратора.

Клацніть Користувачі в пункті меню та виберіть Керувати.

Перегляньте перелік, особливо список із недавньою датою реєстрації.

Видаліть незнайомих користувачів, створених хакерами.

Перевірте дату останнього відвідування законних користувачів.

Підтвердьте будь-яких користувачів, які ввійшли в систему в підозрілий час.

Ви також можете проаналізувати журнали ваших серверів, якщо ви знаєте, де вони зберігаються та як шукати запити до області адміністратора Joomla!

Користувачі, які входять у незвичний час або в географічні місця, можуть бути порушені.


1.4 - Перевірте сторінки діагностики

Якщо ваша Джомла! сайт потрапив у чорний список від Google або інших органів безпеки веб-сайтів, ви можете використовувати їх діагностичні інструменти для перевірки стану безпеки Вашої Joomla! веб-сайт.


Щоб перевірити звіт про прозорість Google:


Відвідайте веб-сайт про статус безпечного перегляду.

Введіть URL-адресу свого веб-сайту та виконайте пошук.

На цій сторінці ви можете перевірити:

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

Деталі тестування: остання перевірка Google, яка виявила зловмисне програмне забезпечення.

Приклад діагностичних результатів


приклад результатів діагностики скріншот

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


Центр веб-майстрів Google

Bing Інструменти для веб-майстрів

Яндекс для веб-майстрів

Нортон SafeWeb


Крок 2

Виправити хак


Тепер, коли у вас є інформація про потенційно порушені користувачі та зловмисне програмне забезпечення, ви можете видалити зловмисне програмне забезпечення з Joomla! і відновити веб-сайт у чистому стані.


Підказка:


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


2.1 - Очистити зламані файли веб-сайтів

Якщо на будь-яких скануваннях або сторінках діагностики виявлено зловмисні домени або корисні навантаження, ви можете почати з пошуку цих файлів на Joomla! веб-сервер. Порівнюючи заражені файли з відомими хорошими файлами (з офіційних джерел або надійно очищених резервних копій), ви можете виявити і видалити шкідливі зміни.


Щоб вручну видалити зараження зловмисним програмним забезпеченням зі своєї Joomla! файли:


Увійдіть у свій сервер за допомогою SFTP або SSH.

Створіть резервну копію файлів сайту перед внесенням змін.

Шукайте у своїх файлах інформацію про шкідливі домени чи корисні вантажі, які ви відзначили.

Визначте нещодавно змінені файли та підтвердьте, чи є вони законними.

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

Відновлення або порівняння підозрілих файлів із чистими резервними копіями чи офіційними джерелами.

Видаліть будь-який підозрілий чи незнайомий код із власних файлів.

Тест на перевірку сайту все ще працює після змін.

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


2.2 Очищення зламаних таблиць баз даних

Щоб видалити зловмисне програмне забезпечення з вашої Joomla! базі даних, вам потрібно відкрити панель адміністратора бази даних, наприклад PHPMyAdmin. Ви також можете використовувати такі інструменти, як Search-Replace-DB або Adminer.


Щоб вручну видалити зараження шкідливим програмним забезпеченням від Joomla! таблиці баз даних:


Увійдіть у панель адміністратора вашої бази даних.

Зробіть резервну копію бази даних перед внесенням змін.

Шукайте підозрілий вміст (тобто спам-ключові слова, посилання).

Відкрийте таблицю, яка містить підозрілий вміст.

Видаліть будь-який підозрілий вміст вручну.

Тест на перевірку сайту все ще працює після змін.

Видаліть будь-які завантажені вами засоби доступу до бази даних.

Ви можете вручну шукати свою Joomla! база даних для поширених зловмисних функцій PHP, таких як eval, base64_decode, gzinflate, preg_replace, str_replace тощо. Зауважте, що ці функції також використовуються Joomla! розширення з законних причин, тому не забудьте протестувати зміни або отримати допомогу, щоб випадково не зламати свій сайт.


2.3 - Захищені облікові записи користувачів

Хакери завжди залишають спосіб повернутися на ваш сайт. Найчастіше ми знаходимо безліч задніх куточків різних типів у злому Joomla! сайти.


На задньому плані зазвичай вбудовані файли, названі так само, як законні файли в офіційному Joomla! Рамка, але розташована в неправильних каталогах. Зловмисники також можуть вводити на задній план такі файли, як index.php та каталоги, як / компоненти, / модулі та / шаблони.


На задньому плані зазвичай включають такі функції PHP:

base64

str_rot13

gzuncompress

gzinflate

eval

exec

create_function

location.href

curl_exec

stream

system

assert

stripslashes

preg_replace (with /e/)

move_uploaded_file

strrev

file_get_contents

encodeuri

wget

Щоб видалити задню поверхню, порівнявши файли:


Підтвердьте свою Joomla! версія, натиснувши меню Система та відкривши Інформацію про систему

Завантажте ту саму версію відомих хороших основних файлів з офіційної версії Joomla! сховище.

Увійдіть у свій сервер за допомогою SFTP або SSH.

Створіть резервну копію файлів сайту перед внесенням змін.

У своєму FTP-клієнті порівняйте свій сайт із відомим хорошим завантаженням.

Дослідіть будь-які нові файли на вашому сервері, які не відповідають відомим хорошим файлам.

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


приклад сканування результатів скріншот

Більшість зловмисних кодів, які ми бачимо, використовують певну форму кодування для запобігання виявленню. Крім компонентів преміум-класу, які використовують кодування для захисту свого механізму аутентифікації, кодування в офіційній Joomla дуже рідко! сховище.


Надзвичайно важливо, щоб усі закриті куточки були закриті для успішного очищення Joomla! зламати, інакше ваш сайт буде швидко заражений.


2.4 - Виправлення попереджень про зловмисне програмне забезпечення

Якщо вас внесли в чорний список від Google, McAfee, Yandex (або будь-якого іншого органу веб-спаму), ви можете надіслати запит на перевірку після виправлення злому. Зараз Google обмежує повторних порушників одним запитом на перегляд кожні 30 днів. Будьте впевнені, що ваш сайт чистий, перш ніж вимагати перегляду!


Щоб видалити попередження зловмисного програмного забезпечення на своєму веб-сайті:


Зателефонуйте у вашу хостинг-компанію та попросіть її зняти призупинення.

Можливо, вам доведеться надати детальну інформацію про те, як ви видалили зловмисне програмне забезпечення.

Заповніть форму запиту на огляд для кожного органу, що здійснює чорний список.

тобто. Пошукова консоль Google, McAfee SiteAdvisor, веб-майстер Яндекс.

Процес огляду може зайняти кілька днів.


Крок 3

Пост-хак


На цьому останньому кроці ви дізнаєтесь, як виправити проблеми, які викликали Joomla! бути взламаним в першу чергу. Ви також виконаєте необхідні кроки для підвищення безпеки Вашої Joomla! сайт.


3.1 - Оновлення та скидання

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


Оновіть Joomla! Основні та розширення


Оновіть усі Joomla! програмне забезпечення, включаючи основні файли, компоненти, шаблони, модулі та плагіни.


Ви також повинні перевірити свої розширення на наявність відомих уразливостей за допомогою Joomla! Список вразливих розширень


Щоб перевірити та оновити Joomla! розширення:


Переконайтеся, що у вас є нещодавнє резервне копіювання вашого сайту.

Увійдіть у свій Joomla! Область адміністратора.

Клацніть Розширення в пункті меню та виберіть Керувати.

На бічній панелі натисніть Оновити.

Перегляньте наявні оновлення та застосуйте їх.

Видаліть усі розширення, які містять відомі вразливості.


Joomla! 3.x є найбільш стабільними основними версіями, оскільки вони все ще активно розробляються. Користувачі на гілках 1.x та 2.x повинні рішуче розглянути можливість переходу до 3.x та оновлювати основні файли.


Якщо ви вручну оновлюєте основні файли, ви можете сміливо видаляти каталоги, які є частиною офіційного Joomla! фреймворку (адміністратор, компоненти тощо), а потім вручну відновити ті самі основні каталоги та компоненти.


Щоб перевірити та оновити Joomla! основні файли:


Переконайтеся, що у вас є нещодавнє резервне копіювання вашого сайту.

Увійдіть у свій Joomla! Область адміністратора.

Клацніть Система в пункті меню та виберіть Joomla! Оновлення.

Натисніть кнопку Перевірити оновлення.

Перегляньте доступні оновлення для своєї Joomla! версія.

Натисніть кнопку Перевстановити основні файли Joomla.

Користувачам у відділенні 1.x настійно рекомендується оновити до 3.x, слідуючи за Joomla! Довідник з міграції документів.


Якщо на першому кроці SiteCheck виявив інше застаріле програмне забезпечення на вашому сервері (наприклад, Apache, cPanel, PHP), вам слід оновити їх, щоб гарантувати наявність будь-яких доступних патчів безпеки.


Скидання облікових даних користувачів


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


Щоб скинути паролі для Joomla! акаунти користувачів:


Увійдіть у свій Joomla! веб-сайт.

Клацніть пункт меню Користувачі.

Відкрийте кожен обліковий запис користувача.

Змінення пароля користувача.

Повторіть для кожного користувача на вашому сайті.

Ви повинні зменшити кількість облікових записів адміністраторів та супер-адміністраторів для Joomla !, та всіх ваших веб-сайтів. Практикуйте концепцію найменш пільгових. Надайте людям доступ, який їм потрібен, щоб виконувати необхідну роботу.


Joomla! поставляється із вбудованою двофакторною автентифікацією на акаунтах користувачів.


Щоб увімкнути 2FA на своїй Joomla! акаунти користувачів:


Увійдіть у свій Joomla! веб-сайт.

Клацніть пункт меню Користувачі.

Відкрийте свій обліковий запис користувача.

Перейдіть на вкладку Двофакторна автентифікація.

Виконайте кроки, щоб увімкнути 2FA.

Попросіть кожного користувача повторити цей процес.

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


3.2 - Встановити резервні копії

Резервні копії функціонують як захисна сітка. Тепер, що ваш Joomla! веб-сайт чистий, і ви зробили кілька важливих кроків після події, зробіть резервну копію! Хороша стратегія резервного копіювання є основою хорошої позиції безпеки.


Ось кілька порад, які допоможуть вам створити резервні копії веб-сайтів:


Розташування


Магазин Joomla! створює резервні копії в місці, яке не знаходиться. Ніколи не зберігайте резервні копії (або старі версії) на вашому сервері; їх можна зламати і використовувати для компрометації вашого реального сайту.


Автоматичний


В ідеалі ваше резервне рішення має працювати автоматично з частотою, що відповідає потребам вашого веб-сайту.


Надмірність


Сертифікати EV вимагають ще більше документації для сертифікаційного органу для підтвердження організації. Відвідувачі побачать назву компанії всередині адресного рядка (крім натискання значка блокування).


Тестування


Спробуйте відновити процедуру, щоб правильно підтвердити функції веб-сайту.


Типи файлів


Деякі рішення резервного копіювання виключають певні типи файлів, такі як відео та архіви.


3.3 - Сканування комп'ютера

У всіх є Joomla! користувачі виконують сканування за допомогою надійної антивірусної програми на своїх операційних системах.


Joomla! може бути порушено, якщо користувач із зараженим комп'ютером має доступ до інформаційної панелі. Деякі інфекції призначені для переходу з комп'ютера в текстові редактори або FTP-клієнти.


3.4 - Захистіть свій сайт: Брандмауер веб-сайту

Ви можете загартувати свою Joomla! сайт, обмеживши дозволи файлів та запровадивши власні правила .htaccess. Рекомендуємо переглянути Joomla! Документи безпеки для отримання додаткової інформації.


Кількість уразливих місць, якими експлуатуються нападники, зростає з кожним днем. Намагатися йти в ногу є складним завданням для адміністраторів. Брандмауери веб-сайтів були винайдені для забезпечення системи захисту периметра навколо вашого веб-сайту.


Переваги використання брандмауера веб-сайту:


1. Запобігати майбутньому злому


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


2. Оновлення віртуальної безпеки


Хакери швидко використовують вразливості в плагінах і темах, і невідомі завжди з'являються (називаються нульовими днями). Хороший брандмауер веб-сайту заклеїть ваші отвори в програмному забезпеченні веб-сайту, навіть якщо ви не застосували оновлення безпеки.


3. Блок грубої атаки


Брандмауер веб-сайту повинен перешкоджати будь-кому доступу до вашої сторінки wp-admin або wp-login, якщо їх там не передбачається, переконайтеся, що вони не можуть використовувати автоматизацію грубої сили, щоб відгадати ваш пароль.


4. Пом'якшити DDoS Attack


Поширені атаки відмови в сервісі намагаються перевантажити ресурси вашого сервера чи додатків. Виявляючи та блокуючи всі типи DDoS-атак, брандмауер веб-сайту гарантує, що ваш сайт доступний, якщо на вас напали великі обсяги фейкових відвідувань.


5. Оптимізація продуктивності


Більшість WAF пропонують кешування для більшої швидкості глобальної сторінки. Це задовольняє відвідувачів і, як показується, знижує показник відмов, покращуючи привабливість веб-сайтів, конверсії та рейтинги пошукових систем.


Ми пропонуємо всі ці функції за допомогою брандмауера Sucuri.