Категория
Информатика
Тип
реферат
Страницы
8 стр.
Дата
29.06.2009
Формат файла
.rtf — Rich Text Format (Wordpad)
Архив
18304.zip — 11.87 kb
  • priemy-bezopasnogo-programmirovanija-veb-prilozhenij-na_18304_1.rtf — 52.53 Kb
  • Readme_docus.me.txt — 125 Bytes
Оцените работу
Хорошо  или  Плохо


Текст работы

Приемы
безопасного программирования веб-приложений на PHP
Данная статья не претендует на роль всеобъемлющего руководства на тему "как сделать так, чтоб меня никто
не поломал". Так не бывает. Единственная цель этой статьи - показать некоторые используемые мной приемы для защиты веб- приложений типа WWW-чатов, гостевых книг, веб-форумов и других приложений подобного рода. Итак, давайте
рассмотрим некоторые приемы программирования на примере некоей гостевой книги, написанной на PHP.
Первой заповедью веб-программиста, желающего написать более-менее защищенное веб-приложение, должно стать "Никогда не верь данным, присылаемым
тебе пользователем". Пользователи - это по определению такие злобные хакеры, которые только и ищут момента, как бы напихать в формы ввода всякую дрянь типа PHP, JavaScript, SSI, вызовов своих жутко хакерских скриптов и тому подобных ужасных вещей. Поэтому первое, что необходимо сделать - это жесточайшим образом отфильтровать все данные, присланные пользователем.
Допустим, у нас в гостевой книге существует 3 формы ввода: имя пользователя, его e-mail и само по себе тело сообщения. Прежде всего, ограничим количество
данных, передаваемых из форм ввода чем-нибудь вроде:
На роль настоящей защиты, конечно, это претендовать не может - единственное назначение этого элемента - ограничить пользователя от случайного ввода имени длиннее 20-ти символов. А для того, чтобы у пользователя
не возникло искушения скачать документ с формами ввода и подправить параметр maxlength, установим где-нибудь в самом начале скрипта, обрабатывающего данные, проверку переменной окружения web-сервера HTTP-REFERER:
Теперь, если данные переданы не из форм документа, находящегося на сервере m, хацкеру будет выдано деморализующее



Ваше мнение



CAPTCHA