• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php代码审计-下载站系统Simple Down v5.5.1 xss跨站漏洞分析

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

author:zzzhhh

一、        跨站漏洞

利用方法1,直接在搜索框处搜索<script>alert(/xss/)</script>//',再次刷新,跨站语句将被带入数据库,并直接在热门搜索处输出。

 

漏洞产生原因,因为未对输入变量进行编码,跨站语句未经转换直接存储入数据库中。见图1,


图1

二、代码分析
先看index.php  53-54行代码是这么写的,javascript获取ID为search的input表单传参到tools.php文件中的seacher变量中。。。

        <input  type="text" />
        <button type="button" style="width:80px;height:35px" onClick="javascript:send_request('tools.php?seacher='+document.getElementById('search').value);">搜索</button>  
       。。。。省略N行
      //63-65行代码
       <?php echo $row['SEACHERDATA']; ?> //输出变量SEACHERDATA
            <span class='hover-animate-left'></span><span class='hover-animate-right'></span></a>  
      <?php } ?>

那我们根据seacher,SEACHERDATA两个变量在\tools.php文件中进行搜索后 ,关键代码34-61行代码,好吧,我把整段选择结构的代码发过来吧

if (empty($seacher))      
{
        $result=mysql_query("SELECT * FROM HBDX_BLUE ".$show);    
        $num_max=mysql_num_rows($result); 

        $result=mysql_query("SELECT * FROM HBDX_BLUE ".$show." ORDER BY TOP ".$hot." LIMIT $startCount,$perNumber"); 
}
else
{        
        $datetime = date("Y-m-d H:i:s");
        $seacherresult = mysql_query("SELECT * FROM HBDX_SEACHER WHERE SEACHERDATA = '".$seacher."'"); /*查询SEACHERDATA表内的内容输出到seacherresult变量*/
        $seachernum = mysql_num_rows($seacherresult);  /*统计搜索次数*/
        if($seachernum == 0)
        {
                mysql_query("INSERT INTO HBDX_SEACHER (SEACHERDATA,SEACHERNUM,DATETIME) VALUES ('$seacher',1,'$datetime')");  /*查询热门搜索关键词次数为0后,将该关键字写入表SEACHERDATA内*/
        }
        else
        {
                $row = mysql_fetch_array($seacherresult);  /*遍历seacherresult变量结果赋值到row中*/
                mysql_query("UPDATE HBDX_SEACHER SET SEACHERNUM = '".($row['SEACHERNUM'] + 1)."' WHERE SEACHERDATA = '".$seacher."'");
        }

        $result=mysql_query("SELECT * FROM HBDX_BLUE WHERE FILETITLE LIKE '%".$seacher."%'"); 
        $num_max=mysql_num_rows($result); 

        $result=mysql_query("SELECT * FROM HBDX_BLUE WHERE FILETITLE LIKE '%".$seacher."%' OR FILETAG LIKE '%".$seacher."%' ORDER BY TOP,ID DESC LIMIT $startCount,$perNumber"); 
        $num=mysql_num_rows($result); 
}

 http://www.wooyun.org/bugs/wooyun-2010-037204  
wooyun 这篇关于此系统的漏洞提交迟迟不公开。小弟打算开个下载站,选择了Simple Down v5.5.1这个系统,无奈只能自己亲自动手,才疏学浅,哪位兄弟可随我一同继续深入分析此系统漏洞?


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
微博短链接算法php版本发布时间:2022-07-10
下一篇:
Android与PHP服务器交互发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap