用户登录  | 
首 页技术文章软件发布广告价格
当前位置:传奇游戏服务端下载站传奇站长论坛资源网站程序技术文章文章资讯游戏架设教程奇迹技术

给大家一个防止外部提交的函数

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2014-10-03 19:05:45
在config.asp后面加上这样一串代码

function ChkPost()
dim server_v1,server_v2
chkpost=false
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
chkpost=false
else
chkpost=true
end if
end function

然后在那些问题页面里找个合适的位置插入以下代码:

if not ChkPost() then
response.write "请不要尝试漏洞或者请您关闭!"
response.end
end if

看不懂的朋友可以看看下面的例子:

文件:clearpk.asp

<!--#include file="config.asp" -->
<!--#include file="conn.asp" -->
<%
n=request.form("username")
p=request.form("userchr")

if instr(n,"")<>0 or instr(n,";")<>0 or instr(n,"&")<>0 or instr(n,"%")<>0 then
response.write "您所输入的数据包含非法字符,对不起!"
response.end
end if

if instr(p,"")<>0 or instr(p,";")<>0 or instr(p,"&")<>0 or instr(p,"%")<>0 then
response.write "您所输入的数据包含非法字符,对不起!"
response.end
end if

if n<>"" and p<>"" then
if not ChkPost() then
response.write "请不要尝试漏洞或者请您关闭!"
response.end
end if
set rs1 = Server.CreateObject("ADODB.Recordset")
sql="select * from Character where AccountID="&n&" and Name="&p&" and pklevel<>3"
rs1.open sql,conn,1,3
if rs1.eof or rs1.bof then


防止通过网页修改数据库的方法之一
对所有.asp文件进行查找,凡maxlength的地方请注意:
把所有这样的语名通通改为maxlength=18及以下,例如角色id你只需要maxlength=10 就可以了,只有身份证需要18长度,其实的全部改小就可以了。
有的就出在了maxlength=40 在地方,别人可以在那儿打入完整的命令,并且会执行。
另外对每个输入的地方加进判断,不让输入以下字符: " ^ < > & @ . ` = 就可以防住大多数的破坏
商业完整版游戏发布站程序免费下载:www.98youx.com

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
传奇资源网提供最新传奇开区一条龙版本下载,本站声明:只更新最新最好的传奇服务端分享给大家。