Боремося зі шкідливим кодом на сайті під керуванням joomla

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

Профілактичні заходи проти злому сайту на Joomla

Заходи з видалення шкідливого коду на сайті і виявлення вразливостей

В ідеалі пошуком вразливостей на вашому сайті (в разі його злому і зараження шкідливим кодом) повинен займатися фахівець з безпеки, але якщо немає можливості звернутися до такого фахівця, можна спробувати знайти вразливість, якою скористався зловмисник, самостійно. Звичайно, 100% -ної гарантії в цьому випадку немає, але можна спробувати це зробити.

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

Зазвичай імена шкідливих файлів маскуються під нормальні файли CMS. Наприклад, в моєму випадку були виявлено файли з іменами language.php. jm_license.php. php_ini.php і інші. Однак, ви можете і не знайти їх, тому що, як правило, ці файли "ховаються" глибше в структурі сайту. Наприклад, в папці зі стилями шаблону сайту або в папках з файлами відображення (виду, наприклад - /components/com_mailto/views/interface.php) будь-якого модуля або компонента.

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

У будь-якому випадку, яким би способом ви не дізналися про цю прикрість, необхідно вжити таких заходів:

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

Ознайомившись з ними ви зможете знайти або виключити доступ зловмисника до файлів вашого сайту через FTP або SSH.

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

Можлива інша ситуація: після виявлення і видалення файлів ви змінили пароль доступу до адмінки сайту і логін адміністратора. Після цього продовжуючи стежити за логами доступу, виявили часте звертання до адміністративної частини сайту (файл - /administrator/index.php) методами GET і POST.

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

Зверніть увагу, що через адмін-панель сайту залити файли можна тільки в папку з картинками (/ images /), а також в папки з шаблонами сайту (/ templates / імя_шаблона /).

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

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

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

Пропоную наступні послуги:

  • Верстка шаблону сайту з дизайн-макету для CMS «1С-Бітрікс Управління сайтом» і CMS "Joomla"
  • Створення форм різної складності (зворотний зв'язок, анкети і тп) для зазначених CMS
  • Налагодження та кастомизация компонентів і модулів для зазначених CMS
  • Доопрацювання модулів і компонентів для зазначених CMS, додавання нестандартного функціонала
  • Розробка Лендінзі (landing-pages)

За все про надання через форму зворотного зв'язку

Пропоную Вашій увазі: