• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    軟件測試開發技術SQL Server:越“少”才會越安全

    發布: 2009-10-14 09:59 | 作者: 不詳 | 來源: 領測軟件測試網采編 | 查看: 11次 | 進入軟件測試論壇討論

    領測軟件測試網

    軟件測試開發技術SQL Server:越“少”才會越安全 SQL Server數據庫

    關鍵字:sql 說句實話,你公司中安裝的大多數的SQL Server都可歸結為以下兩種中的一種。第一種類型就是安裝了SQL Server的開發人員用的機器(即,多種安裝類型中的一種——桌面版本,標準版本,企業版本或者明顯的開發版)。第二種類型就是微軟的SQL Server桌面引擎(MSDE)的供各種應用程序使用的各種安裝,其中包括使用MSDE作為信息存儲的備份、網絡管理或者其他的工具包。這兩種類型的變化之中有一個共同點,就是大多數都完全不需要外在的連接,除了通過主機上駐留的應用程序。

      現在,做個簡單測試:有多少不需要接受來自網絡中其他機器的連接的安裝總是在監聽那些連接?答對了——幾乎全部都是。在最近的一項滲透測試活動中,我發現公司中大約有90%的SQL Server安裝只被安裝在同一臺機器上的軟件使用,從來沒有接受過網絡中其他機器的連接。此外,在這90%里面,除了2臺機器之外都同時有TCP/IP和netlibs (命名管道網絡庫)在啟用和監聽。

      這里我們有一個非常好的有關過分表面領域的例子。就是說,當機器暴露在這個層次上的時候沒有調用任何的相關措施,那么遇到偶然的發現、暴力攻擊,以及可能的遠程緩沖溢出攻擊就是明顯了。最近,對于MSDE Release A ,微軟開始在缺省情況下安裝MSDE的時候不再啟用任何的netlibs ,以便于幫助您最小化暴露的表面區域。然而,許多MSDE較老的安裝仍舊如此,并且持續監聽。

      過分的netlib 支持問題的解決方案是簡單的。任何不需要外界連接的SQL Server或者MSDE實例都應該禁用所有的netlibs ,除非是共享內存netlibs ,這個在缺省情況是開啟的。共享內存netlib只在與使用它們的應用程序在同一臺機器上,并且不允許來自外界主機的連接的SQL Server環境中存在。

      如果你使用的是SQL Server,修正是非常簡單的。只要為你想要保護的每個SQL Server實例中載入Server Network Utility并且禁用所有的netlibs (在“啟用協議”中)即可。然后,停止并重新開始SQL Server實例,以便于修改生效。

      如果你使用的是MSDE,你就得費一點事。當然,如果在同一臺機器上存在SQL Server安裝,并且Server Network Utility也是安裝的,你就可以在下拉列表中看到MSDE實例。然而,你可以用與前面描述的針對SQL Server實例完全一樣的方式刪除netlibs 。

      如果你沒有訪問主機上的Server Nerwork Utility,那么你需要編輯注冊表鍵值來直接控制對netlib 的支持。這個鍵位于

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServerSuperSocket\NetLibProtocolList

      只是編輯那里的REG_MULTI_SZ ,刪除任何數值數據(TCP/IP 和命名管道在默認情況下是“tcp np”)。再一次,你需要停止并重新開始MSDE實例,以便于修改生效。

      將所有的netlibs 都禁用了之后,只有共享內存netlib還能夠與SQL Server進行通信。這對于理解netlib 和你的應用程序非常重要:為了連接到本地SQL Server/MSDE實例上,你不能再使用本地機器的名字(或者IP地址)作為連接字符串中的服務器的名字。你需要用點“.”或者單詞"(local)"來置換服務器名字或者IP地址。一些應用程序的行為彼此不同,那么需要確保徹底地進行測試。使用那些字符串中的某一個作為服務器的名字可以告訴本地SQL Server客戶端網絡子系統使用共享內存netlib 來替代基于網絡的庫。

      現在你知道了如何移動netlib ,同時還仍然連接到SQL Server實例上,你應該告訴你的開發人員這是如何完成的,因為他們很有可能安裝本地SQL Server/MSDE環境的次數最多。讓環境不再監聽可以保護他們在遠程位置、熱點或者其他公共環境中的時候不受到攻擊,而在這些環境中,他們很有可能會受到攻擊。最小化表面區域是安全難題中的一個關鍵部分,讓這個方法成為所有的新的SQL Server/MSDE安裝的默認選擇可以很大限度的堅固你的基礎設施。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: server Server SERVER sql SQL Sql 技術 開發 軟件測試


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>