Найти тему
Skillbox

7 признаков, что ваш сайт легко взломать

Оглавление

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

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

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

Можно получить прямой доступ к компонентам сайта

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

Однако если доступ к этим файлам не закрыть, пользователи смогут зайти на них и поэкспериментировать, чтобы найти лазейки. В крайне плачевных случаях эти компоненты даже получится скачать.

Чтобы обезопаситься, переместите в каталог с компонентами файл .htaccess, содержащий следующую строку:

Deny From All

Теперь их не получится открыть по прямой ссылке, но можно будет подключить через include().

Простой пароль к админке

Если панель администратора вашего сайта находится по адресу /admin.php, а пароль к ней 12345, — вас взломают. И даже если qwerty — взломают. И 12345qwerty тоже не спасет.

-2

Но и более сложный пароль не поможет, если он у вас везде одинаковый. А даже если вы используете разные коды, кто-то может воспользоваться брутфорсом (перебором паролей) — от этого можно спастись, запретив проводить множество попыток входа с одного устройства на протяжении определенного времени.

Нет валидации

HTML5 подарил нам такие замечательные типы input, как email или number. И теперь пользователь не может отправить форму, если ввел некорректные данные.

Вам также будет интересно:
«Современный разработчик учится всю жизнь».
Веб-разработчик: чем занимается и как им стать.
4 способа, как подключить PHP-файл к программе.

Вот только остановит это разве что начинающих взломщиков, потому что с помощью панели разработчика (открывается при нажатии F12) можно изменить код страницы. Заменив email на text в атрибуте поля, хакер сможет без проблем отправить любое значение.

На стороне обработчика все данные должны несколько раз проверяться, иначе велик шанс, что взломщику удастся ввести SQL-инъекцию.

Используются сторонние скрипты и плагины

Если вы используете для сайта скрипты других разработчиков, будьте готовы, что в них будет бэкдор или обыкновенная уязвимость, которую ни вы, ни разработчик скрипта не заметите.

Это касается и тех, кто пользуется CMS, — плагины из непроверенных источников могут нанести вред сайту. А если вы скачиваете премиум-шаблон у пиратов, то риск увеличивается в несколько раз.

Доступна информация о сайте и сервере

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

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

Включено отображение ошибок

Если после релиза сайта вы не отключили отображение ошибок, всем станет известно о ваших багах, а также о том, как их использовать, чтобы обойти защиту.

-3

Поэтому, если появляется ошибка, лучше отлавливать ее и показывать пользователю произвольный текст, а сам рапорт заносить в логи.

Отправка форм методом GET

Отправленные методом GET данные можно без труда перехватить или изменить. В конце концов можно попытаться перегрузить обработчик, отправив множество запросов, превышающих допустимый лимит (4 кб).

Проверьте свой сайт на наличие этих простых, но опасных признаков. Если обнаружили хотя бы один — срочно исправляйте его! Также вы можете записаться на курс по PHP, на котором вас научат писать эффективный и безопасный код.

Курс «PHP-разработчик»
Обширная программа для изучения PHP, состоящая из четырех курсов. Поможет с нуля овладеть популярным языком программирования, устроиться в IT-компанию вашей мечты или стать независимым разработчиком.
Программа курса