2017-01-16 75 views
1

我的應用程序有一個註冊服務,用戶可以註冊自己。然而,有惡意意圖的人可以在幾秒鐘內編寫一個腳本來註冊數千個帳戶。如何在不使用驗證碼的情況下保護我的應用程序註冊服務安全?

我的後端開發人員建議我們在我們的移動應用中使用驗證碼。但是,我沒有看到任何使用驗證碼的應用程序,它們是糟糕的用戶體驗。

我的問題是如何防止這種類型的攻擊和保護我們的應用程序在我們的服務?

+0

這都不是很多工作要做,客戶端,所以我建議您打開的標籤和你的解釋來描述服務器環境。 – CommonsWare

+2

您可以通過IP進行費率限制,並僅對可疑行爲顯示驗證碼。 – SLaks

+0

這種問題沒有銀彈。只允許通過IP進行註冊,驗證碼,或者需要有真實的郵件地址都是已知的解決方案。 – JFPicard

回答

0

這個問題對於StackOverflow並不是很理想,但我記得我遇到過一次相同的問題,因此我只是分享我的實現。

是的驗證碼是一個糟糕的用戶體驗移動應用程序。這應該避免。是的,當然,我也避免了驗證碼的實現。

Dos攻擊可以通過很多方式阻止,並且已經有一些非常成熟的技術。您可以跟蹤服務器端容器中特定IP地址的命中,並且可以在需要時臨時阻止IP地址。在發生分佈式攻擊的情況下,您可能會考慮忽略超出您能力的請求。

這些是一些微不足道的建議。你可能會考慮在你的服務器端也有防火牆,這可能會給這些內置支持。 CloudFlare是廣泛使用的防火牆之一。

有很多選項可以預防dos攻擊。只需在服務器端選擇其中一個。如果您的網絡應用程序,您可能會考慮保持谷歌重新驗證碼,但對於移動應用程序,顯示驗證碼的想法是可怕的。

0

1:您需要設置IP檢查和API呼叫比率/每秒對您的端點進行呼叫以限制來自同一IP的呼叫。

2:更簡單的方法,記錄在數據庫中進行調用的IP並檢查它,(因爲調用通過您的Web服務器層,會給DB帶來沉重負擔),並且如果調用通過,您可能反正沒有安全的服務器可以保護你免受DDOS攻擊。

0

您可以在網絡上添加多層安全性。爲此,您應該與您的後端開發人員討論如何添加證書鎖定。

This是一個很好的解釋如何做到這一點。 您也可以加密通過網絡傳遞的所有敏感信息。

還有其他的方法,如基本,摘要認證等,可以進一步增強安全性。

+0

這不是他問的問題。 – SLaks

相關問題