Способы защита от возможных вариантов взлома сайта
Многие системы управления сайтами, такие как Drupal, Wordpress, Joomla, Opencart и некие другие имеют по умолчанию весьма неплохие меры защиты. Но даже в них, периодически, проскальзываю дыры, которые необходимо как можно скорее залатать.
Основной проблемой взлома сайта, в дальнейшем становиться проседание сайта в поисковой выдаче. То есть все Ваши приложение усилия для продвижения сайта окажутся совершенно бесполезными. Сайт сможет вернуться в топ выдачи, только лишь спустя некоторое время, после устранения всех недочетов и возвращение его к нормальному функционированию.
Рассмотрим такие варианты взлома сайта, как при помощи SQL инъекции и файловой системы, а также, конечно, варианты защиты от таких посягательств на ресурс.
SQL инъекции и их предотвращение
Зачастую в адресной строке ресурса, размещаются параметры, которые тем или оным способом влияют на содержание страницы. К примеру, такие параметры могут быть значением, которое вставляется в mysql запрос, иначе говоря, обращение к базе данных. К примеру, ссылка такого вида: resyrs.ru/index.php?pageid=10 сообщает о том, что необходимо выбрать из определенной таблицы строку с идентификатором 10.
Взломщик же, в свою очередь может что-то подправить в адресной строке и заиметь дополнительную информацию, будь то пароли, логины, либо же вообще удалить базы данных, или еще что хуже заполучить полное управление Вашим сайтом.
При помощи небольшого действия можно определить, возможна ли mysql инъекция на сайте. Необходимо вместо resyrs.ru/index.php?pageid=10 написать resyrs.ru/index.php?pageid=9+1. И тогда смотреть, если параметр pageid не проходит фильтр, то перед выполнением sql инъекции 9+1 сложится. В итоге страница вновь обретет вид с pageid=10.
Когда же взору предоставляется страница, отличающаяся по параметру pageid=10, то это значит, что входной параметр подлежит проверке. Но, не зная достоверного метода проверки параметров сайта, подлежат ли фильтру все лишние символы, некая угроза взлома остается.
Защита от mysql инъекций
Защита от mysql инъекций – это определенная фильтрация используемых в mysql запросе параметров, а также приведение этих параметров к определенному нужному виду. Вот, к примеру, вышеприведенный пример дает нам стопроцентное понимание того, что значение pageid должно быть числом, то есть состоять только лишь из цифр.
Поэтому перед выполнением mysql запроса необходимо провести проверку, является ли параметр числом. Если же оказывается, что нет, то проверка должна показать ошибку и привести нужный параметр к числовому значению.
Необходимо быть внимательным и аккуратным, потому что только лишь тщательно проведенная проверка вводных данных и их фильтрация способна защитить от mysql инъекций. В помощь себе можно воспользоваться уже разработанными классами для работы с базами данных.
Защита файловых данных веб сервера
Скрипты, которые расположены на стороне веб сервера, оставляют за собой право выполнять любые действия с папками и файлами. Это говорит о том, что потенциальный вредитель может воспользоваться уже существующими скриптами, либо же загрузить свои и выполнить их.
Основными методами защиты здесь является ограниченный доступ к файлам и папкам. В папках Linux систем, к примеру, по умолчанию ставятся стандартные права доступа (CHMOD) 64, для файлов также существует стандарт – 755.
Когда Ваш скрипт делает, в зависимости от параметров, подключение или получение данных от самых разнообразных файлов, то эти параметры в обязательном порядке необходимо профильтровать. В ином же случае, хакер сможет получить частичный, либо даже максимально полный доступ ко всей файловой системе ресурса.
Поэтому дабы защититься от хакерских атак и взломов, а также обеспечить наивысшие места Вашему сайту в топ поисковой выдачи, необходимо обязательно проводить проверку, валидацию, абсолютно всех вводимых данных и параметров, которые поступают и вводятся от клиентов и посетителей в веб формы.
Источник http://avtonou.ru/istoriya-vsemirnoj-literatury-2.html