歡迎您光臨本站 註冊首頁

Sybase ASE安全「著陸」Linux

←手機掃碼閱讀     火星人 @ 2014-03-12 , reply:0
  在各種操作系統中,這兩年的流行色是Linux。越來越多的主流資料庫廠商將它們的產品移植到Linux操作系統平台。現在Linux平台上的資料庫產品有Oracle for Linux、Sybase ASE for Linux、Informix for Linux等,它們都是自由軟體。在這幾種產品中,Sybase ASE是一個非常不錯的選擇。它緊湊的程序分發包里包含了全部的文檔、資料庫備份、監視等工具,同時它對系統的要求不高。它的安裝、配置過程與其它產品相比也顯得簡單易行。

  資料庫應用採用客戶端/伺服器(C/S)架構,伺服器端在某一個埠監聽網路連接請求。客戶端申請連接,輸入合法的用戶名和相應的口令,進入伺服器,然後運行需要的命令。這樣,在資料庫用戶的配置管理方面如果出現安全漏洞,勢必會給系統和數據帶來非常大的威脅。ASE for Linux在正常安裝完成後,資料庫超級用戶的賬號沒有設置口令。這樣,互聯網上每一個知道伺服器埠號的用戶或者本機上的所有可登錄用戶,都可以以超級用戶身份對資料庫隨意操作。所以管理員在將資料庫連上網路之前,一定要設置好包括超級用戶口令和其它賬號許可權在內的安全防線,否則,上網的資料庫將是一個「不設防城市」!

  接下來介紹一下ASE for Linux的安裝過程和配置,並分析預設配置下的安全問題以及相應的安全加強措施。

  ASE for Linux的應用

  首先需要下載ASE for Linux軟體包,互聯網上可以比較容易找到RPM格式的二進位發行包,包括sybase-ase-11.0.3.3-1.i386.rpm(主程序包)、sybase- doc-11.0.3.3-1.i386.rpm(文件包)。RPM是Redhat公司的軟體包管理程序,使用它可以非常方便地安裝、卸載程序包,並保持它們之間的依賴關係。

  然後,以超級用戶的身份鍵入命令:

  #rpm -i sybase-ase-11.0.3.3-1.i386.rpm

  之後按照提示操作。我們可以sybase登錄繼續配置,也可以使用 #su - s ybase 改變身份來繼續對sybase進行安裝。屏幕上將會看到:

  1.Release directory:/opt/sybase

  2.Edit / View Interfaces File

  3.Configure a Server product

  4.Configure an Open Client/Server product

  Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help.

  Enter the number of your choice and press return:

  選擇3來配置伺服器,在該選項中將會一同配置伺服器監聽埠。接下來可以配置一個新的SQL伺服器。配置備份伺服器可以在SQL伺服器配置完成後再來。由於是第一次安裝,所以選擇配置新的伺服器。

  下面的屏幕提示要求選擇伺服器的名字,預設為Sybase。這與Sybase的互動式訪問工具isql的預設伺服器名字是一致的。

  ADD NEW SQL SERVER

  SQL Server name:SYBASE

  接下來的配置關係到了資料庫的具體細節,包括埠號、設備、語言、字符集等。

  按照提示繼續作下去,依次分別是配置SYBASE系統進程資料庫、錯誤日誌、預設備份伺服器、字符集、資料庫排序、激活審計等。其中的預設備份伺服器和激活審計配置對於資料庫安全較為重要。備份伺服器在管理員希望對資料庫進行備份時需要。

  安全加強措施

  按照信任計算機系統評估標準DoD52.00.28-STD,也就是通常所說的桔皮書,Sybase ASE的設計標準為C2級,它提供了四種安全機制,分別是訪問控制、認證控制、角色劃分、資料庫審計。具體說,Sybase資料庫系統設定了三種主要角色:系統管理員(sa_role),系統安全員(sso_role),系統操作員(oper_role)。資料庫審計系統可以對系統的登錄、退出、資料庫啟動、遠程過程調用、角色的變化、對各種對象的訪問等操作提供記錄和審查。

  下面總結以下三種角色的各自主要權利和任務:

  * sa_role:管理磁碟使用,改變系統各種運行參數,診斷系統出現的各種問題,備份和恢復資料庫,對其他用戶賦予或者取消sa-role,創建用戶資料庫並為它們授予合適的屬主,建立用戶組,等等。

  * sso-role:創建登錄賬號並初始化口令,更改其他所有賬號的口令,對其他用戶賦予或者取消sso-role以及oper-role,設定口令時限以及管理審計系統等。

  * oper-role:備份和恢復各種資料庫。

  Sybase ASE在安裝完成時在系統中創建了用戶sa,它同時具有sa-role和ss o-role兩種角色。從上面的許可權說明中,大家可以看到此時的用戶「sa」在伺服器中具有無限的權利,相當於一般Unix系統的root,一個沒有口令的root! 這樣,任何蓄意的聯網用戶都可以完全控制該SQL伺服器。為此,強烈建議管理員在完成下面的安全配置之前切勿將伺服器接入網路!

  首先,利用Sybase提供的互動式訪問工具isql連接伺服器。鍵入以下命令:

  $/opt/sybase/bin/isql -Usa -P -Smysybase

  表示以用戶sa、空口令連接伺服器mysybase。更改sa的口令。

  〉sp_password NULL,"NewPassWd"

  〉go

  將原來的空口令(NULL)改為當前的「NewPassWd"。這裡的口令最少為6個字元長度,可以由任何可列印字元、字母、數字等組成。

  角色的劃分可以說是Sybase資料庫相對於普通Unix系統在安全體制方面的進步。大家知道,擁有無限權利的超級用戶一方面是系統的保護者,但是更多的時候是給系統的安全帶來了巨大的安全威脅。簡單說,超級用戶一個低級的誤操作就可能毀掉整個伺服器。從攻擊的角度講,攻擊者只要獲得了超級用戶的身份就表明他已經徹底攻克了該系統。而對於經過特權分割安全加固的系統來說,攻擊者必須將若干個特權用戶全部破解,才能夠完全控制該系統。可以說超級權利用戶的存在是區分C級和B級安全系統的一個重要標誌。

  建議伺服器管理員在設置sa賬號的口令以後,通過創建新用戶和分別sa的角色並關閉sa進一步加強伺服器的安全。Sybase提供了幾個相應的命令sp_addlogi n, sp_role等來完成上述操作。

  〉sp_addlogin sa_user,「Sa,PassW」

  〉sp_addlogin sso_user,「Sso,Pass」

  〉sp_role「grant」,sa_role,sa_user

  〉sp_role 「grant」,sso_role,sso_user

  〉sp_locklogin sa,「lock」

  上述命令創建了兩個用戶sa_user、sso_user,並分別設置了口令「Sa,Pass W」、「Sso,Pass」和角色sa_role、sso_role,然後關閉了賬號sa。


[火星人 ] Sybase ASE安全「著陸」Linux已經有610次圍觀

http://coctec.com/docs/linux/show-post-74268.html