Logo2017
ukenplru

Сайти

Створенн сайтів: сайт-візитка, сайт-каталог, лендінг пейдж, корпоративний сайт, інформаційний портал, інтернет-магазин і ін..

Копірайтинг

Створення публікацій для сайтів.

Просування

СЕО-оптимізація сайтів, реєстрація в пошукових системах, контекстна реклама і ін...

Мультимедіа

Фото, відео, аудіо для сайтів.

Дана публікація буде корисною тим, хто користується у своїй роботі послугами CMS і зокрема Joomla. Нещодавно деякі сайти наших клієнтів зазнали атак, після чого Yandex їх заблокував, виставивши попередження, що «на даному сайті виявлено шкідливий код і він може  зашкодити Вашому комп’ютеру». У даній публікації ми не будемо заглиблюватися у тонкощі програмування та кодів, а  спробуємо поділитися власним досвідом з користувачами, які посередньо обізнані у функціонуванні CMS.  То ж як вдалося побороти цього ворога?

І так, все розпочалося з того, що в один безхмарний день Yandexподарував нам неочікуваний сюрприз. Перше, що спало на думку -  відновити останню  резервну копію. Проте на нашому експериментальному сайті таку було зроблено ще місяць тому, а за той час на сайті зроблено чимало змін. Тож дана операція виявилась вкрай небажана. Наступним кроком пробуємо з’ясувати чого все таки від нас хоче той дядько Yandex. Заходимо в «Вебмастер» на цьому порталі, відкриваємо розділ «Безпека» де нашій увазі представлено перелік інфікованих посилань з приміткою «поведенчиский анализ». Перечитавши Довідку розуміємо, що маємо справу з якимось незрозумілим навіть самому Яндексу кодом, і даний портал окрім декларування проблеми нам нічого не допоможе. Якби це був стандартний вірус, той же Yandex видав би значно більше інформації, яка б дала нам можливість зрозуміти звідкіля розпочинається інфікування. У нашому ж випадку ми залишились без відповідей.

Що далі? Вирішуємо розпочати з найпростішого: перевірки сайту антивірусом на сервері і онлайн-антивірусами, яких в мережі є чимало. І о диво, жоден з них не виявив ніяких проблем. Навіть Googleне висунув жодних претензій. А Yandex далі продовжував настоювати на своєму.

У даній ситуації можна було б закрити очі на проблему, та все ж недоступність сайту негативно впливав на імідж, як сторінки так і компанії. Тому боротьба триває. Тим часом ще два сайт з подібними діагнозами потрапив у поле зору Yandex. Що далі робити? Стало зрозуміло, що без втручання і розбору кодів не обійдеться. Декілька простих маніпуляцій все ж доведеться зробити.

Спочатку переглядаємо поради фахівців стараючись оминати складні фрагменти коду. Після десятка публікацій і дописів на форумах вимальовується наступна картина. Джерел взлому є безліч, проте най вірогіднішими ознаками взлому чи інфекції на сайті є наявність <iframe> на початку сторінки.  У цих «iframe» розміщується щось незрозуміле, чи кодоване, і воно не відображається у дизайні сторінок. В одному з сайтів справді виявили такий фрагмент коду. Після аналізу виявили, що його продукує один з компонентів сайту. Після видалення компоненту, пропав «iframe» і Yandex нарешті розблокував доступ до цього сайту.

Та рухаємось далі. Читаючи дописи на форумах можна виявити ще низку тегів у тілі сайту, які можуть становити загрозу. Щоб не перебирати і не відшуковувати кожен з тегів на кожному сайті, вирішили піти іншим простішим шляхом. Ми відкрили у редакторах файли index.php шаблонів інфікованих сайтів і порівняли їх з файлами index.php шаблонів які зберігалися на локальному сервері ще з часів розробки сайтів. Так от в одному з трьох випадків файли суттєво відрізнялися. Інфікований  файл index.php наскрізь був пронизаний невідомими і нелогічними тегами скриптами. Ось і попався шкідливий код. Тут усе просто. Ми замінили існуючий файл старішим  і знову Yandex розблоковує сторінку.

 У третьому випадку усе виявилось куди складніше. Yandex постійно висував претензії до посилань, яких вже не існувало на сайті. Проаналізувавши посилання почали згадувати історію сайту. Спочатку він був на Joomla 1.5, далі відбулась міграція на Joomla 2.5. Чомусь в посиланні фігурують компоненти і плагіни, які використовувались у старій версії Joomla. Отож висновок: десь в коді приховані хвости старої історії. Спочатку видалили кеш – не допомогло. Стало очевидним, що хвости ховаються в базі даних. Справді аж там було знайдено кілька десятків неіснуючих посилань на які скаржився Yandex. Їх ліквідація повернула сайт до життя.

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

  1. Під час експлуатації сайту не лінуйтеся робити резервні копії. Загалом фахівці радять перед кожною серйозною зміною робити бекап. А загалом не менше ніж раз в місяць. До речі це найпростіший і найнадійніший спосіб боротьби  з інфекцією.
  2. Найчастіше нас ламають через дірки, які ми самі робимо для хакерів. Річ йде про всілякі сторонні коди інформерів, банерів, лічильників тощо. Перед тим як ставити такі коди до себе на сайт поцікавтеся репутацією їх авторів чи власників.Для прикладу, такий, на перший погляд, безневинний компонент, як «Коментарі» уже є непоганим доступом чи воротами для хакерів до вашого сайту. З допомогою SQL-інєкції зловмисники гарантують вам безсонні ночі.
  3. Паралельно з вищевикладеними заходами виховуймо в собі культуру створення паролів. Вони мають бути достатньо складними, складатися комбіновано з літер та чисел. Ніколи не зберігаємо паролі  у фтп-менеджерах, у памяті браузерів чи інших доступних для хакерів місцях. І нарешті час від часу проводимо заміни паролей.
  4. І нарешті стараємось слідкувати за оновленням CMS і оновляємось завжди до останьої версії. Кожна нова версія враховує також промахи в безпеці системи.
  5. Якщо убезпечитись не вдалося і ви все таки потрапили у халепу, насамперед  зрозумійте з чим маєте справу: це вірус чи шкідливий код невідомого походження. У цьому розібратися допоможуть онлайн-антивіруси та сканери пошукових порталів на кшталт Googlе чиYandex. Встановивши причину, місце та джерело інфекції, робимо усе щоб ліквідувати вогнище неприємностей…

У даній публікації ми розглянули загальні причини виникнення неприємностей пов’язаних зі шкідливим кодом та як розпочати з цим боротьбу. Звичайно це лише вершина айсбергу і засобів злому, як і засобів безпеки є значно більше. Варто окремо зупинитися на темі прав доступу до папок та файлів на сервері, можна детальніше увагу сконцентрувати на вивчені модулів, плагінів та компонентів, які створені  убезпечити ваш сайт. Проте, нажаль, як і усе в світі, способи наробити шкоди еволюціонують, тому поради та засоби є актуальними лише у якийсь невеликий відрізок часу. Та все ж сподіваємось наш досвід стане все таки для когось корисним…

Контакти

+38 096 814 02 84

+38 067 794 80 61

Зателефонуйте мені

Неверный ввод
Невірно вказані дані. Впмшіть лише цифри.
Невірно вказані символи
Free visitor tracking, live stats, counter, conversions for Joomla, Wordpress, Drupal, Magento and Prestashop

Яндекс-метрика