通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 爱心红客 电信网通铁通移动 在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 红客教程 >> 网络攻防 >> 文章正文
从 'or'='or' 漏洞安全检测到修复手法
责任编辑:酷酷の鱼   更新日期:2008-7-13
 

来源:安全中国

实施修复,方法有很多在这里介绍两种,咱们使用第2种
方法1: Replace过滤字符
  解决方法:查找login.asp下的<from找到下边的类似 

  username=request.Form("name")
  pass=request.Form("pass")


  修改为: 
  username=Replace(request.Form("name"), "’", "’’")
  pass=Replace(request.Form("pass"), "’", "’’")


  语法是屏蔽’和’’字符来达到效果.
  
方法2:在conn.asp 内加入<!--#include file="safe.asp"-->
  注:(前提 登陆页面有<!--#include file="conn.asp"-->)

  把以下代码保存为safe.asp
  
下面是程序代码********************************************************
<% 
Dim Query_Badword,Form_Badword,i,Err_Message,Err_Web,name 
Err_Message = 3
Err_Web = "safe.htm" 
’出错时转向的页面 

Query_Badword="’|and|select|update|chr|delete|%20from|;|insert|mid|master.|set|chr(37)|=" 
’在这部份定义get非法参数,使用"|"号间隔 

Form_Badword="’|(|)|;|=" 
’在这部份定义post非法参数,使用"|"号间隔 

On Error Resume Next 


if request.QueryString<>"" then 
Chk_badword=split(Query_Badword,"|") 
FOR EACH Query_Name IN Request.QueryString 
for i=0 to ubound(Chk_badword) 
If Instr(LCase(request.QueryString(Query_Name)),Chk_badword(i))<>0 Then 
Select Case Err_Message 
Case "1" 
Response.Write "<Script Language=JavaScript>alert(’传参错误!参数 "&name&" 的值中包含非法字符串!\n\n请不要在参数中出现:and update delete ; insert mid master 等非法字符!’);window.close();</Script>" 
Case "2" 
Response.Write "<Script Language=JavaScript>location.href=’"&Err_Web&"’</Script>" 
Case "3" 
Response.Write "<Script Language=JavaScript>alert(’传参错误!参数 "&name&"的值中包含非法字符串!\n\n请不要在参数中出现:and update delete ; insert mid master 等非法字符!’);location.href=’"&Err_Web&"’;</Script>" 
End Select 
Response.End 
End If 
NEXT 
NEXT 
End if
if request.form<>"" then 
Chk_badword=split(Form_Badword,"|") 
FOR EACH name IN Request.Form 
for i=0 to ubound(Chk_badword) 
If Instr(LCase(request.form(name)),Chk_badword(i))<>0 Then 
Select Case Err_Message 
Case "1" 
Response.Write "<Script Language=JavaScript>alert(’出错了!表单 "&name&" 的值中包含非法字符串!\n\n你的非法操作已记录,请马上停止非法行为!’);window.close();</Script>" 
Case "2" 
Response.Write "<Script Language=JavaScript>location.href=’"&Err_Web&"’</Script>" 
Case "3" 
Response.Write "<Script Language=JavaScript>alert(’唐山味儿不浓 告诉您出错了!参数 "&name&"的值中包含非法字符串!\n\谢谢您光临!,请停止非法行为!’);location.href=’"&Err_Web&"’;</Script>" 
End Select 
Response.End 
End If 
NEXT 
NEXT 
end if 
%>
  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    普通文章 美国花旗银行自动取款机网络被黑客攻破
    普通文章 "袜子虫"利用ROOTKIT技术挂接系统
    普通文章 谨防“网银黑客盗号器”作恶互联网
    普通文章 提高网络安全四步 阻止黑客通过浏览器入侵
    普通文章 40%网民未使用最新版本浏览器
    普通文章 瑞星:Flash漏洞已感染190万用户
    普通文章 根治病毒及恶意软件 需要从网关防护开始
    普通文章 Fortinet:六月份安全威胁榜单
    推荐文章 推荐:系统重装防再遭病毒侵袭 五项建议保你安全
    普通文章 4大步骤 防止黑客通过Explorer侵入系统
    热门文章
    普通文章网银一年盗窃30万 嫌疑人被公诉
    普通文章网络监听技术最全面解析
    普通文章提高杀毒效率,永久告别全盘扫描
    普通文章防范网页木马的攻击
    普通文章堵住病毒传播 遏制电脑反复中毒
    推荐文章病毒命名规则大检阅 教你识别病毒
    普通文章彻底清除系统中的顽固病毒程序
    普通文章警惕网页隐形代码 防范五种杀手
    推荐文章瑞星公司07月03日发布 每日计算机病毒及木马播报
    普通文章EB(Permeo e-Border)代理教程
    精彩专题