2011-11-04 17 views
0

什麼來實現防篡改連接我的.NET應用程序的最佳途徑。例如,我不希望任何人看到我的應用程序發送到我的服務器..或至少加密數據已經被髮送到服務器..什麼是最好的主意,實施反篡改連接的.NET應用程序

我只是在我的腦海裏突然出現了一個簡單的想法現在,我不確定這是否是正確的做法,爲了讓它很難理解我的應用程序發送到我的服務器是什麼。無論如何,我的想法是使用SSL證書..這是一個好方法防止連接篡改?

任何意見或建議,將不勝感激..

+0

要確保你必須有一個有效的證書,由證書頒發機構給出。您可以使用此證書在傳輸級別或消息級別進行加密。在傳輸級別進行加密是最簡單的,通常使用SSL或TLS完成。換句話說,SSL是一個好選擇。 – Steven

+0

你的潛在鍛鍊者在哪裏?在網絡上還是在同一臺設備上運行?如果你不回答「網絡」,那麼反作弊技術就會嘗試做多年,但仍然不能100%地工作。否則,在您的代碼中嵌入服務器上的私鑰的公鑰將解決網絡攻擊者的問題(並且SSL/TLS是一個很好的實現)。 –

回答

0

這裏的問題是,潛在的連接可以以兩種方式受到影響 - 從客戶機到服務器和背部。向服務器添加SSL認證是不夠的,需要相互認證,但這意味着您應該向每個客戶端頒發證書。但這似乎是最強有力的解決方案。

但是,也可以只用自簽名證書的通信加密,因爲他們可以很容易地劫持 - 最流行的例子是提琴手的捕獲HTTPS流量的能力。

至於你問任何想法,你可能會在所有隱瞞連接的事實可能感興趣。例如,有些黑客可能會將某些模塊注入Internet Explorer。因此,您的應用程序將使用IE環境與模塊和模塊進行通信 - 傳遞給服務器。服務器甚至可以暴露https接口並假裝成正常的Web服務器。

順便說一句,文章Man-in-the-middle attack包含的工具,你可以嘗試檢查,如果你的應用程序很容易受到這種攻擊的列表。

相關問題