Windows-Server-2003
對於訪問未經身份驗證的內部 wcf 服務的外部 IIS Web 伺服器,我應該有多偏執?
環境:
- Web 和應用伺服器是 Windows Server 2003 Enterprise / IIS 6
- Web 伺服器位於防火牆後面 - 埠 80 和 443 向全世界開放。
- WebServer 和 AppServer 之間的流量通過防火牆,只有 80 埠是開放的
- Web 伺服器外部網站呼叫應用伺服器上的 WCF 服務。這些 WCF 服務呼叫完全未經身份驗證 - 但對數據庫伺服器執行非常關鍵的數據更新。
我假設(如果我錯了,請糾正我)破壞網路伺服器需要從外部世界沿埠 443 或 80 進行攻擊——因此它需要 IIS 漏洞利用來破壞伺服器。
問題:
- 在處理關鍵數據時,這種配置有多糟糕?
- 如果網路伺服器受到威脅,是否可以採取任何措施來減輕其影響並在大多數情況下防止任意呼叫 WCF 服務?
- 是否有歷史 IIS 漏洞的“典型”影響列表?
確保設置域和伺服器隔離將保護兩台伺服器之間的流量。只要您的開發人員使用正確的注入預防技術,我可以看到能夠呼叫 WCF 的唯一方法是通過遠端程式碼執行漏洞。這些並沒有太多,即使沒有打更新檔,我認為它們都使用與您的工作程序身份相同的權利(根據最佳實踐應該鎖定)。
我強烈建議您查看模式和實踐組的WCF 安全指南,為 WCF 實現安全性非常容易(想到簡單的消息簽名),不需要對流量進行身份驗證(但是域和伺服器隔離自動實現,而不影響應用程序)