【发布时间】:2012-05-11 02:34:49
【问题描述】:
既然 node.js 是基于 javascript 的,而且 javascript 是高度动态的语言,那是不是意味着服务器端的代码注入比 java 或 asp.net 更危险?
【问题讨论】:
-
取决于您是否决定忽略所有建议并在您的代码中使用
eval我猜。
标签: java asp.net security node.js
既然 node.js 是基于 javascript 的,而且 javascript 是高度动态的语言,那是不是意味着服务器端的代码注入比 java 或 asp.net 更危险?
【问题讨论】:
eval 我猜。
标签: java asp.net security node.js
任何允许您轻松地将字符串评估为一行代码的语言都存在固有的安全风险。在这方面,NodeJS 并不比用 Javascript 或 PHP 编写的任何东西差。
即使您使用 Java 或 ASP 编写代码,如果不小心,天真的 Web 程序员仍可能遭受 SQL 注入攻击,而代码注入只是应用程序可能受到威胁的一种方式。
关键是在使用 eval 或编写自修改代码之前仔细过滤用户的任何输入并仔细考虑。
【讨论】:
无论选择何种技术,您都需要在服务器端代码中验证用户输入。
对于 node.js,有一些库可以帮助您执行此操作,例如 node-validator https://github.com/chriso/node-validator
【讨论】: