当前位置:编程学习 > asp >>

禁止站外提交表单

使用asp尽量减少服务器端的工作量,这样就应该多使用javascript,把所有提交字段使用javascript或vbscript检测后提交给服务器,这样服务器就不必再作检测,而在提交时可能会有人修改script从本地提交,这样存在安全提交的问题,所以应该要求从服务器断路径提交,其他地址提交提交无无效:
<%
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
if mid(server_v1,8,len(server_v2))<>server_v2 then
response.write "<br><br><center><table border=1 cellpadding=20 bordercolor=black bgcolor=#EEEEEE width=450>"
response.write "<tr><td style='font:9pt Verdana'>"
response.write "你提交的路径有误,禁止从站点外部提交数据请不要乱该参数!"
response.write "</td></tr></table></center>"
response.end
end if
%>
  比如说上面的代码起名为check_path.asp保存,每次遇到表格提交时引用就行了:
<!--#include file="check_path.asp"-->

这是在蓝色看到的,我以前的ASP也是如此来做的,可是后来发现这段代码根本不管用了,留言里面照样是乱七八糟的被发进来,照样被突破,然后就同时加了:

<%
if instr(request.servervariables("http_referer"),"http://"&request.servervariables("host") )<1 then
response.write "处理 URL 时服务器上出错。"
response.end
end if
%>
<%  
Query_String = LCase(Request.ServerVariables("Query_String"))
if  (InStr(Query_String,"'")>0) or (InStr(Query_String,";")>0) or (InStr(Query_String,"and")>0) Then
response.write"<SCRIPT language=javascript>alert('
补充:asp教程,安全加密
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,