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
  • 相关阅读:
    MAC终端配置
    SCIENCE公布125个科学前沿问题
    【Python3】内存释放机制
    【Python3】装饰器
    【Python3】迭代器&装饰器
    【Python3】内置函数
    【Python3】高阶函数
    【Python3】匿名函数
    【Python3】递归函数
    【Python3】嵌套函数
  • 原文地址:https://www.cnblogs.com/flyfish/p/386047.html
Copyright © 2011-2022 走看看