ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

[GYCTF2020]Blacklist

2022-07-18 23:02:16  阅读:208  来源: 互联网

标签:admin 数据库 GYCTF2020 查询 Blacklist 密码 我们 md5


[GXYCTF2019]BabySQli

按正常思路,先判断是不是存在sql注入

image-20220717202134882

image-20220717202158618

发现存在sql注入,我们尝试一下用万能密码登录

image-20220717202242457

image-20220717202320525

发现可能是被过滤了,再用admin的用户名尝试登录一下

image-20220717202333576

image-20220717202339860

发现回显的是wrong pass!发现是存在这个admin用户的,只是密码错了

所以我们按照正常的sql注入的思路去尝试,先尝试判断列数

payload:admin'order by 5#

image-20220717202934695

image-20220717202943093

根据回显判断可能是过滤了order by,所以我们尝试用大小写去绕过

image-20220717203022490

image-20220717203028510

这里错误,发现没有5列这么多,所以我们改变列数去尝试一下

image-20220717203104433

image-20220717203111350

image-20220717203120705

image-20220717203125960

根据相应的回显判断应该是三列,再去尝试一下看看回显点在哪

image-20220717203409344

image-20220717203417366

发现应该是被过滤了,这里可能会没有什么思路,所以我们就去源代码里看看是不是有什么提示之类的

image-20220717203616922

发现有这样一段编码,其中只有大写字母和数字,所以我们猜测它可能是base32编码,所以我们进行base32解码

解码出来是这样c2VsZWN0ICogZnJvbSB1c2VyIHdoZXJlIHVzZXJuYW1lID0gJyRuYW1lJw==

有大小写字母,并且有==,所以我们猜测应该是base64编码,继续解码

解码结果:select * from user where username = '$name'

是一句简单的sql语句,就是根据输入的用户名来查询数据库

这里有一个关于数据库的知识点就是:在使用union进行查询的时候,即使你查询的数据不存在,数据库也会创建一个虚拟的数据放在数据库中

我写个例子来帮助我们理解一下

image-20220717204245496

在这个test1表中我们可以看到只有这三条记录,但是我们这里去用union查询一下这个表里不存在的数据看一下

image-20220717204351361

可以看到即使,不存在'qwe',245这条记录,也同样能够查询到数据,所以我们就可以根据这个知识点,我们去查询一下admin的密码,意思就是即使查询的密码是不存在的,数据库也会创建一个虚拟的数据进去

之前证明了数据库中是有三列,所以我们猜测这三列是id,username,password,而且一般在数据库当中,password中的数据都是用md5进行加密的,所以我们只需要去构造我们想要的密码的md5的值

我们就把密码设为123,123的md5值是'202cb962ac59075b964b07152d234b70'

md5脚本:

import hashlib
a=hashlib.md5()
a.update('123'.encode(encoding='utf-8'))
b=a.hexdigest()
print(b)

我们构造payload:1'union select 1,'admin','202cb962ac59075b964b07152d234b70'#

然后密码就是123,(这里的密码取决于你自己构造的md5的值)

image-20220717205350673

image-20220717205358622

登录上去,就可以获得flag了

这个payload的意思就是去查询这个admin的密码,由于union查询的那个特性,即使我们输入的密码不正确,它也会创建一个虚拟的数据(这个数据就是我们输进去的payload里的这个数)进去,就相当于我们查询的这个密码就是这个admin的密码

标签:admin,数据库,GYCTF2020,查询,Blacklist,密码,我们,md5
来源: https://www.cnblogs.com/Jinx8823/p/16492363.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有