全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2648
推到 Plurk!
推到 Facebook!

中聯綠盟資訊技術 技術篇

 
jackkcg
站務副站長


發表:891
回覆:1050
積分:848
註冊:2002-03-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-20 01:32:31 IP:61.64.xxx.xxx 未訂閱
中聯綠盟資訊技術    http://www.nsfocus.com    有興趣之人請自行至原網站觀摩 理面有粉多 防駭安全機制文章    <iframe width=800 height=600 src="http://www.nsfocus.com/"></iframe> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 此為轉貼資料 (c)版權所有 1999-2003,中聯綠盟資訊技術(北京)有限公司 綠盟科技緊急公告(Alert2003-zh-01) Nsfocus安全小組(security@nsfocus.com) http://www.nsfocus.com 新SQL蠕蟲緊急公告! 發佈日期:2003-01-25 受影響的軟體及系統: ==================== Microsoft SQL Server 2000 SP2 Microsoft SQL Server 2000 SP1 Microsoft SQL Server 2000 Desktop Engine Microsoft SQL Server 2000 - Microsoft Windows NT 4.0 SP6a - Microsoft Windows NT 4.0 SP6 - Microsoft Windows NT 4.0 SP5 - Microsoft Windows NT 4.0 - Microsoft Windows 2000 Server SP3 - Microsoft Windows 2000 Server SP2 - Microsoft Windows 2000 Server SP1 - Microsoft Windows 2000 綜述: ====== 綠盟科技安全小組監測到一種針對Microsoft SQL Server 2000的蠕蟲正在活躍,危害極大。 綠盟科技安全小組專門為此免費提供了檢測Microsoft SQL Server漏洞的掃描工具。可以到如下位址下載: http://www.nsfocus.net/tools/SQLWormScanner.exe 更新記錄: 2003-01-26 13:50 更新了安全補丁資訊和解決方案;增加了對該蠕蟲代碼的分析;增加了一個專門查找該漏洞的工具。 分析: ====== 北京時間2003年01月25日14時許,綠盟科技安全小組監測到忽然發生了世界範圍的大規模網路訪問速度減慢甚至阻塞的情況,經過綠盟科技安全小組對捕獲的資料樣本分析和研究,已經明確,這是一種新出現的針對Microsoft SQL Server 2000的蠕蟲。 該蠕蟲本身非常小,僅僅是一段376個位元組的資料。利用的安全漏洞是"Microsoft SQL Server 2000 Resolution服務遠端棧緩衝區溢出漏洞"(http://www.nsfocus.net/index.php?act=sec_bug&do=view&bug_id=3148)。 蠕蟲利用的埠是UDP/1434,該埠是SQL Server Resolution服務。Microsoft SQL Server 2000支援在單個物理主機上伺服多個SQL伺服器的實例,每個實例操作需要通過單獨的服務,不過多個實例不能全部使用標準SQL服務會話會話埠(TCP 1433),所以SQL Server Resolution服務操作監聽在UDP 1434埠,提供一種使用戶端查詢適當的網路末端用於特殊的SQL服務實例的途徑。 當SQL Server Resolution服務在UDP 1434埠接收到第一個位元組設置為0x04的UDP包時,SQL監視線程會獲取UDP包中的資料並使用此用戶提供的資訊來嘗試打開註冊表中的某一鍵值,如發送\x04\x41\x41\x41\x41類似的UDP包,SQL服務程式就會打開如下註冊表鍵: HKLM\Software\Microsoft\Microsoft SQL Server\AAAA\MSSQLServer\CurrentVersion 攻擊者可以通過在這個UDP包後追加大量字串資料,當嘗試打開這個字串相對應的鍵值時,會發生基於棧的緩衝區溢出,通過包含"jmp esp"或者"call esp"指令的位址覆蓋棧中保存的返回位址,可導致以SQL Server進程的許可權在系統中執行任意指令。 蠕蟲溢出成功取得系統控制權後,就開始向隨機IP位址發送自身,由於這是一個閉環的過程,發包密度僅和機器性能和網路帶寬有關,所以發送的資料量非常大。在綠盟科技安全小組的測試中,和被感染機器在同一網段的每一台分析機每秒鐘都收到了近千個資料包。 該蠕蟲對被感染機器本身並沒有進行任何惡意破壞行為,也沒有向硬碟上寫檔,僅僅存在與記憶體中。對於感染的系統,重新啟動後就可以清除蠕蟲,但是仍然會重複感染。由於發送資料包佔用了大量系統資源和網路帶寬,形成Udp Flood,感染了該蠕蟲的網路性能會極度下降。一個百兆網路內只要有一兩台機器感染該蠕蟲就會導致整個網路訪問阻塞。 蠕蟲代碼分析: 以下地址以以未打sql server service pack的為准。 溢出是用sprintf( )的格式串bug覆蓋了ssnetlib.dll中如下函數的返回位址。將返回地址指向sqlsort.dll中檔偏移位址為0x2C9DC處的一條JMP ESP指令,實際上該處是sqlsort.dll的資料區,只不過資料FF E4正好也是JMP ESP這條指令的機器碼。 第N個包的目的IP位址 = (107005的N次方) 乘以 (seed) + N 乘以 C,C = GetProcAddress這個函數的起始虛擬位址與一個常數FFD9613C異或的結果,所以C只取決於OS類型和Service pack號。在win2k sp3中,C = 8831FA24。 * Referenced by a CALL at Address: |:42CFACC3 | :42CFB392 55 push ebp :42CFB393 8BEC mov ebp, esp ...........................................................................//此處省略 * Referenced by a (U)nconditional or (C)onditional Jump at Address: |:42CFB562(C) | :42CFB58E 8B8538DBFFFF mov eax, dword ptr [ebp+FFFFDB38] :42CFB594 50 push eax * Possible StringData Ref from Data Obj ->"SOFTWARE\Microsoft\Microsoft SQL " ->"Server\" | :42CFB595 68000BD042 push 42D00B00 * Possible StringData Ref from Data Obj ->"%s%s\MSSQLServer\SuperSocketNetLib\" | :42CFB59A 682C0BD042 push 42D00B2C :42CFB59F 8D8DFCD6FFFF lea ecx, dword ptr [ebp+FFFFD6FC] :42CFB5A5 51 push ecx * Reference To: MSVCRT.sprintf, Ord:02B2h | :42CFB5A6 FF1510E1CF42 Call dword ptr [42CFE110] :42CFB5AC 83C410 add esp, 00000010 :42CFB5AF 8B9538DBFFFF mov edx, dword ptr [ebp+FFFFDB38] :42CFB5B5 52 push edx * Possible StringData Ref from Data Obj ->"SOFTWARE\Microsoft\Microsoft SQL " ->"Server\" | :42CFB5B6 68500BD042 push 42D00B50 * Possible StringData Ref from Data Obj ->"%s%s\MSSQLServer\CurrentVersion" | :42CFB5BB 687C0BD042 push 42D00B7C :42CFB5C0 8D857CFFFFFF lea eax, dword ptr [ebp-84] <--------利用這個局部緩衝區的溢出來覆蓋返回位址 :42CFB5C6 50 push eax * Reference To: MSVCRT.sprintf, Ord:02B2h | :42CFB5C7 FF1510E1CF42 Call dword ptr [42CFE110] :42CFB5CD 83C410 add esp, 00000010 * Referenced by a (U)nconditional or (C)onditional Jump at Address: |:42CFB58C(U) | :42CFB5D0 8D8D00DBFFFF lea ecx, dword ptr [ebp+FFFFDB00] :42CFB5D6 51 push ecx :42CFB5D7 6819000200 push 00020019 :42CFB5DC 6A00 push 00000000 :42CFB5DE 8D957CFFFFFF lea edx, dword ptr [ebp+FFFFFF7C] :42CFB5E4 52 push edx :42CFB5E5 6802000080 push 80000002 * Reference To: ADVAPI32.RegOpenKeyExA, Ord:0172h | :42CFB5EA FF1518E0CF42 Call dword ptr [42CFE018] 解決方法: ========== * 通用解決方案: 我們建議所有運行Microsoft SQL Server 2000和近期發現網路訪問異常的用戶按照以下解決方案操作: 1、在邊界防火牆或者路由器上阻塞外部對內和內部對外的UDP/1434埠的訪問 根據Cisco的安全公告,可以使用下列命令來完成對UDP/1434埠的阻塞的操作: 對交換機(以6500系列為例): 配置: set security acl ip WORM deny udp any eq 1434 any set security acl ip WORM deny udp any any eq 1434 set security acl ip WORM permit any commit security acl WORM set security acl map WORM 設置埠為vlan based: set port qos vlan-based 驗證: show security acl info all 刪除: clear security acl WORM commit security acl WORM 對路由器: access-list 115 deny udp any any eq 1434 access-list 115 permit ip any any int ip access-group 115 in ip access-group 115 out 2、找到被感染的主機 在邊界路由器(或者防火牆)上進行檢查,也可啟動網路監視程式(譬如Sniffer Pro)進行檢查,找到網路中往目的埠為UDP/1434發送大量資料的主機,這些主機極為可能感染了該蠕蟲。 如果不能確定,則認為所有運行Microsoft SQL Server 2000 而沒有安裝補丁程式的機器都是被感染的機器。 可以使用埠掃描程式(譬如Nmap)對UDP/1434埠進行掃描來找到運行Microsoft SQL Server 2000的主機,但是由於UDP埠掃描並不準確,可以掃描TCP/1433埠找到運行SQL Server的主機。但需要注意的是,只有SQL Server 2000才會受到此蠕蟲的感染。 綠盟科技專門設計的用於查找存在該漏洞主機的工具: http://www.nsfocus.net/tools/SQLWormScanner.exe 3、拔掉被感染主機的網線。 4、重新啟動所有被感染機器,以清除記憶體中的蠕蟲。關閉SQL Server服務以防止再次被蠕蟲感染。 5、插上被感染機器的網線 6、為被感染機器安裝最新的Microsoft SQL Server 2000 Service Pack: 建議安裝Microsoft SQL Server 2000 SP3(http://www.microsoft.com/sql/downloads/2000/sp3.asp)。 或者至少應該下載針對該漏洞的熱修復補丁: http://www.microsoft.com/Downloads/Release.asp?ReleaseID=40602 安裝此補丁必須先安裝Microsoft SQL Server 2000 SP2(http://www.microsoft.com/sql/downloads/2000/sp2.asp) 注意:如果由於某種原因無法從網路下載補丁進行安裝,因此可以在其他未被感染的主機上下載補丁,刻錄在光碟或者保存在其他移動介質上,然後再到被感染的主機上進行安裝。 * 如果由於某種原因不能及時安裝補丁,可暫時使用系統上的TCP-IP篩選來阻塞對本機UDP/1434埠的訪問,但我們並不推薦這樣做。注意!使用TCP-IP篩選阻塞UDP可能導致某些網路應用異常。 TCP-IP篩選操作步驟: 打開"控制面板"-->"網路和撥號連接",找到需要設置TCP-IP篩選的網卡,單擊右鍵,選"屬性",拖動捲軸,找到"Internet 協議(TCP/IP)",在上面雙擊滑鼠,在新出現的視窗中點擊"高級",在"選項"頁中找到"TCP/IP篩選",打開之後點選"啟用 TCP/IP篩選"並找到UDP這一欄,選擇"只允許",然後就可以添加需要使用的UDP埠,凡是不在這個埠範圍內的UDP資料都會被阻塞,如果不添加則阻塞所有UDP埠。 * 某些內部大量感染該蠕蟲的網路在路由器或者邊界防火牆上設置阻塞UDP/1434埠的規則後會導致網路設備CPU資源佔用劇增的現象,在這種情況下,可先拔掉被感染機器的網線,再設定網路設備的過濾規則,待內部所有系統都重新啟動並安裝補丁之後再插上網線。 注:上述步驟僅供參考。 綠盟科技產品的冰之眼IDS(http://www.nsfocus.com/homepage/products/nids.htm)早在該漏洞發佈時(2002年7月)就已經可以檢測此種攻擊,現在又緊急添加了專門針對該蠕蟲的升級包;RSAS(http://www.nsfocus.com/homepage/products/rsas.htm)也早就可以檢測到網路內受該漏洞影響的主機;對於大量的UDP資料流程導致的拒絕服務,黑洞(http://www.nsfocus.com/homepage/products/collapsar.htm)是目前最佳解決方案之一。 附加資訊: ========== Microsoft SQL Server 2000 Resolution服務遠端棧緩衝區溢出漏洞 發佈日期:2002-07-25 更新日期:2002-07-30 受影響系統: Microsoft SQL Server 2000 SP2 Microsoft SQL Server 2000 SP1 Microsoft SQL Server 2000 Desktop Engine Microsoft SQL Server 2000 - Microsoft Windows NT 4.0 SP6a - Microsoft Windows NT 4.0 SP6 - Microsoft Windows NT 4.0 SP5 - Microsoft Windows NT 4.0 - Microsoft Windows 2000 Server SP2 - Microsoft Windows 2000 Server SP1 - Microsoft Windows 2000 描述: -------------------------------------------------------------------------------- BUGTRAQ ID: 5311 CVE(CAN) ID: CAN-2002-0649 Microsoft SQL Server 2000是一款由Microsoft公司開發的商業性質大型資料庫系統。 Microsoft SQL Server 2000的Resolution服務對用戶提交的UDP包缺少正確的處理,遠端攻擊者可以利用這個漏洞進行基於棧的緩衝區溢出攻擊。 Microsoft SQL Server 2000支援在單個物理主機上伺服多個SQL伺服器的實例,每個實例操作需要通過單獨的服務,不過多個實例不能全部使用標準SQL服務會話會話埠(TCP 1433),所以SQL Server Resolution服務操作監聽在UDP 1434埠,提供一種使用戶端查詢適當的網路末端用於特殊的SQL服務實例的途徑。 當SQL Server Resolution服務在UDP 1434埠接收到第一個位元組設置為0x04的UDP包時,SQL監視線程會獲取UDP包中的資料並使用此用戶提供的資訊來嘗試打開註冊表中的某一鍵值,如發送\x04\x41\x41\x41\x41類似的UDP包,SQL服務程式就會打開如下註冊表鍵: HKLM\Software\Microsoft\Microsoft SQL Server\AAAA\MSSQLServer\CurrentVersion 攻擊者可以通過在這個UDP包後追加大量字串資料,當嘗試打開這個字串相對應的鍵值時,會發生基於棧的緩衝區溢出,通過包含"jmp esp"或者"call esp"指令的位址覆蓋棧中保存的返回位址,可導致以SQL Server進程的許可權在系統中執行任意指令。 <*來源:NGSSoftware Insight Security Research (nisr@nextgenss.com) 鏈結:http://archives.neohapsis.com/archives/bugtraq/2002-07/0291.html http://www.microsoft.com/technet/security/bulletin/MS02-039.asp http://www.ngssoftware.com/advisories/mssql-udp.txt *> 建議: -------------------------------------------------------------------------------- 臨時解決方法: 如果您不能立刻安裝補丁或者升級,NSFOCUS建議您採取以下措施以降低威脅: * 在邊界防火牆、閘道設備或者SQL Server主機上限制對UDP/1434埠的訪問。由於UDP報文的源位址很容易偽造,所以不能簡單地限制只允許可信IP訪問。 廠商補丁: Microsoft --------- Microsoft已經為此發佈了一個安全公告(MS02-039)以及相應補丁: MS02-039:Buffer Overruns in SQL Server 2000 Resolution Service Could Enable Code Execution (Q323875) 鏈結:http://www.microsoft.com/technet/security/bulletin/MS02-039.asp 補丁下載: * Microsoft SQL Server 2000: http://www.microsoft.com/Downloads/Release.asp?ReleaseID=40602 參考: ======= http://www.nsfocus.net/index.php?act=sec_bug&do=view&bug_id=3148 http://www.microsoft.com/technet/security/bulletin/MS02-039.asp http://archives.neohapsis.com/archives/bugtraq/2002-07/0291.html http://www.microsoft.com/technet/security/bulletin/MS02-039.asp http://www.ngssoftware.com/advisories/mssql-udp.txt 聲 明 ========== 本安全公告僅用來描述可能存在的安全問題,中聯綠盟資訊技術(北京)有限公司不為此安全公告提供任何保證或承諾。由於傳播、利用此安全公告所提供的資訊而造成的任何直接或者間接的後果及損失,均由使用者本人負責,中聯綠盟資訊技術(北京)有限公司以及安全公告作者不為此承擔任何責任。中聯綠盟資訊技術(北京)有限公司擁有對此安全公告的修改和解釋權。如欲轉載或傳播此安全公告,必須保證此安全公告的完整性,包括版權聲明等全部內容。未經中聯綠盟資訊技術(北京)有限公司允許,不得任意修改或者增減此安全公告內容,不得以任何方式將其用於商業目的。 關 於 我 們 =========== 中聯綠盟資訊技術(北京)有限公司成立於2000年3月,是國內專業從事網路安全服務的高科技企業,致力於網路安全技術研究、網路安全產品開發,提供由網路系統入侵檢測、作業系統安全、網路服務安全、程式安全為重點的整體網路安全方案,並協助建立嚴密的網路安全制度,提高國內的網路安全水平,為客戶提供強有力的安全保障。 中聯綠盟資訊技術(北京)有限公司成立後,其安全技術研究部門對國內外最新的網路系統安全漏洞進行最及時和最緊密的跟蹤,對重大安全問題更成立專項研究小組進行技術攻關,取得了一系列在國內、甚至是國外處於領先水平的優秀成果。安全產品開發部門具有開發網路安全評估系統、網路/系統防火牆、入侵監測系統、內容過濾系統等高技術含量網路安全產品的技術實力和經驗,已經推出了具有國際領先水平的安全產品系列。 中聯綠盟資訊技術(北京)有限公司定位于網路系統安全集成商,提供全面的網路安全整體解決方案、先進的網路安全技術服務和優秀的網路安全產品。 中聯綠盟資訊技術(北京)有限公司聯繫方式: 北京總部: 地址:北京市海澱區北窪路4號益泰大廈5層 郵編:100089 電話:010-68438880 傳真:010-68437328 email:webmaster@nsfocus.com 上海分公司: 地址:上海市南京西路758號晟新大廈24層A座 郵編:200041 電話:021-62179591/92 傳真:021-62176862 廣州分公司: 地址:廣州市人民中路555號美國銀行中心1702 郵編:510180 電話:020-81301251,81301252 傳真:020-81303835 (c)版權所有 1999-2003,中聯綠盟資訊技術(北京)有限公司 ********************************************************* 哈哈&兵燹 最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好 Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知 K.表Knowlege 知識,就是本站的標語:Open our mind to make knowledge together! 希望能大家敞開心胸,將知識寶庫結合一起
------
**********************************************************
哈哈&兵燹
最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好

Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知
K.表Knowlege 知識,就是本站的標語:Open our mind
系統時間:2025-01-30 13:36:27
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!