当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(2) 关注此漏洞

缺陷编号: WooYun-2011-02822

漏洞标题: WiiNews(Mobile新闻系统) -- 注入漏洞

相关厂商: wiipu微普科技

漏洞作者: 路人甲

提交时间: 2011-09-14 21:56

公开时间: 2011-09-14 22:20

漏洞类型: SQL注射漏洞

危害等级: 高

自评Rank: 10

漏洞状态: 未联系到厂商或者厂商积极忽略

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 help@wooyun.org

Tags标签: php+数字类型注射 注射技巧 防注入程序绕过 php源码审核 sql注射漏洞利用技巧 防注入绕过

0人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2011-09-14: 积极联系厂商并且等待厂商认领中,细节不对外公开
2011-09-14: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

漏洞文件:newsDetail.php
漏洞类型:sql注入漏洞
漏洞发现:Fa1c0n
Sql注射漏洞,爆出数据库结构, 主机相关信息,导致信息泄漏,导致大量用户信息泄漏。

详细说明:

代码片段:

" ?>



$id=sqlReplace(Trim($_GET['id']));



$sqlStr="select * from wiinews_news where news_id=$id";



$result = mysql_query($sqlStr) or die ("查询失败,请检查SQL语句。编码号:1010");



$row = mysql_fetch_array($result);

.....

.....

后面代码省略...



$id=sqlReplace(Trim($_GET['id']));

我们看下sqlReplace函数做了些什么



代码片段:

function sqlReplace($str)



{



$strResult = $str;



if(!get_magic_quotes_gpc())

//如果gpc没有开的话

{



$strResult = addslashes($strResult);

//编码

}



return HTMLEncode($strResult);

//gpc开的话,返回HTMLEncode()

}



function HTMLEncode($str){



if (!empty($str)){



$str=str_replace("&","&",$str);



$str=str_replace(">",">",$str);



$str=str_replace("<","<",$str);



$str=str_replace(CHR(32)," ",$str);



$str=str_replace(CHR(9)," ",$str);



$str=str_replace(CHR(9)," ",$str);



$str=str_replace(CHR(34),""",$str);



$str=str_replace(CHR(39),"'",$str);



$str=str_replace(CHR(13),"",$str);



$str=str_replace(CHR(10),"

",$str);



}



//看到了,只拦截了引号,空格,并没有拦截类似and,select的函数

return $str;



}

漏洞证明:

我们可以构造newsDetail.php?id=1+AND+1=1来进行sql注入。

修复方案:

多做过滤

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝

漏洞Rank:5 (WooYun评价)


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):
登陆后才能进行评分

评价

登录后才能发表评论,请先 登录