Защита сайт от взлома злоумышленниками

Защита сайта от хакеров
Способы защиты от взлома сайта хакерами

Непрерывная работа системы управления контентом вашего сайта основана на безопасности передаваемых данных от сайта пользователю и обратно. Если в ваших скриптах есть потенциальные дыры, то сайт находится под угрозой взлома и модификации исходных данных. В результате посетители сайта могут заразить свои компьютеры вирусами, получить какие-то «левые» данные с сайта, потерять доступ к аккаунту, передать номер кредитной карточки и cvv2 код злоумышленнику… Продолжать можно бесконечно…

Приступаем к рассмотрению способов защиты сайта от потенциальных хакеров.

 Проверка входящих данных

Для обеспечения безопасности сайта необходимо использовать защищенные, проверенные на дыры скрипты. Один из способов закрытия потенциальных дыр – это валидация данных. Другими словами валидация – это проверка входящих данных на правильность. Например:

  • Почтовый индекс в России содержит 6 цифр.
  • Электронная почта содержит знак @ , а затем доменное имя с минимум одной точкой (разделитель домена 2-го уровня от домена 1-го уровня).
  • Номер телефона в международном формате может начинаться либо с +7 , либо с 8 и затем следует 10 или 11 цифр.

Отсутствии валидации ведет к взлому сайта хакерами либо к хранению неверных данных в вашей базе. Представьте вы владелец интернет магазина и продаете товары по всей России. Вам пришел заказ и указан номер контактного телефона, но без кода города. Если нет других средств связи с покупателем, то данный заказ обречен.

При выполнении валидации данных с помощью скриптов на стороне сервера необходимо всегда проверять входящие данные из GET, POST, REQUEST запросов, данные в Cookie.

Валидация данных с помощью java script – это первый, простой шаг на пути к безопасному сайту, но он легко обходится продвинутыми программистами и хакерами.

Как отключить XSS атаки на сайт

XSS – это межсайтовый скриптинг. Способ атаки основан на вставке чужого опасного кода на уязвимые страницы вашего сайта. Обычно таким методом передают данные из форм комментариев, форм обратной связи. Если не проверять данные, то введенные данные могут содержать java script или другие виды скриптов. Обычно, сначала данные сохраняются в базу, а затем выводятся на какой-то странице сайта.

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

Некоторое время назад в сети продавались базы xss сайтов, на которых можно было установить ссылку с нужным анкором для продвижения сайта по ключевому запросу и увеличения его ТИЦ.

Для защиты от xss атак следует применять php функции strip_tags() при сохранении данных в базу и htmlentities() при выводе содержимого на сайт.

CSRF атаки и защита от уязвимости

CSRF уязвимость – это подделка межсайтовых запросов. Взломщик различными способами пытается получить нужную ему информацию о жертве. Для этого обычно используются ГЕТ запросы, где с их помощью выполняется оплата, либо какие-то другие переводы.

Пусть наш скрипт переводит деньги с одного аккаунта на вашем сайте на другой. С помощью вот такого адреса: /send-money-to.php?id=31 . Где 31 – это идентификатор пользователя, которому будут переведены деньги.

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

  • Самый простой способ защиты – это применение ПОСТ запросов с последующей валидацией и фильтрацией.
  • Для каждого посетителя можно формировать специальную уникальную подпись в ссылках и проверять ее на предмет верности.

Это лишь первая часть от всей статьи. Ожидайте продолжения.

VN:F [1.9.22_1171]
Rating: 3.3/5 (3 votes cast)
Защита сайт от взлома злоумышленниками, 3.3 out of 5 based on 3 ratings

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*