热门文章
阿标在线 动力3.62HTML生成3.62网站文件说明
动力3.62整合动网7.0 SP2插
MDAC2.8 下载!
动力3.62版 防止垃圾留言
动力3.6全方位改动方法
让3.62不同频道实现不同风
把3.62首页登陆为横向代码
动易3.6首页随机FLASH修改
362首页和文章频道页图文幻
个性化修改3.6宝典
3.62轻易实现网摘功能
如何正确统计中文字数?
弹出JAVASCRIPT语法错误对
后台使“网站顶部LOGO地址
最新图片文章横向移动的修
html 生成艺术字
3.6 Sp2 Logo和Banner及广
日期值的计算
汉字转拼音
首页“图片更新”图片滚动
简体中文转换为繁体中文的
如何在css中定义链接的下划
动力3.62版 防止垃圾留言
原文链接:http://bbs.asp163.net/dispbbs.asp?boardID=34&ID=100843&page=1
1.修复:
打开数据库,改guest表名为任意名字
导入以前备份的guest,全部删除记录。
做一次压缩和修复(此操作是使留言的id连续,不是必要的)。
复制除最后的垃圾留言以外的全部留言到新导入的表中。删除原来的被改过名的表。
上传!
注意:
恶意留言在后台不能删除不是因为超过500字这个限制,“无法删除”的原因来自Access 2000 BUG,当数据库中包含了特殊字符就会产生,但我目前不清楚哪些字符会产生此错误。只是知道用Access 2000编辑过的数据库会产生此错误。可能数据库上传前用Access 2000以上版本压缩修复,就不会产生此错误(未测试)
2.站外提交例子:
留言操作反馈信息
您的留言已经发送成功!
只有管理员审核通过的留言才会显示出来。
【查看留言】【签写留言】
继续点以上连接:
留言操作反馈信息
请不要连续发送内容相同的留言或空留言!
那就再加几个k!
3.防止站外提交
inc/admin_code_guest中添加红色部分:
'=================================================
'过程名:SaveWriteGuest()
'作 用:保存留言
'参 数:无
'=================================================
sub SaveWriteGuest()
dim SaveEditId,GuestName,CheckCode,GuestSex,GuestOicq,GuestEmail,GuestHomepage,GuestFace,GuestImages,GuestIcq,GuestMsn
dim GuestTitle,GuestContent,GuestIsPrivate,GuestIsPassed
dim GuestPassword,GuestPasswordConfirm,GuestQuestion,GuestAnswer,GuestUserlevel
dim sqlMaxId,rsMaxId,MaxId,Saveinfo,sqlReg,rsReg
'20050318guing.com老少平安添加阻止站外提交留言
dim ComeUrl,cUrl
ComeUrl=lcase(trim(request.ServerVariables("HTTP_REFERER")))
if ComeUrl="" then
response.write "<br><p align=center><font color='red'>对不起,为了系统安全,不允许直接输入地址访问本页面。</font></p>"
response.end
else
cUrl=trim("http://" & Request.ServerVariables("SERVER_NAME"))
if mid(ComeUrl,len(cUrl)+1,1)=":" then
cUrl=cUrl & ":" & Request.ServerVariables("SERVER_PORT")
end if
cUrl=lcase(cUrl & request.ServerVariables("SCRIPT_NAME"))
if lcase(left(ComeUrl,instrrev(ComeUrl,"/")))<>lcase(left(cUrl,instrrev(cUrl,"/"))) then
response.write "<br><p align=center><font color='red'>对不起,为了系统安全,不允许从外部链接地址访问。</font></p>"
response.end
end if
end if
'0318guing.com修改结束
4.设定500字留言上限
在INC/admin_code_guest.asp:
'=================================================
'过程名:SaveWriteGuest()
'作 用:保存留言
'参 数:无
'=================================================
查找到以下内容
if session("CheckCode")="" then
call Guest_info("<li>你登录时间过长,请重新返回登录页面进行登录。</li>")
exit sub
end if
if CheckCode<>CStr(session("CheckCode")) then
call Guest_info("<li>您输入的确认码和系统产生的不一致,请重新输入。</li>")
exit sub
end if
if GuestName="" or GuestTitle="" or GuestContent="" or len(GuestContent)>500 then
call Guest_info("<li>留言发送失败!</li><li>请将必要的信息填写完整!</li><li>留言不能超过500字!</li>")
exit sub
end if
红色部分。
5.隐藏action参数
<form name="formwrite" method="post" action="<%=strFileName%>?action=save_write" onSubmit="return check(formwrite)">
改成
<form name="formwrite" method="post" action="<%=strFileName%>" onSubmit="return check(formwrite)">
<input type="hidden" name="action" value="save_write">
效果更佳,显示留言成功与否的页面的地址拦将隐藏参数 guestbook.asp?action=save_write
-- 作者:风中玫瑰
-- 发布时间:2004-11-21 14:14:00
-- 留言板被攻击的解决办法——提供下载
一直以为有人和我过不去呢,原来是和动力过不去啊——呵呵,看来我没那么大的魅力哦。希望高手看了手下留情,不要对我进行攻击哦,我只想帮助一下和我一样的菜鸟们,一直以来,希望61.157.221.12的朋友不要对我们这帮菜鸟级别的人再进行攻击了。其实你就只想做做广告,又何必让人家的留言本打不开呢?既然是广告,打不开对你又有何好处呢?真是不明白啊。
最简单的解决办法:打开admin_guest.asp,找到
if UserSex=1 then
TipSex="(酷哥)"
elseif UserSex=0 then
TipSex="(靓妹)"
else
TipSex=""
end if
大概在286-292行,删除这段文字后保存即可。这样大家就可以进入后台管理,把这些没用的留言删除了。这个方法比较笨,但至少不用把整个数据库下载下来。当然可以有稍微高明些的办法,那就是模仿一下Admin_ChkPurview.asp的功能,禁止直接在地址栏输入及外部地址的提交。
最后,希望61.157.221.12朋友在做广告的时候不要黑我们!更希望动力的朋友们把这个系统更加完善。
我把自己修改的关于admin_guest及inc/admin_code_guest.asp两个文件上传,希望对大家有所帮助。修改内容如下:
1、纠正后台性别显示出错的问题,由于在后台删除后前台即可恢复正常,故认为前台没有必要修改,而且能保留前台显示留言者的性别。(修改文件为admin_guest.asp)
2、禁止外部提交的留言以及直接从地址栏输入代码直接提交留言(使用动力后台管理防止攻击的代码)。同时禁止某些字词的过滤功能。(修改文件为inc/admin_code_guest.asp,修改内容文件里已经标明vastman修改内容开始及结束)
大家可以试试,至少对于目前的这个攻击来说应该是个不错的解决办法。