zoukankan      html  css  js  c++  java
  • ASP上两个防止SQL注入式攻击Function

     
    ''==========================
    '
    '过滤提交表单中的SQL
    '
    '==========================
    function ForSqlForm()
    dim fqys,errc,i,items
    dim nothis(18
    nothis(
    0)="net user" 

    nothis(
    1)="xp_cmdshell" 

    nothis(
    2)="/add" 

    nothis(
    3)="exec%20master.dbo.xp_cmdshell" 

    nothis(
    4)="net localgroup administrators" 

    nothis(
    5)="select" 

    nothis(
    6)="count" 

    nothis(
    7)="asc" 

    nothis(
    8)="char" 

    nothis(
    9)="mid" 

    nothis(
    10)="''" 

    nothis(
    11)=":" 

    nothis(
    12)="""" 

    nothis(
    13)="insert" 

    nothis(
    14)="delete" 

    nothis(
    15)="drop" 

    nothis(
    16)="truncate" 

    nothis(
    17)="from" 

    nothis(
    18)="%"

    ''nothis(19)="@"  

    errc
    =false 

    for i= 0 to ubound(nothis) 
      
    for each items in request.Form
      
    if instr(request.Form(items),nothis(i))<>0 then 
       response.write(
    "<div>")
       response.write(
    "你所填写的信息:" & server.HTMLEncode(request.Form(items)) & "<br>含非法字符:" & nothis(i))
       response.write(
    "</div>")
       response.write(
    "对不起,你所填写的信息含非法字符!<a href=""#"" onclick=""history.back()"">返回</a>")
       response.End()
      
    end if 
      
    next
    next 
    end function
    ''==========================
    '
    '过滤查询中的SQL
    '
    '==========================
    function ForSqlInjection()
    dim fqys,errc,i
    dim nothis(19
    fqys 
    = request.ServerVariables("QUERY_STRING")
    nothis(
    0)="net user" 

    nothis(
    1)="xp_cmdshell" 

    nothis(
    2)="/add" 

    nothis(
    3)="exec%20master.dbo.xp_cmdshell" 

    nothis(
    4)="net localgroup administrators" 

    nothis(
    5)="select" 

    nothis(
    6)="count" 

    nothis(
    7)="asc" 

    nothis(
    8)="char" 

    nothis(
    9)="mid" 

    nothis(
    10)="''" 

    nothis(
    11)=":" 

    nothis(
    12)="""" 

    nothis(
    13)="insert" 

    nothis(
    14)="delete" 

    nothis(
    15)="drop" 

    nothis(
    16)="truncate" 

    nothis(
    17)="from" 

    nothis(
    18)="%"

    nothis(
    19)="@"  

    errc
    =false 

    for i= 0 to ubound(nothis) 

    if instr(FQYs,nothis(i))<>0 then 

    errc
    =true 

    end if 

    next 

    if errc then 
    response.write 
    "查询信息含非法字符!<a href=""#"" onclick=""history.back()"">返回</a>" 
    response.end 

    end if 

    end function
  • 相关阅读:
    Spark概念介绍
    KVM web管理工具——WebVirtMgr(一)
    Spark集群搭建
    阿里云DTS VS MySQLdump
    MySQL性能分析和优化-part 1
    为什么logstash进程的CPU使用率100%?
    技本功丨互联网+工业视觉异常检测分析
    Spark集群管理器介绍
    某云下系统上云方案及成本计算
    企业混合云架构设计
  • 原文地址:https://www.cnblogs.com/aowind/p/270995.html
Copyright © 2011-2022 走看看