Вэб-разработка
Защита сайта

renak
22 октября 2009, 19:03

Такой темки не увидел вот решил привести распространенную защиту ))

//Ограничивает количество символов
$title=substr(title,0,40);

$title=htmlspecialchars($title);
//Не пропустит JAVA и HTML код. Мнемонизирует <> '' "" &

$text=strip_tags($text);
//Для защиты от html тегов не очень хороший вариант, так как ее очень легко обойти

if(!is_numeric($e)){exit('he he');}
// Пропускает только целое число


$f ='![^0-9]!i'; //- только числа
$f = '![^a-z0-9]!i'; //-числа и английские буквы
$f = '![^a-Я0-9]!i'; //-Русские и аднгийские, и числа
if(preg_match($f, $ir)){echo 'содержит запрещенные символы'; exit();}


ПРИ РАБОТЕ С БД
$author = addslashes($author); //-Экранирует кавычки

Используете проверку на успешный вывод
if($result!=true){exit('false');}

$r = mysql_escape_string($r) - мнемонизирует строку для использования при работе с бд.
Эта функция несет в себе экранирование кавычек как в addslashes

При каждой работе с БД желательно ставить блокирование ошибки, т.к. Это может стать в дальнейшем причиной доступа к данным в БД.
@mysql_query('SELECT ...');


Если вы будите только вытаскивать ,вставлять, изменять, добавлять, удалять
записи из бд то в MySQL поставьте пользователю 'Глобальные привилегии SELECT, INSERT, UPDATE. (ПРИ любом случае оставьте 2х пользователей. Один с ограниченными правами, другой со всеми доступными. На локалке при удалении пользователей root вы заблокируете доступ в phpMyAdmin)

Не доверяйте данным переданным с cookie, их можно подменить.
Еще запретите просмотр дирректории в случае если неверно набран url='http://renak/bl/' где нет файла index... Запретить это можно с помощью файла
.htaccess
Содержимое файла
Options -Indexes

Где вы не стали защищать файлом .htaccess можно защитить от сбора данных по дирректории ботом поисковиком. Для этого создайте файл robots.txt в корневой папке.
т.е. по адресу http://renak/robots.txt
Содержимое файла:
User-Agent: *
Disallow: /functions/
Disallow: /bl/
Disallow: /ad/



И указываем после Disallow: папки которые не надо сканировать.



Вроде указал самое главное, что не указал надеюсь дополнят, или пополню я.
-------

Назад в тему

Вэб-разработка
Список форумов
На главную

0.025 сек
SQL: 3