首页/安全/渗透测试与安全评估速查/NoSQL 注入验证(MongoDB 等)
常见漏洞验证121 条

NoSQL 注入验证(MongoDB 等)

NoSQL 注入多来自把用户输入直接当查询条件解析:把字符串字段替换为对象结构时,查询运算符可能被携带进去,导致条件被改写。

典型场景JSON 请求体中字段类型被改写(字符串→对象/数组)
信号登录或查询结果与预期不符、返回异常记录
边界只验证“条件是否被改写”,不导出数据

验证清单

验证清单
1. 找出接收 JSON 且直接进入查询的接口(登录、筛选、搜索)
2. 将某字符串字段改为对象结构提交,观察逻辑是否被改变
3. 记录接口、字段名、类型改写的现象(不记录可用条件)
4. 疑似成立即停止,测试账号操作便于清理
修复视角:对入参做严格类型校验(该是字符串就必须是字符串),并在数据库层限制应用账号权限。

易错点

  • 只测字符串型参数,漏掉数组/对象类型混淆路径
  • 把正常业务返回当成注入证据,未做对照请求

数据来源与参考

  • OWASP WSTG(Testing for NoSQL Injection)
  • MongoDB 官方安全文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌