Суббота
27.04.2024, 20:30
| RSS
Главная
Меню сайта

Категории раздела
Madriva [3]
Ubuntu (KUbuntu, EdUbuntu, XUbuntu) [78]
SUSE [1]
Fedora Core [9]
ASPLinux [1]
Debian [16]
Gentoo [3]
Другие [167]

Мини-чат

Наш опрос
Какую графическую среду Вы используете?
Всего ответов: 103

Статистика

Rambler's Top100Рейтинг@Mail.ru

Главная » 2012 » Март » 21 » PHP. Фильтрация данных.
PHP. Фильтрация данных.
18:48

Многие любители Ubuntu занимаются «для себя» или профессионально веб-программированием, а самым известным и распространенным языком для web-разработки безусловно является PHP. Однако разрабатывая для интернета не стоит забывать о безопасности, а наиболее важным пунктом безопасности web-сайта – это проверка абсолютно всех входящих к базе данных, потому следует всегда перепроверять данные, которые вводятся пользователем в формы поиска, заполнение полей регистрации и тому подобное, на присутствие «опасных» данных.

Например, это может быть, как вредный JavaScript, так и PERL или же PHP команды, однако самыми опасными являются – команды серверу. Рассуждать о вероятностях профессионального хакера, которому подвернулось непроверяемое поле на сайте, бессмысленно, такой профи сможет абсолютно все! Начав с установки редиректа и закончив выводом из строя сервера.

Необходимо всегда помнить, что совершенно любой пользователь – это опасность для уязвимого сайта, оттого необходимо всегда запросы и переменные перепроверять.
Если вы устали от php, то откиньтесь на стул возьмите бутылочку вина, и посетите сайт http://ru.partypoker.com/ именно здесь вы сможете отдохнуть морально, и развеяться мыслями, играя в покер. Покер это замечательная игра, в которую играют сотни тысяч людей по всему миру. И к этим людям сможете присоединиться и вы.

Существующие важнейшие этапы:
Анализирование переменных, а именно массивов GET или POST. Рекомендуется проверять особенно входящие переменные, не пропускайте до работы с запросами и функциями к базе данных еще не перепроверенные, возможно опасные данные от пользователей. Следовательно, все нужное для защиты функции, будут размещены в одном конкретном месте или же файле.

Приведем пример: $a1 = @$_GET["nomer"]; где символ @ используется для пренебрежения интерпритатором ошибок в случаи неимения переменной nomer в массиве GET;

Раздел переменных. Совершенно каждая переменная в скрипте в процессе проектирования уже должна иметь свой стиль, будет это строка или число. Желательнее всего перепроверять переменные на необходимый ей тип, к примеру: тип нашей переменной целое число, и в этом случаи для фильтрации данных довольно произвести приведение переменную $a1 к целостному типу: $a1 = @$_GET ["nomer"]; $a1 = intval ($a1)

К примеру, вредена ввел в строку запроса ?nomer = 43×34 в результате обработки переменная $a1 примет значение 43. Наряду с этим, не стоит забывать о диапазонах значений. При этом необходимо проверить переменную на диапазон. Пускай $a1 будет в пределе от 1 до 100, тогда перепроверка будет такой:

if (($a1<1) | | ($a1>100)) $a1=1;

Так, из данного примера видно, что совершается принужденная установка переменных $a1 со значением 1, в случаи нарушения.
Фильтрация строковых переменных. Особенно опасны текстове переменные, к примеру, поле для ввода поисковой фразы по сайту. Их требуется проверять на наличие вредного кода. Для ликвидации опасности, совершается удаление неких элементов из текста или же замена на другие символы. Зачастую устраняются php-вставки, html-тэги, а также конструкции для изменения запросов к базе MySQL.

Так что всегда предохраняйтесь, дамы и господа, даже программируя ;-)

Источник:http://ubuntudays.ru/2012-03-12/php-%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85/

Категория: Ubuntu (KUbuntu, EdUbuntu, XUbuntu) | Просмотров: 840 | Добавил: tol | Рейтинг: 0.0/0 |
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа

Поиск

Друзья сайта

  • Администрация

    Andry


    Tol


    Copyright MyCorp © 2024
    Хостинг от uCoz