在开发ajax驱动的应用程序时,我应该采取哪些类型的安全措施?

时间:2010-02-08 19:13:10

标签: ajax security

假设您正在构建一个多步骤(5部分)预订引擎,该引擎具有完全可用的后端但具有一层ajax,您可以在其中完成最初加载的页面中的所有5个步骤。步骤将是:

  1. 输入日期并指定可用性信息
  2. 可用性结果,您可以选择房间
  3. 输入您的信息,包括信用卡信息
  4. 确认信息和可用性
  5. 要打印的确认信息
  6. 我假设您希望将整个网站保留在https协议上,我不太确定在加载数据时加密或保护ajax调用所需的措施类型并提交包含信用卡信息的表格。

2 个答案:

答案 0 :(得分:1)

对于您的服务器,AJAX请求与常规HTTP / HTTPS请求相同。攻击者可以有目的地浏览到任何AJAX URL并查看结果。因此,主要答案是:您用于非AJAX网站的任何安全机制,您还必须强制执行A​​JAX驱动的请求。这包括所有身份验证和授权步骤,以防止会话劫持,强制浏览和CSRF。

除此之外,通过大量使用JavaScript和AJAX,您更容易受到JavaScript注入的影响。封装和转义JavaScript和JSON比标准HTML更复杂。

最后,有一些XML驱动的攻击在使用基于XML的AJAX时要小心,特别是Billion Laughs Attack和XML注入。

网络安全测试手册有一章关于保护AJAX:

http://books.google.com/books?id=VmrSJ3V-s_MC&lpg=PP1&dq=web%20security%20testing%20cookbook&pg=PA197#v=onepage&q=chapter%2010&f=false

答案 1 :(得分:0)