是否有一种技术可以使用良好的加密标准通过SSL / HTTPS对ASP.NET Web应用程序上的所有请求进行加密,以确保在公共WiFi连接(咖啡馆,餐馆,酒店等)中使用Web应用程序时),如果网络中有任何捕获原始数据包的数据,则该数据无法读取?
内置的视图状态加密是否足够好?
<configuration>
<system.web>
<machineKey validation="3DES" />
</system.web>
</configuration>
最佳答案
通常,缓解中间人攻击的方法是通过SSL运行站点,这将对客户端(Web浏览器)和服务器之间的整个通道进行加密。这与元素完全无关,该元素允许服务器通过不受信任的客户端来回传敏感数据。
但是,确定要缓解的特定攻击非常重要。例如,SSL可以帮助防止第三方窃听或篡改客户端和服务器之间正在进行的数据,但不会减轻针对服务器的可用性攻击。
知道如何正确配置它也很重要:每个页面(包括登录页面)都必须通过SSL进行保护才能生效。您不能具有混合模式的内容(指向HTTP .js文件的SSL页面)。最佳做法是设置HSTS标头为客户端提供额外的安全性。
您应该知道如何将其集成到您网站的完整安全故事中。仅使用SSL是不够的。如果您的网站上存在XSS或XSRF(CSRF)漏洞,则您的客户端仍然容易受到恶意第三方的攻击。
关于StackOverflow和其他论坛,这里有很多很好的信息。 https://owasp.org/也是值得尊重的资源。最后,如果您的站点很重要/非常敏感,以至于您担心攻击者在窃听您的流量,则应该考虑由专业的安全审核员来完成。
关于asp.net - 加密ASP.NET请求和响应,以避免“中间人”攻击,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22508374/