Створюємо цифрові рішення, які працюють на бізнес
Про те, що сайт зламали, власник зазвичай дізнається останнім. Спершу Google позначає ресурс як небезпечний, потім хостинг блокує акаунт за розсилку спаму, а вже потім хтось із клієнтів пише: «у вас там реклама казино вискакує».
Найнеприємніше в цій історії те, що більшість заражень можна було помітити раніше — просто ніхто не дивився. Нижче — перевірка, яка займає десять хвилин і не потребує доступу до сервера, а також порядок дій, якщо зараження вже сталося.
Забудьте про хакера, який цілеспрямовано атакує саме вас. У 95% випадків усе прозаїчніше: боти безперервно обходять інтернет і перевіряють сайти на відомі вразливості. Знайшли застарілий плагін — залили шкідливий код. Далі сайт використовують не проти вас, а як ресурс: для розсилки спаму, редиректу відвідувачів на партнерські сторінки або прихованого майнінгу.
Три найчастіші двері, через які заходять:
Відкрийте перевірку сайту на віруси й вставте адресу. Інструмент аналізує код головної сторінки на характерні ознаки зараження:
_0x4f2a — код навмисно зроблений нечитабельним;window.location.Важливо розуміти межі такої перевірки. Ми бачимо лише те, що віддається ззовні. Шкідливий код може ховатися у файлах на сервері, у базі даних або показуватися вибірково — лише пошуковим роботам чи відвідувачам з мобільних, щоб власник нічого не помітив. Тому чистий результат означає «явних ознак немає», а не «сайт стовідсотково чистий».
Це те, що ми знаходимо частіше за віруси, і що дає зловмиснику більше, ніж будь-який злам.
Той самий інструмент перевіряє доступність типових адрес. Найнебезпечніші дві:
Файл .env — у ньому зазвичай лежать паролі до бази даних, ключі платіжних систем і токени API у відкритому вигляді. Якщо він відкривається за прямим посиланням, ламати нічого не треба: людина просто відкриває адресу й читає ваші ключі.
Тека .git/config — через неї можна відновити весь вихідний код сайту разом з історією змін. А в історії часто лежать паролі, які колись закомітили, а потім видалили — з робочої копії вони зникли, з історії ні.
Крім них перевіряються wp-config.php.bak, backup.zip, dump.sql, phpinfo.php і лістинг тек. Кожен із цих файлів — окрема історія про те, як «тимчасово поклав і забув».
Якщо щось знайшлося, закривайте негайно на рівні вебсервера, а не просто перейменовуйте: боти перебирають і варіанти імен.
Перевірка безпечних заголовків показує, які захисні механізми ввімкнені. Найважливіші чотири:
| Заголовок | Від чого захищає |
| HSTS | примушує браузер завжди йти через https, навіть якщо хтось підмінив посилання |
| X-Frame-Options | не дає вбудувати ваш сайт у чужий iframe і красти кліки |
| X-Content-Type-Options | не дає браузеру «здогадуватись» про тип файлу й виконувати картинку як скрипт |
| CSP | перелічує, звідки дозволено вантажити скрипти — найсильніший захист від впровадженого коду |
Перші три вмикаються кількома рядками в конфігурації сервера й нічого не ламають. CSP потужніший, але потребує акуратності: занадто суворе правило вимкне вашу ж аналітику або чат. Починайте з режиму лише-звітів, подивіться, що потрапляє в лог, і лише потім вмикайте блокування.
Найбанальніша аварія з усіх: сертифікат завершився, і браузери показують відвідувачам червону сторінку попередження. Сайт живий, але заходити на нього ніхто не буде.
Перевірка SSL показує емітента й кількість днів до завершення. Поставте нагадування за два тижні до дати — навіть автоматичне оновлення Let's Encrypt іноді ламається після зміни конфігурації сервера, і про це дізнаються вже від клієнтів.
Найслабша ланка майже завжди тут. Мінімум, який варто зробити:
admin — саме його перебирають боти в першу чергу. Створіть нового адміністратора з іншим іменем, а старий видаліть.Порядок дій має значення. Найпоширеніша помилка — почати з чистки файлів, залишивши зловмиснику доступ: через день усе повертається.
Якщо своїми силами не виходить — це нормальна ситуація для звернення до фахівців. Самостійна чистка зараженого сайту без досвіду часто закінчується тим, що частину коду видаляють разом із робочим функціоналом.
Це не забирає часу, зате знаходить проблему до того, як її знайде Google. Решта перевірок — швидкість, індексація, пошта — зібрані в нашому каталозі з 43 інструментів.
Якщо сайт уже поводиться дивно, а розібратися самостійно складно — напишіть нам, подивимось.
Давайте разом створимо щось дивовижне Залиште номер — передзвонимо протягом 15 хвилин у робочий час.
Зателефонуємо найближчим часом.