我打算製作一個硬編碼的VB.Net應用程序,以訪問遠程託管在Web服務器上的MS SQL數據庫。是否有某種方式讓某人在客戶端PC上使用某些數據包嗅探(我認爲它被稱爲)程序以某種方式知道用於訪問數據庫的密碼?我不需要知道它是如何完成的,我只需要知道是否可以完成,以便我知道我的方法是否足夠安全。遠程訪問時的MS SQL安全性
謝謝!
我打算製作一個硬編碼的VB.Net應用程序,以訪問遠程託管在Web服務器上的MS SQL數據庫。是否有某種方式讓某人在客戶端PC上使用某些數據包嗅探(我認爲它被稱爲)程序以某種方式知道用於訪問數據庫的密碼?我不需要知道它是如何完成的,我只需要知道是否可以完成,以便我知道我的方法是否足夠安全。遠程訪問時的MS SQL安全性
謝謝!
如果你只關心保護登錄到數據庫中,那麼你就OK,根據this MSDN article:被髮送
憑據(在登錄數據包),當客戶端應用程序連接到SQL服務器始終是加密的。
但是,如果你還在乎保護數據,那麼你應該閱讀上面的MSDN鏈接的其餘部分,以瞭解啓用SSL來保護數據流的其餘部分。
還請注意this older article它給出了使用ODBC連接(而不是本地tyep)的警告。我懷疑你會這樣做,但只是想我會提到它。
從客戶端機器,您的數據庫信息不可能被嗅探。但是,如果您的應用程序「泄漏」了信息,外部人員可能會獲取有關您的數據庫的敏感信息。例如,如果將CustomErrors參數設置爲「Off」,並且數據庫由於任何原因而無法訪問,則用戶可能會看到數據庫的地址,然後可以繼續使用蠻力或已知漏洞攻擊它。還有其他方法可以泄漏敏感信息,這僅僅是一個例子。
一般來說,將數據庫打開到互聯網並不理想 - 通常建議您的數據庫在一個(或者DMZ的情況下)防火牆後面。如果你能控制這個,你應該把它移到更安全的地方。否則,即使沒有你的應用程序泄露其地址,端口掃描「戰爭撥號程序」最終會發現它並警告「壞人」它的存在。
感謝您的信息。我意識到一個足夠積極的黑客會找到一種方法來破解我的數據。然而,我們並不是在談論非常敏感的數據,這會給有足夠動力的人投入很多精力。我擔心的是一些易於使用,易於使用的應用程序,它可以快速顯示我的應用程序使用的連接字符串,並提供訪問整個數據。 – Osprey 2013-05-09 06:00:21
web.config很好的保護了框架,但我相信在一個點上有一個漏洞可以讓攻擊者遠程查看它。你可以看看加密連接字符串,可以保護它更多.. – mikey 2013-05-09 13:12:43
由於這是一個編譯的exe應用程序,它不需要web.config文件。感謝您的提示,但! :) – Osprey 2013-05-10 05:36:44
謝謝。我不關心用戶看到來回傳輸的數據,因爲用戶非常瞭解這些信息。令我擔心的是,通過一些現成的軟件,用戶可以看到連接字符串,使他/她能夠查看他/她無權獲得的其他數據庫信息(例如其他用戶的數據)。也就是說,我不希望人們花費太多的精力來獲取數據(這裏沒有軍事機密)。所以這回答我的問題! :) – Osprey 2013-05-09 05:56:08