Abd*_* Pp 4 sql-injection mongodb nosql
当试图提出这个问题时,我得到了一个它正在使用Java,并在答案中给出了一个Ruby示例,似乎注入仅在使用Json时才会发生?因为我有一个暴露,我将尝试在NoSQL和SQL之间进行比较,我试图说:开心,nosql没有sql注入,因为它不是sql ...
你能解释一下我:
MongoDB注入了一些问题:
$whereJS注入 - 从用户输入构建JavaScript函数可能会导致查询的行为与您期望的不同.在一般的JavaScript函数都没有编程的MongoDB查询一个负责任的方法,并强烈建议不要使用它们,除非绝对必要.$or或东西,他们可以很容易地操纵这个能力来改变你的查询.如果您只是从一组文本字段中获取数据并$or从该数据手动构建数据,这当然不适用.正如@Burhan所说,注射来自没有消毒的输入.幸运的是,对于MongoDB,它具有面向对象的查询功能.
SQL注入的问题来自"SQL"一词.SQL是一种由字符串构成的查询语言.另一方面,MongoDB实际上使用BSON文档来指定查询(对象).如果你遵守我上面给你的基本常识规则你应该永远不会遇到像以下攻击向量的问题:
SELECT * FROM tbl_user WHERE ='';DROP TABLE;
Run Code Online (Sandbox Code Playgroud)
MongoDB也只支持每个命令atm一个操作(不使用eval,但不要这样做),所以无论如何都不会工作......
我应该补充一点,这不适用于仅注入数据验证.
| 归档时间: |
|
| 查看次数: |
5143 次 |
| 最近记录: |