
12.09.2007, 16:27
|
|
Постоянный
Регистрация: 20.01.2007
Сообщений: 787
Провел на форуме: 2924346
Репутация:
1719
|
|
На самом-то деле, как мне кажется для фильтрации:
1. XSS достаточно использовать striptags/htmlspecialchars/htmlentities
2. SQL достаточно испольльзовать mysql_escape_string/mysql_real_escape_string
3. PHP-Include достаточно создать массив нужных файлов и / или осуществлять выборку через case.
Регулярки тоже вариант.
Кстати, во 2ом случае можно использовать функции проверки содержимого переменной, например, на присутствие только цифровых символов (is_int).
Помогает присутствие magic_quotes_gpc, фильтрацию нужно также употреблять с учетом результата выполнения функции get_magic_quotes_gpc
Защититься от заливки шелла? хм.. регулярка на расширения + список разрешенных. Ну и .htaccess настроить, запретить выполнение php для папок вроде uploads.
По поводу ошибок: error_reporting(0) спасает, хотя при грамотном стиле программирования ошибки не должны появляться.
ps: перевод строки - "\n", фильтрация "n" затронет все вхождения этого символа и слово "antichat" превратится в "atichat".
pps: все, что выше - сугубо мое личное мнение. я не претендую на звание php-программиста, занимаюсь изучением сравнительно недавно и, скорее всего, многого не знаю) Если я где-то не прав и вы меня поправите, я буду только рад)
|
|
|