首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 攻擊面縮減實戰:停用不必要的網路庫,唯有「越少越安全」

     編輯:關於SqlServer

現狀調查:90% 的實例不需對外連線

滲透測試發現,企業內超過 90% 的 SQL Server/MSDE 僅供本機應用程式使用,從未接受網路連線,卻預設同時啟用 TCP/IP 與 Named Pipes,暴露於掃描、暴力破解、緩衝區溢出等風險。

核心對策:僅保留 Shared Memory Net-Lib

Shared Memory 僅允許本機進程通訊,不開放任何網路連線。對於不需對外服務的實例,應停用所有網路庫。

SQL Server:Server Network Utility 操作

  1. 開啟 Server Network Utility → 選取目標實例。
  2. Enabled Protocols 中取消勾選 TCP/IP、Named Pipes 等所有網路協定。
  3. 重啟 SQL Server 服務生效。

MSDE:無 GUI 時修改登錄

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib\ProtocolList

編輯 REG_MULTI_SZ 值,刪除 tcp、np 等資料,重啟服務。

連線字串調整

停用網路庫後,本機連線必須使用 . 或 (local) 作為伺服器名稱,指引用戶端改用 Shared Memory 協定。

開發人員教育與預設值變更

  • 通知開發團隊正確連線字串寫法。
  • 建議將「停用網路庫」列為所有新增 SQL Server/MSDE 安裝的預設安全基線。

最小化攻擊面是資安基石。對不需對外服務的資料庫實例,大膽關閉網路協定,強制走 Shared Memory,能以近乎零成本消除整類遠端攻擊向量。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved