FeitecCMS V2.0 漏洞

作者:hack1990 时间:11-09-25 阅读数:1526人阅读

''PS在分析之前,没看什么时候的代码。分析完毕了才知道很老了。所以就大概简略分析一下。 
 
''\inc\Ft_sqlin.asp  
<%  
''略  
Ft_In = "''|;|and|(|)|exec|insert|select|delete|update|count|*|%|chr|mid|truncate|char|declare"  
Kill_IP=True  
''略  
                    sql="select * from Ft_SqlIn where Sqlin_IP=''" & Request.ServerVariables("REMOTE_ADDR") & "'' and kill_ip=true"   
                    set rs=server.createobject("adodb.recordset")  
                    rs.open sql,conn,1,3  
                    if rs.eof or rs.bof then ''  
''略   
                        rs("SqlIn_CS")=Ft_Post  
                        rs("SqlIn_SJ")=replace(Request.Form(Ft_Post),"''","''''")  
                    ''略  
                    rs.close:set rs=nothing  
                    Response.Write "<Script Language=JavaScript>alert(''请不要在参数中包含非法字符尝试注入!'');</Script>"  
                                    Response.Write "提交数据:"&Request.Form(Ft_Post)  
''略          
            sql="select * from Ft_SqlIn where Sqlin_IP=''" & Request.ServerVariables("REMOTE_ADDR") & "'' and kill_ip=true"   
                    End If  
                    Response.Write "提交参数:"&Ft_Get&"<br>"  
                    Response.Write "提交数据:"&Request.QueryString(Ft_Get)  
                    Response.End  
''略  
%>  
 
 
 
 
''直接写入数据库。(数据库asa) 
 
 
''\admin\Ft_admin_upload.asp  
<%  
''略  
        ''检查文本是否有有害代码  
    Private Function includeBadWord(Byval FileStr)  
        includeBadWord=false  
        dim StrBadWord,ArrStrBadWord,i  
        StrBadWord="server.|.createobject|execute|.encode|eval|request"''定义恶意代码  
        ArrStrBadWord=split(StrBadWord,"|")  
        For i=0 to ubound(ArrStrBadWord)  
            if Instr(LCase(FileStr),ArrStrBadWord(i))>0 Then  
                ''response.write(ArrStrBadWord(i))  
''略  
Private Sub Class_Initialize  
    isErr_ = 0  
    NoAllowExt=""        ''黑名单,可以在这里预设不可上传的文件类型,以文件的后缀名来判断,不分大小写,每个每缀名用;号分开,如果黑名单为空,则判断白名单  
    NoAllowExt=LCase(NoAllowExt)  
  
    AllowExt=allowupfile ''V1.41后续版本改为在基本设置中控制  
''    AllowExt="gif;txt;jpg;jpeg;png;bmp;rar;zip;txt"         ''白名单,可以在这里预设可上传的文件类型,以文件的后缀名来判断,不分大小写,每个后缀名用;号分开  
    ''略  
        Path=GetFilePath(Path)  
        if isAllowExt(File(Item).FileExt) then  
            do  
  
    ''略  
  
%>  
 
 
''国际问题。只是检测代码。并且文件并没改名。 
 
''其他问题:注册会员 提交也是过滤关键字。后台文件配置插入一句话等、  
  
''由于代码太老。所以就不贴了。
 

发表评论