大量使用jQuery容易受到黑客攻击

Heavy use of jQuery vulnerable to hackers?

本文关键字:易受 黑客 攻击 jQuery      更新时间:2023-09-26

我有一个站点,它处理各种ajax请求,以各种方式操作DOM,并在页面上存储一些(有限的)用户数据。一切都很顺利。

然而,我越来越担心,因为这么多的网站的代码是可见的客户端,我很容易受到黑客攻击。我能做些什么来探讨这个话题吗?"雇一个黑客?"在线清单?一定要避免的事情?

如果你的网站设计得当,使用Ajax本身并不会使你的网站容易受到javascript注入的攻击。下面的指导原则适用于ajax和非ajax架构。

  1. 您应该确保对服务器进行的ajax调用只传递返回适当结果所需的参数。你的应用逻辑(SQL查询,可以用来推断你在服务器端做什么的配置,秘钥等)应该仍然存在于服务器上。
  2. 在允许服务器执行任何操作之前,您应该对传递给任何服务的任何数据进行消毒,以确保它是您期望的数据类型。
  3. 如果您需要访问控制,在处理请求之前,请确保该人是他们所说的人。一种方法是在用户最初提供凭据时向用户返回唯一的访问令牌。然后,他们必须使用该访问令牌发出所有后续请求。请参阅OAuth 2.0以获取类似策略的示例。
  4. 您应该确保在静态状态下(在数据库、文件系统等)持久化的所有敏感数据都是加密的。您应该尽量限制在应用程序内存中存储敏感数据的时间。
  5. 如果您的网站处理敏感数据,请确保您通过SSL (https)发出所有请求。这确保了它在从客户端到服务器的过程中被加密,反之亦然。
  6. 您可以在将javascript提供给客户端之前对其进行模糊处理(通常伴随着minifier)。这使得黑客更难以确定您的逻辑。任何聪明的黑客可能仍然可以理解你的逻辑,但它可以使你的网站稍微更难攻击。