高分求有效的禁止外部提交代码(ASP)

dream200829 2009-01-04 11:49:12
最近网站遇到群发软件的攻击,每天注册上千个垃圾会员,发上千块垃圾信息?
求有效的能够防止外部提交的代码?
注册里已经有验证码验证,昨天也加了防外部提交的代码在CONN.ASP文件中,还是没用,今天又注册了上千条.每天网站被恶意刷新上百万次.
下面是我的CONN.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

If Instr(Request.ServerVariables("HTTP_REFERER"),"http://"&Request.ServerVariables("HTTP_HOST"))<1 then
chkpost=False
Else
chkpost=True
End if

If chkpost=False then
Response.Write "<script>alert('本站点禁止外部提交!');history.go(-1)</script>"
Response.End()
End if
End function
...全文
327 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
dream200829 2009-01-09
  • 打赏
  • 举报
回复
问题已自行解决,不过还要是谢谢各位的
zhangzb717 2009-01-07
  • 打赏
  • 举报
回复
可以在验证码上做文章
dream200829 2009-01-05
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 lqscoke 的回复:]
一个IP只能注册几次,不就行了?
[/Quote]
每次发的都是不同IP啊,
我刚刚把注册页面文件名改成其它的无规律的名字不知道是否有效,呵呵
听说群发软件一般会找reg.asp register.asp这类的文件的,不知道是不是呵呵
haiyun365 2009-01-05
  • 打赏
  • 举报
回复
看看注册是否经过正常的路径来的,还是经过其他的直接提交参数来的,先在页面上加一个统计代码,看看这些访问都是从哪过来的。 判断是否程序的漏洞还是验证码的漏洞

或者把验证码修改成文字版本的,这个一般比较难辨认

禁止外部提交还有一个比较另类的办法:使用加密的验证码:
在您的提交页面添加一个Hidden控件,值为随机生成,如经过加密的日期值、根据客户端IP地址生成的加密值等,当然,这些值对于外部提交的页面来说是难以破解的。及时能够破解,成本也比较高。
如果数据保存页面发现验证码有错误,则返回错误。这样,也是从另外的渠道禁止了外部提交


这位仁兄的主意也不错,在提交页面搞一个2次 md5 取某些位数 日期+IP 或者其他随机自定义字符,在注册程序页面的判断是否有这个值。
lqscoke 2009-01-05
  • 打赏
  • 举报
回复
一个IP只能注册几次,不就行了?
dy_outline 2009-01-05
  • 打赏
  • 举报
回复
禁止外部提交还有一个比较另类的办法:使用加密的验证码:
在您的提交页面添加一个Hidden控件,值为随机生成,如经过加密的日期值、根据客户端IP地址生成的加密值等,当然,这些值对于外部提交的页面来说是难以破解的。及时能够破解,成本也比较高。
如果数据保存页面发现验证码有错误,则返回错误。这样,也是从另外的渠道禁止了外部提交。

不知道你明白了,呵呵。
gmlwl 2009-01-05
  • 打赏
  • 举报
回复
一般他们都是下载了别人的灌水程序

都是一帮菜鸟,实在不行,你在注册页面加个隐藏字段,有时能管一段时间.
因为你下载了别人的程序,有硬伤,有时就是不太好处理,往往很菜的办法却可以管大用呵
dream200829 2009-01-05
  • 打赏
  • 举报
回复
刚刚又增加多了100分,大家多来讨论一下吧.
最好有具体的参考代码共享一下,谢谢各位哦
dream200829 2009-01-05
  • 打赏
  • 举报
回复
又在注册的页面增加了回答问题的选项,不知道这样有没有用?
  • 打赏
  • 举报
回复
验证码弄个复杂点的
ccjjww1222 2009-01-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 fangq 的回复:]
成功注册一下,记下Cookie和IP
一旦重复提交多个,直接砍掉他的IP,不让其注册
[/Quote]
^-^
fangq 2009-01-04
  • 打赏
  • 举报
回复
成功注册一下,记下Cookie和IP
一旦重复提交多个,直接砍掉他的IP,不让其注册

------------------------------------------
听书网-www.99tbook.cn
CuTe_CuBe 2009-01-04
  • 打赏
  • 举报
回复
HTTP_REFERER 可以伪造,一般群发软件都可以顺利绕过。
验证码试试多换几个比较复杂的,如果完全无效你应该检查一下你验证码的验证方式是否有问题。
szsbell 2009-01-04
  • 打赏
  • 举报
回复
既然是“垃圾信息”,也可以从反击“垃圾信息”开始,写一个程序来辨认“垃圾信息”。呵呵
dream200829 2009-01-04
  • 打赏
  • 举报
回复
我刚刚查看过了IP是不一样的,也不是同一IP段的,是的话还可以封那段IP,还有其它办法吗?
dream200829 2009-01-04
  • 打赏
  • 举报
回复
没有人回答了啊?
有过这方面的朋友说说了,或者把你们防范的相关代码贴出来共享一下,谢谢,分不够的话明天再加100呵呵
dream200829 2009-01-04
  • 打赏
  • 举报
回复
大家能不能提供点具体的禁止外部提交的代码?谢谢
cao_love 2009-01-04
  • 打赏
  • 举报
回复
判断提交过来的页面是否是你指定的页面。
具体方法搜搜就有了。
可防止百法进入。
明珠佩佩 2009-01-04
  • 打赏
  • 举报
回复
当然最有可能的是你的网站用的是别人写的代码

比如论坛或者整站的代码都是直接引用别人的

因为你的数据库结构是公开的,故这是很难以防范的
明珠佩佩 2009-01-04
  • 打赏
  • 举报
回复
封对方的IP是个办法

但你应该查一下对方的IP地址

如果是内网格式的IP

则很有可能是你的服务器被种马了

以前我也碰到过类似问题

同时修改你的认证机制也是个比较有效的办法

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧