我正在努力減輕我們對Poodle SSL 3.0 Fallback攻擊的漏洞。我們的管理員已經開始禁用SSL,轉而使用TLS進行服務器的入站連接。我們還建議我們的團隊在其Web瀏覽器中禁用SSL。我現在正在查看我們的.NET代碼庫,它通過System.Net.HttpWebRequest啟動與各種服務的HTTPS連接。我相信如果這些連接允許從TLS回退到SSL,則它們可能容易受到MITM攻擊。這是我到目前為止所確定的。有人可以仔細檢查一下以確認我是對的嗎?這個漏洞是全新的,所以我還沒有看到微軟如何在.NET中緩解它的任何指導:System.Net.Security.SslStream類的允許協議(支持.NET中的安全通信)通過System.Net.ServicePointManager.SecurityProtocol屬性為每個AppDomain全局設置。.NET 4.5中此屬性的默認值是Ssl3 | Tls(雖然我找不到支持它的文檔。)SecurityProtocolType是帶有Flags屬性的枚舉,因此它是這兩個值的按位OR。您可以使用以下代碼行在您的環(huán)境中進行檢查:Console.WriteLine(System.Net.ServicePointManager.SecurityProtocol.ToString());在應用程序中啟動任何連接之前Tls,應該將其更改為正好或者可能Tls12:System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls;重要提示:由于該屬性支持多個按位標志,因此我假設SslStream 在握手期間不會自動回退到其他未指定的協議。否則,支持多個標志會有什么意義?TLS 1.0與1.1 / 1.2的更新:根據Google安全專家Adam Langley的說法,如果沒有正確實施,TLS 1.0后來被發(fā)現容易受到POODLE的影響,因此您應該考慮專門轉移到TLS 1.2。
3 回答

DIEA
TA貢獻1820條經驗 獲得超3個贊
在Windows窗體上,它可以在課程頂部放置
static void Main(string[] args)
{
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
//other stuff here
}
因為windows是單線程的,所以你需要它,如果它是一個服務你需要把它放在服務的調用之上(因為沒有告訴你將在哪個線程)。
using System.Security.Principal
也需要。
- 3 回答
- 0 關注
- 631 瀏覽
添加回答
舉報
0/150
提交
取消