Функция SafeRequest(ParaName,ParaType)
'--- Передача параметров---
'ParaName: имя параметра - тип символа
'ParaType: Тип параметра - числовой тип (1 указывает, что указанные выше параметры являются числами, 0 указывает, что указанные выше параметры являются символами)
Тусклое паразначение
ParaValue = Запрос (Имя Параметра)
Если ПараТип=1, то
Если не isNumeric(ParaValue), то
Параметр Response.write и ParaName должны быть числовыми!
Ответ.конец
Конец, если
Еще
ParaValue=replace(ParaValue, ', ' ')
Конец, если
SafeRequest=Паразначение
Конечная функция
Используйте SafeRequest(ParaName,ParaType) вместо request.form() и request..querystring().
**************************************************** * ************************************************* ** *****
-------------------------------------------------- -------------------------------------------------- ---------------------------------------
**************************************************** * ************************************************* ** *****
<%
dimsql_injdata
sql_injdata= '|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare
sql_injHint = заменить (sql_injdata, |, )
sql_injHint = заменить (sql_injHint, ', ')
sql_inj=split(sql_injdata,|)
если request.querystring<> тогда
для каждого getData в request.querystring
для i = 0 до ubound (sql_inj)
если instr(lcase(request.querystring(getData)),sql_inj(i))>0, то
hint=alert( 'Для обеспечения безопасности информации пользователя не используйте недопустимые символы внедрения. Следующие символы недопустимы: @sql_injHint@ ');
подсказка = заменить (подсказка, @sql_injHint@,sql_injHint)
response.write <язык сценария=javascript>
ответ.напишите подсказку
ответ.записать историю.обратно()
ответ.запись </script>
ответ.конец
конец, если
следующий
следующий
конец, если
если запрос.форма<> тогда
для каждого getData в request.querystring
для i = 0 до ubound (sql_inj)
если instr(lcase(request.form(getData)),sql_inj(i))>0, то
hint=alert( 'Для обеспечения безопасности информации пользователя не используйте недопустимые символы внедрения. Следующие символы недопустимы: @sql_injHint@ ');
подсказка = заменить (подсказка, @sql_injHint@,sql_injHint)
response.write <язык сценария=javascript>
ответ.напишите подсказку
ответ.записать историю.обратно()
ответ.запись </script>
ответ.конец
конец, если
следующий
следующий
конец, если
%>Сформируйте этот код в файл (например: defanj.asp) и добавьте в заголовок все файлы, которые необходимо использовать в базе данных <!--#include file=defanj.asp-->