Другие статьи

Цель нашей работы - изучение аминокислотного и минерального состава травы чертополоха поникшего
2010

Слово «этика» произошло от греческого «ethos», что в переводе означает обычай, нрав. Нравы и обычаи наших предков и составляли их нравственность, общепринятые нормы поведения.
2010

Артериальная гипертензия (АГ) является важнейшей медико-социальной проблемой. У 30% взрослого населения развитых стран мира определяется повышенный уровень артериального давления (АД) и у 12-15 % - наблюдается стойкая артериальная гипертензия
2010

Целью нашего исследования явилось определение эффективности применения препарата «Гинолакт» для лечения ВД у беременных.
2010

Целью нашего исследования явилось изучение эффективности и безопасности препарата лазолван 30мг у амбулаторных больных с ХОБЛ.
2010

Деформирующий остеоартроз (ДОА) в настоящее время является наиболее распространенным дегенеративно-дистрофическим заболеванием суставов, которым страдают не менее 20% населения земного шара.
2010

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

Для более объективного подтверждения мембранно-стабилизирующего влияния карбамезапина и ламиктала нами оценивались перекисная и механическая стойкости эритроцитов у больных эпилепсией
2010

Нами было проведено клинико-нейропсихологическое обследование 250 больных с ХИСФ (работающих в фосфорном производстве Каратау-Жамбылской биогеохимической провинции)
2010


C использованием разработанных алгоритмов и моделей был произведен анализ ситуации в системе здравоохранения биогеохимической провинции. Рассчитаны интегрированные показатели здоровья
2010

Специфические особенности Каратау-Жамбылской биогеохимической провинции связаны с производством фосфорных минеральных удобрений.
2010

Реализация безопасной передачи данных на сервер средствами языка php

Значение информационной безопасности невозможно переоценить. Особенно сейчас: в век информационных технологий. Интернет-магазины и информационные порталы школ сегодня – это уже реальность. Среди всего множества Интернет-атак особое внимание уделяется XSS- атакам. XSS атака – это атака на уязвимость, которая существует на сервере, позволяющая внедрить в генерируемую сервером HTML-страницу некий произвольный код, в котором может быть вообще все что угодно и передавать этот код в качестве значения переменной, фильтрация по которой не работает. PHP – довольно мощное средство для разработки сайтов, а также обеспечения безопасности электронных ресурсов сети Интернет. В данной статье, программная реализация некоторых функций защиты электронных ресурсов представлена именно на языке PHP.

Значение информационной безопасности невозможно переоценить. Особенно сейчас: в век информационных технологий. Интернет-магазины и информационные порталы школ сегодня – это уже реальность. Все больше людей пытаются создавать свои информационные ресурсы в сети Интернет. И все чаще и чаще встает вопрос: «А как защитить свой сайт от посягательств злоумышленника?»

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

Среди всего множества Интернет-атак особое внимание уделяется XSS- атакам. Аббревиатура XSS расшифровывается как Cross Site Scripting, или «межсайтовый скриптинг». При этом первую букву С заменили на Х вследствие того, что аббревиатура CSS уже занята, обозначает «Каскадные таблицы стилей» и применяется в веб-программировании.

XSS атака - это атака на уязвимость, которая существует на сервере, позволяющая внедрить в генерируемую сервером HTML-страницу некий произвольный код, в котором может быть вообще все что угодно и передавать этот код в качестве значения переменной, фильтрация по которой не работает, то есть сервер не проверяет данную переменную на наличие в ней запрещенных знаков -, <, >, ', ‖. Значение данной переменной передается от генерируемой HTML-страницы на сервер в скрипт, ее вызвавший путем отправки запроса.

А далее начинается самое интересное для хакера. РНР-скрипт в ответ на данный запрос генерирует HTML-страницу, в которой отображаются значения требующихся хакеру переменных, и отправляет данную страницу на браузер хакера. То есть, говоря проще, XSS атака - это атака с помощью уязвимостей на сервере на компьютеры клиентов [1].

Примером XSS-атаки может служить ввод в адресной строке браузера после адреса сайта известный вам параметр со значением, которое он в принципе принять не может (в соответствии с рисунком 1).

XSS атака чаще всего используется для кражи Cookies (или куки, как их произносят по-русски). В них хранится информация о сессии пребывания пользователя на сайтах, что и бывает нужным хакерам для перехвата управления личными данными пользователя на сайте в пределах, пока сессия не будет закрыта сервером, на котором размещен сайт. Помимо этого в Cookies хранится зашифрованный пароль, под которым пользователь входит на данный сайт, и при наличии необходимых утилит и желания хакерам не доставляет особого труда расшифровать данный

129

Рисунок 1 - Пример типичной XSS атаки

Теперь опишем другие возможности XSS атак (конечно при условии их успешного проведения).

  1. Возможно при открытии страницы вызвать открытие большого количества ненужных пользователю окон.
  2. Возможна вообще переадресация на другой сайт (например, на сайт конкурента).
  3. Существует возможность загрузки на компьютер пользователя скрипта с произвольным кодом (даже вредоносного) путем внедрения ссылки на исполняемый скрипт со стороннего сервера.
  4. Зачастую происходит кража личной информации с компьютера пользователя, помимо Cookies в качестве объекта кражи выступает информация о посещенных сайтах, о версии браузера и операционной системе, установленной на компьютере пользователя, да к тому же еще и плюсуется IP-адрес компьютера пользователя.
  5. XSS атака может быть проведена не только через сайт, но и через уязвимости в используемом программном обеспечении (в частности, через браузеры). Поэтому рекомендуем как можно чаще обновлять используемое программное обеспечение.
  6. Также возможно проведение XSS атак через использование SQL- кода [1].

Итак, XSS-атаки являются мощным и достаточно распространенным средством взлома Интернет-ресурсов. По данным Википедии XSS на сегодняшний день составляют около 15% всех обнаруженных уязвимостей.

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

Для того чтобы защитить сайт, для начала нужно знать какие уязвимые места он имеет. Любой незащищенный сайт имеет стандартные уязвимости:

  1. прием любой информации из форм, параметров GET запроса, cookie;
  2. в особо критичных случаях: прием любой информации с backend- серверов, например из баз данных;
  3. использования принятой информации для отображения на странице, формирования выходных данных (файлов, Email и т.д.), формирования параметров для последующей обработки (например, параметры передаваемые JavaScript).

Для защиты любой из этих уязвимостей нужно запомнить одно правило: «Проверок входных данных много не бывает». Рассмотрим основные способы и правила контроля входных данных на сервер:

  1. никогда не доверяйте никакой входной информации (GET, POST, Cookie);
  2. любые входные параметры требуют обязательной проверки на корректность, приведения к требуемому типу данных (int, boolean, float и т.д.), проверки на длину передаваемой строки;
  3. никогда не следует искать ошибки в полученных данных. Ищите только правильные с точки зрения приложения значения, и отметайте все остальное;
  4. обязательно фильтруйте HTML-тэги, т.к. безопасных тегов не бывает.

Способ произвести проверку входных данных на корректность – фильтрация.

Фильтрацию строк можно производить различными способами, для этого в арсенале РНР достаточно разного рода функций. Примерами таких фильтров могут служить следующие:

  • string strip_tags(string $str [, string $allowable_tags]);
  • string trim (string $str [, string $charlist]);
  • string substr(string $str, int $start [, int $length]);
  • string strtr(string $str, array $replace_pairs).

Фильтрация числовых данных тоже очень важна. Рекомендуется приводить входную строку к заданному типу, и делать проверки уже после приведения. Например, вот так:

  • $bar = (boolean) $foo;
  • $bar = (int) $foo;
  • $bar = (float) $foo;

Существует еще ряд возможностей отфильтровать данные посылаемые на сервер:

  1. Проверка на пустоту поля

Проверка того, что пользователь ввел данные, может осуществляться, к примеру, с помощью функции isset:

<?

$name = $_POST['name'];

if (!isset($name))

{ // если переменная $name не существует, просим повторить ввод имени

?>

<h1>

Вы забыли ввести ваше имя </h1>

<!—

далее следует HTML-код формы, в которой вводится имя -->

<?

132

Точно таким же образом вы можете проверить и остальные заполняемые пользователем поля.

  1. Удаление HTML - тегов и обратных слешей.

Как уже говорилось, вводимый пользователем текст необходимо обработать функциями удаления HTML-тегов (для исключения возможности написания скриптов на JavaScript и Visual Basic) и обратных слешей (для исключения возможности написания скриптов на Perl). К примеру, если переменная $name содержит текст с именем пользователя, то обработка этого текста выглядит так:

<? $name = substr($_POST["name"],0,32);

$name = htmlspecialchars(stripslashes($name));

?>[2]

Еще одна возможность уберечься от посягательств на Ваш электронный ресурс – это отключение конфигурационных параметров языка программирования PHP. Таких как session.auto_start, register_globals, magic_quotes_gpc, allow_url_fopen, allow_url_include.

Также рекомендуется производить считывание всех входных данных из браузера в один специализированный модуль, который и будет заниматься фильтрацией всех входных данных, данный модуль еще называют «Одним окном» (в соответствии с рисунком 2).

Для предотвращения проведения XSS-атак также рекомендуется следующее:

  1. Запретите загрузку произвольных файлов на сервер во избежание загрузки вредоносных скриптов.
  2. Все загруженные файлы храните в базе данных, а не в файловой системе.
  3. Расширяя функциональность своего сайта, помните, что при этом возрастает возможность проведения XSS атак, так что расширяйте ее с крайней осторожностью и все время тестируйте.

 

ЛИТЕРАТУРА

  1. XSS атака [электрон. ресурс]. - 2012. URL: http://thelocalhost.ru/xss- ataka/ (дата обращения: 21.09.2012).
  2. Кузнецов М.В., Симдянова И.В. Учебник по PHP [электрон. ресурс].- 2010. URL: http://www.softtime.ru/bookphp/gl1_1 .php (дата обращения: 23.09.2012).

Разделы знаний

Архитектура

Научные статьи по Архитектуре

Биология

Научные статьи по биологии 

Военное дело

Научные статьи по военному делу

Востоковедение

Научные статьи по востоковедению

География

Научные статьи по географии

Журналистика

Научные статьи по журналистике

Инженерное дело

Научные статьи по инженерному делу

Информатика

Научные статьи по информатике

История

Научные статьи по истории, историографии, источниковедению, международным отношениям и пр.

Культурология

Научные статьи по культурологии

Литература

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

Математика

Научные статьи о математике

Медицина

Научные статьи о медицине Казахстана

Международные отношения

Научные статьи посвященные международным отношениям

Педагогика

Научные статьи по педагогике, воспитанию, образованию

Политика

Научные статьи посвященные политике

Политология

Научные статьи по дисциплине Политология опубликованные в Казахстанских научных журналах

Психология

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

Религиоведение

Научные статьи по дисциплине Религиоведение опубликованные в Казахстанских научных журналах

Сельское хозяйство

Научные статьи по дисциплине Сельское хозяйство опубликованные в Казахстанских научных журналах

Социология

Научные статьи по дисциплине Социология опубликованные в Казахстанских научных журналах

Технические науки

Научные статьи по техническим наукам опубликованные в Казахстанских научных журналах

Физика

Научные статьи по дисциплине Физика опубликованные в Казахстанских научных журналах

Физическая культура

Научные статьи по дисциплине Физическая культура опубликованные в Казахстанских научных журналах

Филология

Научные статьи по дисциплине Филология опубликованные в Казахстанских научных журналах

Философия

Научные статьи по дисциплине Философия опубликованные в Казахстанских научных журналах

Химия

Научные статьи по дисциплине Химия опубликованные в Казахстанских научных журналах

Экология

Данный раздел посвящен экологии человека. Здесь вы найдете статьи и доклады об экологических проблемах в Казахстане, охране природы и защите окружающей среды, опубликованные в научных журналах и сборниках статей Казахстана. Авторы рассматривают такие вопросы экологии, как последствия испытаний на Чернобыльском и Семипалатинском полигонах, "зеленая экономика", экологическая безопасность продуктов питания, питьевая вода и природные ресурсы Казахстана. Раздел будет полезен тем, кто интересуется современным состоянием экологии Казахстана, а также последними разработками ученых в данном направлении науки.  

Экономика

Научные статьи по экономике, менеджменту, маркетингу, бухгалтерскому учету, аудиту, оценке недвижимости и пр.

Этнология

Научные статьи по Этнологии опубликованные в Казахстане

Юриспруденция

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