我正在開發客戶端 - 服務器應用程序,客戶端是一個與我的c#服務器通信的iPhone設備。客戶端和服務器使用我設計的通過TCP套接字交換消息的文本協議。有人可以請給我一些指導方針如何添加到這個應用程序的基本安全? 在這一刻,我唯一的安全元素是客戶端身份驗證與登錄用戶名和密碼。但是,例如,任何人都可以看到並閱讀在客戶端和服務器之間發送的消息,沒有任何問題...客戶端服務器應用程序的安全
1
A
回答
2
在移動環境中,應用程序的用戶對設備的控制比對開發人員的控制要好。有沒辦法來隱藏密碼或密鑰。您必須考慮到惡意客戶端,因此請注意您公開的功能。
以純文本格式發送用戶名和密碼違反了OWASP a9。您應該考慮使用SSL/TLS或HTTPS。
1
你看過openssl? SSL是提供安全通信的加密協議。 SSL將阻止其他人監聽客戶端和服務器之間的流。
你應該做的另一件事是驗證所有服務器輸入,以防止在服務器上執行惡意代碼。例如,如果你有一個存儲用戶輸入的數據庫,你應該看看SQL injection。
+0
感謝您的回覆,你是什麼意思驗證所有服務器輸入? – Eyal
相關問題
- 1. 編寫安全的RMI服務器 - 客戶端應用程序
- 2. 使用OpenSSL C安全的客戶端/服務器程序
- 3. 服務器客戶端應用程序
- 4. 客戶端/服務器應用程序
- 5. 客戶端 - 服務器應用程序
- 6. 從客戶端應用程序安全的服務器端輸出
- 7. C#服務器客戶端應用程序(一個服務器多客戶端)
- 8. java客戶端服務器安全
- 9. Flash客戶端 - 服務器安全
- 10. 客戶端 - 服務器REST APIs安全
- 11. 與客戶端安全服務器javascript
- 12. 安全客戶端服務器通道
- 13. 基於客戶端 - 服務器的iPhone應用程序中的通信安全
- 14. 客戶端/服務器應用程序全部在Android
- 15. 客戶端(Android應用程序) - 服務器(Java應用程序)
- 16. 安全客戶端/服務器數據傳輸iphone應用
- 17. Web服務客戶端應用程序
- 18. C客戶端在服務器客戶端應用程序中的進程ID
- 19. 服務器端客戶端程序C
- 20. 客戶端的安全代理服務?
- 21. 與C++服務器/客戶端應用程序的端口
- 22. Flex構建客戶端和服務器端的應用程序
- 23. 服務器端VS客戶端MVC的Web應用程序
- 24. Jersey REST服務器安全和Android客戶端安全
- 25. 服務器的客戶端應用程序的Android客戶端VS僅
- 26. jboss客戶端 - 服務器應用程序。併發用戶
- 27. C客戶端服務器應用程序中的多個客戶端
- 28. Java客戶端/服務器遠程應用程序的起點
- 29. 客戶端 - 服務器應用程序中的線程同步?
- 30. ASP MVC 3服務器端WP7客戶端應用程序
感謝您的回覆,我需要做什麼來添加SSL保護?我看到c#有一個sslstream就足以使用它而不是常規流?我如何獲得私鑰和公鑰?它花錢嗎? – Eyal
@Eyal證書只是一個數字,數字是免費的。您可以使用每個* nix系統附帶的openssl命令生成它。 (我相信你可以在windows下做這個,但它可能更難)。爲此,您可以使用自簽名證書並使用服務器的公鑰分發客戶端。這一點是,你不希望一個舒緩的嗅探客戶的用戶名/密碼/其他信息。 – rook
即時通訊問,因爲我看到一些文章說,它需要花錢獲得SSL證書..是否有任何教程你知道在目標c和c#中使用SSL? – Eyal