SSL是否足以确保网站安全?

时间:2019-06-07 02:38:29

标签: javascript jquery html

我一直在为一家公司的网站编程(除了表格上没有数据或信息),我一直在将BlueHost看作是托管和SSL安全功能来确保安全性,我不知道任何其他保护或加密自己的身份,BlueHosts SSL是否足够?

2 个答案:

答案 0 :(得分:2)

不。 SSL仅保护传输中的数据免受第三者的拦截-关于如何实现SSL,有很多因素需要考虑,以决定它是否令人满意。

除了要确保数据在通过SSL在浏览器和服务器之间传输时不会被其他人读取之外,您还必须考虑许多安全方面。在stackoverflow答案中有太多细节无法说明。换个角度看,当我部署一个包含任何敏感数据的系统时(我在一家支付处理公司工作,但“敏感”内容不仅仅包括信用卡号),我必须回答约800个关于安全性的问题审计。这些问题中只有约30个与SSL有关,并确保正确实施SSL。然后,一个专家团队必须审查该系统的实施情况,仔细进行审议,并一致投票认为该系统符合要求。即使如此,常规安全审核仍会发现潜在的漏洞,这些漏洞被忽略了,必须加以缓解。

不。 SSL本身不足以将系统视为“安全的”。如果它包含需要SSL的数据,则几乎可以肯定它不仅需要SSL,而且还具有更多需求。

答案 1 :(得分:1)

首先,您应该具有SSL。话虽如此,这还不够。

那么,您需要什么?虽然确实有很多内容可以涵盖,但您显然需要指出正确的方向...

就托管服务提供商而言,您可能还对其他功能感兴趣:

  • 备份(尽管您可能可以自己推出解决方案)
  • 反恶意软件(尽管,如果您的网站不允许上传文件,则相关性较低)
  • DDoS缓解措施。

我想提醒您,信息安全不仅是机密性,还包括可用性和完整性(以及可追溯性)。


请在本地服务器上设置测试环境,以确保其有效。您可以在生产环境之前对其进行安全审核。请记住,越早发现错误,修复它们的成本就越低……因此,您不想在生产中发现它们。

是的,在测试环境上没有HTTPS是可以的。除此之外,还有很多事情要做。是的,您也应该检查生产中的安全性。

理想情况下,将有团队进行测试,在这些测试中,他们可能会寻找潜在的漏洞。也有可以帮助您解决此问题的安全扫描程序。

但是,您应该首先编写安全代码。对吧?


我必须告诉您,服务器端比标记的HTML和jQuery更相关。黄金法则是不信任客户。请记住,该请求可能不是来自实际的浏览器(尽管用户代理可能说了什么)。您必须在服务器上进行验证。尽管在客户端进行验证(以获得更好的用户体验和安全的网络容量)也是一个好主意,但是客户端验证实际上对安全性没有作用。

这与说没有可以提高客户端安全性的事情不同。例如,对客户端进行刻图可能对于检测客户端何时来自给定用户的异常来源,上升红色标记(服务器端可能有部分指纹)很有用。另外,您还可以缓解屏幕记录器/键盘记录器/单肩冲浪的问题。

在非常特殊的情况下,对客户端进行加密也是有意义的。那不是通常的情况。您可能不需要这样做。而在您遇到的奇怪情况下,请聘请专家。


无论如何,这些是开发人员经常忽略的事情(这绝不是完整列表):

  • 不信任客户。
  • 验证所有输入。
  • 对所有输出进行消毒(考虑要去的地方)。
  • 对数据库访问使用准备好的语句。
  • 指定字符字符集(用于HTML,服务器端字符串操作以及数据库存储和连接)。
  • 进行适当的身份验证和访问控制。
  • 正确存储凭据。
  • 了解最新的浏览器安全功能。
  • 正确使用跨域资源共享。
  • 尽可能使用HttPOnly cookie。
  • 正确使用Service Worker和Web缓存。
  • 记录错误,而不是将错误显示给客户端。
  • 具有所有修改的可追溯性。

另外,请考虑两因素验证。

您可能还对OWASP Top Ten projectOWASP Cheat Sheet Series感兴趣。注意:这些不是安全检查列表,也不替代安全审核。它们也不是福音,但是,如果您不遵循它们,那就不要因为您没有意识到。

最后,让我指向Information Security Stack Exchange,这是一个专门为该人的信息安全(因此得名)的姐妹问答网站。


附录:如果您不是在开发Web应用程序,而是在设置内容管理系统,则必须保持其最新状态。此外,研究和应用安全加固,无论您使用的是什么。