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

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

З найбільш поширених загроз сайту ми можемо виділити дві: DDoS-атаки та злом сайту.

Безпека сайту

Злом сайту

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

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

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

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

Використання вразливих технологій

Що вважається вразливою технологією? Будь-яка система може містити вразливості, але доти, доки вони не виявлені, система вважається надійною. Протягом терміну служби версії системи, її розробники працюють над нею та шукають вразливості. Вразливості також шукають і хакери. Дуже часто, при виявленні вразливості їх публікують у загальний доступ. А розробники намагаються усунути вразливість та випустити оновлення. Паралельно, розробники створюють нові версії систем і одночасно може підтримуватися кілька версій. Але завжди настає момент, коли якусь версію перестають підтримувати. Що це означає? Для версії перестають випускати оновлення і в цей момент вона набуває статусу вразливої.

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

Людський фактор

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

Проблема паролів.

Ваш пароль не повинен бути стандартним. Наприклад: password або 123456 тощо.

Бажано мати паролі не менше 12 символів.

Чим більше типів символів використовується у вашому паролі, тим складніше його підібрати. Наприклад: великі літери, маленькі літери, цифри, спеціальні символи.

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

Намагайтеся не зберігати паролі в пам'яті браузера. У браузері паролі зберігаються не в зашифрованому вигляді і при зломі вашого браузера паролі будуть розкриті.

Регулярно оновлюйте ваші паролі.

Захист сайту

Реєстрація облікових записів на третіх осіб.

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

Так ви зможете уникнути ситуації, коли ваш сайт “беруть у заручники” і щось вимагають за передачу прав. А також уникайте поширеної ситуації, коли ніхто не знає, на кого зареєстрований хостинг і ні в кого немає доступів до нього.

Неконтрольована передача доступів.

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

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

Резервні копії

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

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

Як часто потрібно робити резервні копії?

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

У випадку інтернет-магазину рекомендується робити копії щодня, навіть якщо ви не вносите змін, щоб не втратити замовлення.

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

Резервні копії сайту

Зберігання резервних копій

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

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

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

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

Бекапи на хостингу.

Багато хто розраховує на автоматичне створення копій на хостингу і нічого більше не робить. Це велика помилка.

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

На хостингу копії зберігаються до 1 місяця. Існують віруси з таймером, які ніяк не виявляють себе після впровадження, доки всі копії на хостингу вже не будуть зараженими, а потім активуються. Тому необхідно мати на тривалому зберіганні попередні копії.

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

Автоматика на хостингу допомагає вам створювати копії, але зберіганням потрібно займатись додатково.

Навчіться робити бекапи.

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

Використання піратського програмного забезпечення

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

Коли ви плануєте використовувати комерційний софт безкоштовно, варто поставити запитання, а як цей софт став безкоштовним? Що мотивує людей зламувати щось вчиняючи злочин та роздавати це безкоштовно? Це робить хтось із комплексом Робіна Гуда чи це насправді зовсім не безкоштовно, а ви просто ще не знаєте, чим заплатите?

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

У цьому випадку це навіть важко назвати зломом, фактично, ви самі запрошуєте на сайт сторонніх.

Безпека та захист сайту

DDoS-атака

DDoS-атака (distributed denial-of-service - розподілена відмова в обслуговуванні) - це атака на сервер з метою витрачання всіх обчислювальних ресурсів та приведення сервера в стан відмови.

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

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

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

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

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

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

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

Захист від DDoS

Як захиститися від DDoS-атак?

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

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

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

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

Кращий захист від атак - це швидкість роботи сайту та продуктивність сервера.

Якщо час відповіді сервера (з шістьма ядрами) на вашому сайті становить 1 секунду, то для того, щоб забезпечити уповільнення сайту до 10 секунд протягом доби, необхідно забезпечити 60 звернень до сайту на секунду або більше 5 мільйонів звернень на добу. Але якщо час відповіді сервера становить 150 мілісекунд, то для того ж результату знадобиться 400 звернень на секунду або 34,5 мільйона звернень на добу. Чим швидше ваш сайт, тим складніше та дорожче організувати ефективну атаку.


Безпека сайту - це процес, який має стати невід'ємною рутиною вашого бізнесу.