|
漏洞说明:历经数年开发与完善的”PHP168整站系统”是国内最早的多功能模块化 网站管理软件系统;不仅适合于建设一般的企业、政府、学校、个人等小型网站,同时也适合于建设地区门户、行业门户、收费网站等大中型网站,80sec在其 产品中发现了一个严重的SQL注射漏洞,可能被恶意用户查询数据库的敏感信息,如管理员密码,加密key等等,从而控制整个网站。
漏洞厂商:http://www.php168.com
漏洞解析:在系统的jsarticle.php中,使用了urldecode用来解码用户提交的数据,但是在使用该函数之后并没有做进一步的有效性验证,从而导致精心构造的数据可以饶过系统的过滤以及php的Magic Quote保护,漏洞部分代码如下:
以下是引用片段:
elseif($type==’like’)
{
$SQL.=" AND aid!=’$id’ ";
if(!$keyword)
{
extract($db->get_one("SELECT keywords AS keyword FROM {$pre}article WHERE aid=’$id’"));
}
if($keyword){
$SQL.=" AND ( ";
$keyword=urldecode($keyword);
$detail=explode(" ",$keyword);
unset($detail2);
foreach( $detail AS $key=>$value){
$detail2[]=” BINARY title LIKE ‘%$value%’ “;
}
$str=implode(” OR “,$detail2);
$SQL.=” $str ) “;
}else{
$SQL.=” AND 0 “;
}
$ORDER=’ list ‘;
}
if(!$webdb[viewNoPassArticle]){
$SQL.=’ AND yz=1 ‘;
}
$SQL=” WHERE $SQL ORDER BY $ORDER DESC LIMIT $rows”;
$which=’*’;
$listdb=list_article($SQL,$which,$leng);
keyword被urldecode然后进入list_article函数,提交%2527将导致一个’进入SQL查询
在artic_function.php中的list_article函数如下
以下是引用片段:
function list_article($SQL,$which=’*’,$leng=40){
global $db,$pre;
$query=$db->query("SELECT $which FROM {$pre}article $SQL");
while( $rs=$db->fetch_array($query) ){
if($rs[mid]){
$_rss=$db->get_one(”SELECT * FROM {$pre}article_content_{$rs[mid]} WHERE aid=’$rs[aid]‘ LIMIT 1″);
$_rss && $rs=$rs+$_rss;
}
$rs[content]=@preg_replace(’/<([^<]*)>/is’,””,$rs[content]); //把HTML代码过滤掉
//如果文章有短标题,将以此显示在文章列表
if($rs[smalltitle]){
$title=$rs[smalltitle];
}else{
$title=$rs[title];
}
$rs[title]=get_word($rs[full_title]=$title,$leng);
if($rs[titlecolor]||$rs[fonttype]){
$titlecolor=$rs[titlecolor]?”color:$rs[titlecolor];”:”;
$font_weight=$rs[fonttype]==1?’font-weight:bold;’:”;
$rs[title]=”$rs[title]“;
}
$rs[posttime]=date(”Y-m-d”,$rs[full_posttime]=$rs[posttime]);
if($rs[picurl]){
$rs[picurl]=tempdir($rs[picurl]);
}
$listdb[]=$rs;
}
return $listdb;
}
直接进入SQl查询,导致注射漏洞的产生。
| 新云CMS Online.asp页面过滤不严 | 02-26 |
| 对网软网上购物系统的漏洞分析 | 01-09 |
| 测试SQL防注入脚本 | 12-21 |
| Google Xss又出跨站新漏洞 | 11-06 |
| 一次简单的html injection导致的 | 11-06 |
| 风讯、科讯漏洞利用 | 11-01 |
| Adobe pdf reader URI利用方式浅 | 10-23 |
| 超星阅览器的最新0DAY | 10-19 |
| 运用SQL Injection做数据库渗透的 | 09-22 |
| sa-blog 0day | 09-22 |
| HTML注入的一些简单想法 | 09-10 |
| 网站登陆接口的攻与防 | 09-04 |