我正在使用MongoDB和NodeJS,我想知道在插入/更新数据库文档之前是否需要清理数据.很难找到明确的答案,我想知道是否有任何Node模块可以很好地完成它,或者我需要去掉所有出现在字符串中的$或者根本不需要担心这个问题.我知道PHP有漏洞,但我使用的是Node/Mongo(本机驱动程序)组合,但仍不确定是否需要对用户输入进行任何清理.
如果您将数据存储为String并且您没有解析它以执行Mongo命令,那么没有什么可担心的.
关于安全的好文章
http://cr.yp.to/qmail/guarantee.html
当您检索用户输入时,唯一的问题是,并且您解析该输入以执行Mongo命令,在这里您需要注意清理输入,否则您将受到攻击.
有一个npm包为你做这件事
https://www.npmjs.com/package/mongo-sanitize
这篇文章也很好
是的你是。有关更多信息,请查看此内容;https://www.npmjs.com/package/content-filter
本机escape()方法也可用于保护数据库。
运行下面的代码片段以查看结果。
let a = "{$gt:25}"
console.log(a)
console.log(escape(a))Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7903 次 |
| 最近记录: |